-
Notifications
You must be signed in to change notification settings - Fork 5.2k
EC-DSA Composite ML-DSA for net8+ #118232
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
EC-DSA Composite ML-DSA for net8+ #118232
Conversation
Tagging subscribers to this area: @dotnet/area-system-security, @bartonjs, @vcsjones |
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 implements EC-DSA (Elliptic Curve Digital Signature Algorithm) support for Composite ML-DSA algorithms on .NET 8+. The implementation adds EC-DSA as a second component alongside ML-DSA for quantum-resistant cryptographic schemes.
- Adds a new
CompositeMLDsaManaged.ECDsa.cs
file implementing the EC-DSA component for Composite ML-DSA - Updates algorithm metadata to include specific curve and hash algorithm parameters for EC-DSA variants
- Enhances test coverage with additional validation scenarios and cross-algorithm tests
Reviewed Changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
System.Security.Cryptography.csproj | Adds the new ECDsa component file to the build |
Microsoft.Bcl.Cryptography.csproj | Adds the new ECDsa component file to the BCL package |
CompositeMLDsaTestsBase.cs | Updates test methods to properly handle variable signature sizes and adds missing test scenarios |
CompositeMLDsaTestHelpers.cs | Adds SEC curve distinction and improves algorithm parameter handling |
CompositeMLDsaFactoryTests.cs | Adds comprehensive tests for ECDsa key import validation and cross-algorithm error scenarios |
CompositeMLDsaManaged.cs | Updates algorithm metadata with specific ECDsa parameters and removes placeholder implementation |
CompositeMLDsaManaged.RSA.cs | Adds key size validation for RSA component imports |
CompositeMLDsaManaged.ECDsa.cs | New file implementing full ECDsa component with key generation, import/export, and signing/verification |
src/libraries/Common/src/System/Security/Cryptography/CompositeMLDsaManaged.RSA.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <[email protected]>
.NETFramework requires more refactoring so I'm planning on doing it in a separate PR
Contributes to #116998