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

Constant time everything #19

Merged
merged 6 commits into from
Mar 21, 2019
Merged

Constant time everything #19

merged 6 commits into from
Mar 21, 2019

Conversation

ebfull
Copy link
Contributor

@ebfull ebfull commented Mar 20, 2019

This changes virtually everything to be constant time, by introducing a new Maybe abstraction that can later be upstream'd to subtle. This borrows from #18's constant time Tonelli-Shanks, adapted to match the current implementation that is more efficient and more closely based on the paper.

TODO: tests for Maybe::and_then and Maybe::map

@burdges
Copy link

burdges commented Mar 20, 2019

Would even pairings be constant time? :)
Oops I confused this with the pairing repo

Co-authored-by: Jack Grigg <[email protected]>
Co-authored-by: Eirik0 <[email protected]>
@ebfull ebfull force-pushed the constant-time-everything branch from b7e40d9 to 0822191 Compare March 20, 2019 21:32
@ebfull
Copy link
Contributor Author

ebfull commented Mar 20, 2019

@burdges Indeed though, I plan to make even the pairings constant time in my new (and WIP) constant time version of BLS12-381.

@ebfull ebfull merged commit 1d2ea91 into master Mar 21, 2019
@ebfull ebfull mentioned this pull request Mar 21, 2019
@str4d str4d deleted the constant-time-everything branch May 4, 2019 20:03
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 this pull request may close these issues.

2 participants