forked from bitcoin/bitcoin
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge bitcoin#906: Use modified divsteps with initial delta=1/2 for c…
…onstant-time be0609f Add unit tests for edge cases with delta=1/2 variant of divsteps (Pieter Wuille) cd393ce Optimization: only do 59 hddivsteps per iteration instead of 62 (Pieter Wuille) 277b224 Use modified divsteps with initial delta=1/2 for constant-time (Pieter Wuille) 376ca36 Fix typo in explanation (Pieter Wuille) Pull request description: This updates the divsteps-based modular inverse code to use the modified version which starts with delta=1/2. For variable time, the delta=1 variant is still used as it appears to be faster. See https://github.com/sipa/safegcd-bounds/tree/master/coq and https://medium.com/blockstream/a-formal-proof-of-safegcd-bounds-695e1735a348 for a proof of correctness of this variant. TODO: * [x] Update unit tests to include edge cases specific to this variant I'm still running the Coq proof verification for the 590 bound in non-native mode. It's unclear how long this will take. ACKs for top commit: gmaxwell: ACK be0609f sanket1729: crACK be0609f real-or-random: ACK be0609f careful code review and some testing Tree-SHA512: 2f8f400ba3ac8dbd08622d564c3b3e5ff30768bd0eb559f2c4279c6c813e17cdde71b1c16f05742c5657b5238b4d592b48306f9f47d7dbdb57907e58dd99b47a
- Loading branch information
Showing
4 changed files
with
745 additions
and
101 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.