-
Notifications
You must be signed in to change notification settings - Fork 284
chore(tls): Remove ring as rustls crypto backend
#4029
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
Conversation
35575bf to
4c7a8ba
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✔️ it seems that builds aren't working right now, likely related to the conditional compilation changes made to our meshtls crates in this diff.
i'm content with this change, broadly speaking, though! ✔️
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR description is a little misleading: it does more than remove ring, it changes the default crypto backend. This is probably: chore(meshtls-rustls): use aws-lc as the default crypto backend (not a user-facing feature... etc)
To that end, is it difficult to split this PR into two discrete steps:
- Enable aws-lc by default
- Remove ring
In general this would be a preferable path. I can see how that might make for some intermediate complexity, though; so this is just a question...
|
It's not as bad as I originally thought to split out the default change to aws-lc-rs from the removal of ring, I've done the default change in #4043 and I'll update this to be purely a removal of ring (that we can decide to defer to late if need be). |
ring as rustls crypto backend
The broader ecosystem has mostly moved to `aws-lc-rs` as the primary `rustls` backend, and we should follow suit. This will also simplify the maintenance of the proxy's TLS implementation in the long term. This requires some extra configuration for successful cross-compilation, ideally we can remove this extra configuration once linkerd/dev v48 is available. This doesn't remove `ring` as a crypto backend, that can come in a follow-up at #4029
8083851 to
d160678
Compare
The broader ecosystem has mostly moved to aws-lc-rs as the primary rustls backend, and we should follow suit. This will also simplify the maintenance of the proxy's TLS implementation in the long term. There will need to be some refactoring to clean up the rustls provider interfaces, but that will come in follow-ups. Signed-off-by: Scott Fleener <[email protected]>
Signed-off-by: Scott Fleener <[email protected]>
Signed-off-by: Scott Fleener <[email protected]>
|
🎉 so excited to see this land! |
The broader ecosystem has mostly moved to aws-lc-rs as the primary rustls backend, and we should follow suit. This will also simplify the maintenance of the proxy's TLS implementation in the long term.
Child to #4043, which changed the default backend to
aws-lc-rs.There will need to be some refactoring to clean up the rustls provider interfaces, but that will come in follow-ups.