]> git.ipfire.org Git - thirdparty/openvpn.git/commit
Implement tls-groups option to specify eliptic curves/groups
authorArne Schwabe <arne@rfc2549.org>
Tue, 21 Jul 2020 15:49:22 +0000 (17:49 +0200)
committerGert Doering <gert@greenie.muc.de>
Tue, 21 Jul 2020 20:33:58 +0000 (22:33 +0200)
commit8353ae8075fb25d1935258a2f007e024c5e2c43f
tree00772051d575db38d91abbaf28eeab7c6fdcbb40
parentba66faad5608233f792c3679ebade09ff324a4b3
Implement tls-groups option to specify eliptic curves/groups

By default OpenSSL 1.1+ only allows signatures and ecdh/ecdhx from the
default list of X25519:secp256r1:X448:secp521r1:secp384r1. In
TLS1.3 key exchange is independent from the signature/key of the
certificates, so allowing all groups per default is not a sensible
choice anymore and instead a shorter list is reasonable.

However, when using certificates with exotic curves that are not on
the group list, the signatures of these certificates will no longer
be accepted.

The tls-groups option allows to modify the group list to account
for these corner cases.

Patch V2: Uses local gc_arena instead of malloc/free, reword commit
          message. Fix other typos/clarify messages

Patch V3: Style fixes, adjust code to changes from mbedTLS session
          fix

Patch V5: Fix compilation with OpenSSL 1.0.2

Patch V6: Redo the 'while((token = strsep(&tmp_groups, ":"))' change
          which accidentally got lost.

Signed-off-by: Arne Schwabe <arne@rfc2549.org>
Acked-by: Antonio Quartulli <antonio@openvpn.net>
Message-Id: <20200721154922.17144-1-arne@rfc2549.org>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg20521.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
13 files changed:
README.ec
configure.ac
doc/man-sections/encryption-options.rst
doc/man-sections/tls-options.rst
src/openvpn/openssl_compat.h
src/openvpn/options.c
src/openvpn/options.h
src/openvpn/ssl.c
src/openvpn/ssl_backend.h
src/openvpn/ssl_mbedtls.c
src/openvpn/ssl_mbedtls.h
src/openvpn/ssl_ncp.c
src/openvpn/ssl_openssl.c