-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Remove ExperimentalAttribute from ML-KEM where applicable #117831
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
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.
Pull Request Overview
This PR removes the ExperimentalAttribute
from stable ML-KEM components that are part of the FIPS-203 specification, while keeping experimental markers on X.509 and PKCS#8 related functionality that is still in IETF draft status.
Key changes:
- Removed experimental markers from core ML-KEM classes and operations (MLKem, MLKemAlgorithm, MLKemCng, MLKemOpenSsl)
- Removed experimental markers from CNG-related ML-KEM identifiers and blob formats
- Added experimental markers to X.509 SubjectPublicKeyInfo and PKCS#8 PrivateKeyInfo import/export methods
Reviewed Changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
File | Description |
---|---|
MLKemOpenSsl.cs | Removed experimental attribute from MLKemOpenSsl class |
CngKeyBlobFormat.cs | Removed experimental attributes from ML-KEM blob format properties |
CngAlgorithmGroup.cs | Removed experimental attribute from MLKem algorithm group property |
CngAlgorithm.cs | Removed experimental attribute from MLKem algorithm property |
System.Security.Cryptography.cs | Updated reference assembly with experimental attribute changes |
MLKemCng.cs | Removed experimental attribute from MLKemCng class |
MLKemAlgorithm.cs | Removed experimental attribute from MLKemAlgorithm class |
MLKem.cs | Removed experimental attribute from MLKem class and added experimental markers to X.509/PKCS#8 methods |
Tagging subscribers to this area: @dotnet/area-system-security, @bartonjs, @vcsjones |
/ba-g known timeouts and wasm test failures |
ML-KEM has enough stability to it now where we can start to remove the
Experimental
attribute.Specifically, things that are part of the FIPS-203 specification can be unmarked. Things that are still not finalized, such as a IETF work (X.509, SubjectPublicKeyInfo, and PrivateKeyInfo) will remain marked as experimental because the drafts may introduce breaking changes.