CHACHA20-POLY1305 Server Preference NOK with tlsv1.3
Maxim Dounin
mdounin at mdounin.ru
Sun May 3 21:21:23 UTC 2020
Hello!
On Sun, May 03, 2020 at 07:04:49PM +0200, Vincent Blondel wrote:
> Hello,
>
> Trying to get CHACHA20-POLY1305 Server Preference ... Working with tlsv1.2
> but NOK with tlsv1.3
>
> ** Tried with a Custom OpenSSL.conf ServerPreference,PrioritizeChaCha
>
> OPENSSL_CONF=$HOME/conf/openssl.conf $HOME/bin/nginx.exe
>
> [default_conf]
> ssl_conf = ssl_sect
> [ssl_sect]
> system_default = system_default_sect
> [system_default_sect]
> Ciphersuites =
> TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384
> Options = ServerPreference,PrioritizeChaCha
>
> ** Tried by patching src/event/ngx_event_openssl.c
>
> - SSL_CTX_set_options(ssl->ctx, SSL_OP_CIPHER_SERVER_PREFERENCE);
> + SSL_CTX_set_options(ssl->ctx, SSL_OP_CIPHER_SERVER_PREFERENCE |
> SSL_OP_PRIORITIZE_CHACHA);
>
> ** Tried by patching src/event/ngx_event_openssl.c
There is no need to patch anything as long as you have Options set
in openssl.conf.
> nginx -s reload
> nginx: [emerg]
> SSL_CTX_set_cipher_list("TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_AES_128_CCM_SHA256")
> failed (SSL: error:1410D0B9:SSL routines:SSL_CTX_set_cipher_list:no cipher
> match)
>
> ssl_prefer_server_ciphers on;
> ssl_protocols TLSv1.3;
> ssl_ciphers
> TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_AES_128_CCM_SHA256;
>
> my config is working like a charm with tlsv1.2 but i cannot get CHACHA20
> prioritized with tlsv1.3 ... hence my question ...how to do with nginx
> version: nginx/1.18.0 ?
The problem is that OpenSSL's SSL_CTX_set_cipher_list() does not
recognize any ciphers in the cipher list you've provided in the
ssl_ciphers directive, hence the error. You have to provide at
least one valid cipher.
Note that OpenSSL's SSL_CTX_set_cipher_list() does not recognize
any TLSv1.3 ciphers (and instead enables them by default), hence
you have to use at least one TLSv1.2 cipher listed.
--
Maxim Dounin
http://mdounin.ru/
More information about the nginx
mailing list