> On Thu, Oct 24, 2024 at 03:52:43PM +0200, Daniel Gustafsson wrote:
> > On 16 Oct 2024, at 17:30, Jacob Champion <[email protected]> 
> > wrote:
> 
> > Other than that, LGTM!
> 
> Thanks for all the review work, I went ahead and pushed this patchseries today
> after a little bit more polishing of comments and docs.  So far plover has
> failed which was expected due to the raised OpenSSL/LibreSSL requirement, I
> will reach out to BF animal owners for upgrades.

Hi,

Apologies for posting in an old thread, but I've stumbled upon an
interesting situation. SSL_CTX_set1_groups_list allow to specify TLS
supported groups, which alongside with curves can also set key shares.
At the same time openssl 3.5 has introduced a new type of key shares
(X25519MLKEM768 and X25519) for hybrid key post-quantum/classical key
agreement schemes (ML-KEM from FIPS 203), which are the default values.

The fact that since this commit PostgreSQL uses SSL_CTX_set1_groups_list
means that pre 18 versions cannot use such hybrid schemes. I.e. in 18

    # postgresql.conf
    ssl_groups="X25519MLKEM768:X25519:prime256v1"

    $ openssl s_client -starttls postgres -connect localhost:5432 -groups
    X25519MLKEM768 -brief
    Connecting to 127.0.0.1
    Can't use SSL_get_servername
    depth=0 CN=test
    verify error:num=18:self-signed certificate
    CONNECTION ESTABLISHED
    Protocol version: TLSv1.3
    Ciphersuite: TLS_AES_256_GCM_SHA384
    Peer certificate: CN=test
    Hash used: SHA256
    Signature type: rsa_pss_rsae_sha256
    Verification error: self-signed certificate
    Negotiated TLS1.3 group: X25519MLKEM768

Doing the same before seems to be not possible: ssl_ecdh_curve would not
acceps MKLEM name, since it fails to find it in OBJ_sn2nid; not setting
anything doesn't pick up openssl defaults either, the test above shows
no common groups.

Unless I'm missing something, that means pre 18 version cannot use
post-quantum schemes, which have become a part of standard recently. The
last such version goes out of support in 2029. I know it's a long shot,
but with that in mind are there any chances of backporting this change set?


Reply via email to