Skip to content
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

ArraySize definitions for Post-Quantum signature sizes #55

Closed
tjade273 opened this issue Mar 1, 2024 · 1 comment · Fixed by #57
Closed

ArraySize definitions for Post-Quantum signature sizes #55

tjade273 opened this issue Mar 1, 2024 · 1 comment · Fixed by #57

Comments

@tjade273
Copy link

tjade273 commented Mar 1, 2024

The FIPS SLH-DSA and ML-DSA draft standards have signature sizes which are very large in the former and odd sizes in the latter, so neither has signature sizes covered by the current ArraySize implementations

SLH-DSA has signatures of lengths:

  • 7856
  • 17088
  • 16224
  • 35664
  • 29792
  • 49856

ML-DSA has signatures of lengths:

  • 2420
  • 3293
  • 4595

ML-DSA also has private keys of size 4864 for category 5.

I don't know if you want to set a precedent for people requesting random extra ArraySize impls, but these would be useful for writing clean no-std implementations of the new PQ schemes.

@tarcieri
Copy link
Member

tarcieri commented Mar 3, 2024

Ugh, well here I thought I had everything working with some consistent rules for sizes, but 3293 and 4595 definitely violate that. It's a bit frustrating given hybrid-array's tradeoffs versus generic-array where we do need to write ArraySize impls for each size.

That said, I guess we can just take one off sizes to support by request.

tarcieri added a commit that referenced this issue Mar 3, 2024
Due to the nature of how this crate works, we need to add `ArraySize`
impls for all of the sizes we support.

So, I guess we're taking `ArraySize` requests, and we'll see how
sustainable that ends up being.

Closes #55
tarcieri added a commit that referenced this issue Mar 3, 2024
Due to the nature of how this crate works, we need to add `ArraySize`
impls for all of the sizes we support.

So, I guess we're taking `ArraySize` requests, and we'll see how
sustainable that ends up being.

Closes #55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants