Something like SSL_CTX_set_alpn_select_cb for ciphers and ssl/tls protocol version

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Something like SSL_CTX_set_alpn_select_cb for ciphers and ssl/tls protocol version

Alexander Gryanko
Hello, 

I'm looking for the way to do something like SSL_CTX_set_alpn_select_cb but for ciphers and ssl/tls protocol version. As I see ssl_choose_server_version and ssl3_choose_cipher has no any callbacks in tls_early_post_process_client_hello. Is there any way to disable protocols for some cases? Something like A/B testing with 50% of traffic with enabled Chacha20 and 50% of traffic with disabled.

Thank you.

--
С уважением,
Александр Грянко
Reply | Threaded
Open this post in threaded view
|

Re: Something like SSL_CTX_set_alpn_select_cb for ciphers and ssl/tls protocol version

Matt Caswell-2


On 18/06/2019 10:13, Alexander Gryanko wrote:
> Hello, 
>
> I'm looking for the way to do something like SSL_CTX_set_alpn_select_cb but for
> ciphers and ssl/tls protocol version. As I see ssl_choose_server_version and
> ssl3_choose_cipher has no any callbacks in tls_early_post_process_client_hello.
> Is there any way to disable protocols for some cases? Something like A/B testing
> with 50% of traffic with enabled Chacha20 and 50% of traffic with disabled.

If you are using OpenSSL 1.1.1 then probably you could do something with the
client hello callback:

https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_client_hello_cb.html

Matt