-
-
Notifications
You must be signed in to change notification settings - Fork 61
Add MLDSA{65,87} support
#229
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
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #229 +/- ##
==========================================
- Coverage 83.55% 82.13% -1.42%
==========================================
Files 57 61 +4
Lines 1496 1422 -74
==========================================
- Hits 1250 1168 -82
- Misses 246 254 +8
🚀 New features to boost your workflow:
|
|
Why don't we hide these algorithms behind a |
|
@fpseverino yes that was in fact the plan in the beginning. And nothing has changed, I just forgot 🙈 done! |
MLDSA{65,87} support inside new _QuantumJWTKit moduleMLDSA{65,87} support
|
Are we expecting these APIs to ever change? Or should we use a package trait instead of SPI? |
|
The RFC isn't final yet so even though unlikely the spec and therefore the APIs might still change |
|
We should now depend on the |
fpseverino
left a comment
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.
Love it! Just a few notes
I took a quick look at the JOSE draft, and it doesn't seem to me that context strings are used anywhere. But if I'm wrong, or if the draft is updated, that's something we'll have to take into account.
Also, shall we add these algorithms to the README and DocC?
Co-authored-by: Francesco Paolo Severino <[email protected]>
|
Once the JOSE draft is finalised, will removing |
|
@fpseverino it's not breaking because it was never part of the API to begin with (just of the SPI). It will be a simple addition so a minor version is fine |
Since swift-crypto now supports ML-DSA{65,87}, this adds support for ML-DSA based JWTs. While ML-DSA is now a formalised standard (RFC 204), its usage in JOSE is still in draft state, which means its specification could change.
Because of this, we're hiding the new APIs behind
@_spi(PostQuantum)annotations, separating them from the public API and allowing therefore breaking changes, at least until the specification will be finalised.To use them, simply
but know that the APIs could be subject to change outside of major versions of JWTKit.