Preset default elliptic curve and accept handshake when client doesn't propose supported_groups
#22,732 opened on Nov 14, 2023
Repository metrics
- Stars
- (30,157 stars)
- PR merge metrics
- (No merged PRs in 30d)
Description
According to RFC :
A client that proposes ECC cipher suites may choose not to include these extensions. In this case, the server is free to choose any one of the elliptic curves or point formats listed in Section 5.
Also, as @mattcaswell mentions in #22703:
This allows OpenSSL to just pick a curve if the client hasn't provided a list to choose from. There aren't any MUSTs here, so I think OpenSSL is also conformant in deciding to fail the handshake in this case. But it would be possible for us to add the ability to choose an arbitrary one and that would also be ok.
I think this feature could be very helpful specially for embedded devices which have minimal implementation of TLS protocol. In my opinion It would be better that openssl let developer to choose which curve to be used as default (when client doesn't propose supported_groups extension in ClientHello) in order to maximize compatibility with different environments and devices.