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

Implement techniques from 2020/1507 eprint? #93

Closed
tarcieri opened this issue May 3, 2021 · 5 comments
Closed

Implement techniques from 2020/1507 eprint? #93

tarcieri opened this issue May 3, 2021 · 5 comments
Labels
enhancement New feature or request

Comments

@tarcieri
Copy link
Member

tarcieri commented May 3, 2021

Interesting paper which contains techniques for improving both key generation and inversion-free RSA-CRT:

https://eprint.iacr.org/2020/1507

@dignifiedquire dignifiedquire added the enhancement New feature or request label May 4, 2021
@randombit
Copy link

Section 8 "Some of these techniques may be covered by US and/or international patents."

☢️

@tarcieri
Copy link
Member Author

@randombit aah, unfortunate

@tarcieri
Copy link
Member Author

I'll go ahead and close this issue then. We can potentially revisit it if the IPR situation clears up somehow (e.g. perpetual royalty-free license or thereabouts granted by the relevant patent holders)

@tarcieri
Copy link
Member Author

@randombit do you have any specific recommendations for non-patented optimizations we can do instead? I see you have a semi-related post: https://randombit.net/bitbashing/posts/modular_inversion_using_crt.html

I'm also trying to consolidate our big integer code and associated algorithm implementations into the crypto-bigint crate (I mostly work on our ECC implementations) and am tracking some of the algorithms we should potentially implement here: https://github.com/RustCrypto/utils/issues/453

@randombit
Copy link

TBH I'm not totally familiar with what this crate (and the num-bigint fork) are doing so it's hard to say anything concrete. My general impression is that the best approach for RSA is the "Smooth RSA-CRT" of https://eprint.iacr.org/2007/039. IIRC this is what BoringSSL uses.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants