Implement hybrid EC+MLKEM groups from draft-ietf-tls-ecdhe-mlkem#143
Open
nmathewson wants to merge 1 commit intoRustCrypto:masterfrom
Open
Implement hybrid EC+MLKEM groups from draft-ietf-tls-ecdhe-mlkem#143nmathewson wants to merge 1 commit intoRustCrypto:masterfrom
nmathewson wants to merge 1 commit intoRustCrypto:masterfrom
Conversation
This draft is already implemented in OpenSSL, NSS, and AWS_LC, making it reasonable to support here. I've gone with the simplest reasonable implementation I could here, using the RustCrypto `ml-kem` crate, and the existing EC key exchange groups. See comments for implementation details.
080905a to
52d923a
Compare
Author
|
(Apologies: I just force-pushed a new version to fix tab/space issues.) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This draft is already implemented in OpenSSL, NSS, and AWS_LC, making it reasonable to support here.
I've gone with the simplest reasonable implementation I could here, using the RustCrypto
ml-kemcrate, and the existing EC key exchange groups. See comments for implementation details.Note: For now, I have made these key exchange methods always present, and always at the end of ALL_KX_GROUPS. I would not mind making them feature-gated or whatever you think best; Just let me know.