Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TLS 1.2 CCM modes #227

Closed
jadamcrain opened this issue May 24, 2022 · 3 comments
Closed

TLS 1.2 CCM modes #227

jadamcrain opened this issue May 24, 2022 · 3 comments

Comments

@jadamcrain
Copy link

I am implementing a standard that requires that both sides support TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8. These ciphers are in OpenSSL, but are disabled by default.

I see that #4 has kind of stalled.

Is there any way that you're aware to set the default cipher list when using the openssl library via environment variable?

I've tried via the openssl config file /etc/ssl/openssl.cnf but that seems to get ignored... perhaps it only pertains to the openssl cli?

@sfackler
Copy link
Owner

If you're using OpenSSL specifically you may want to look into using the openssl crate directly which would give you full control over the configuration.

@jadamcrain
Copy link
Author

jadamcrain commented May 24, 2022

Unfortunately, we have a lot of investment already in both reqwest and axum which use either rustls or native-tls. I'm exploring adding the CCM modes to rustls in parallel.

@jadamcrain
Copy link
Author

FYI, the easiest path forward was to build a custom version of openssl until we can get CCM into rustls:

This can be done in openssl by editing include/openssl/ssl.h

changing:

# define SSL_DEFAULT_CIPHER_LIST "ALL:!COMPLEMENTOFDEFAULT:!eNULL"

to

# define SSL_DEFAULT_CIPHER_LIST "ALL:-COMPLEMENTOFDEFAULT:!eNULL:ECDHE-ECDSA-AES128-CCM8"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants