- 
                Notifications
    You must be signed in to change notification settings 
- Fork 70
Open
Description
This is a ticket for tracking desired new features for crypto-bigint and which algorithms should be used in order to implement particular features.
Unless otherwise stated, these features are implied to be for the UInt type.
- signed integers (#700)
- addition/subtraction
-  multiplication algorithms
- "schoolbook"
- Karatsuba
 
- sqrt
-  modular arithmetic
- add
- subtract
- multiply
- negate
- modulus
- pow
- sqrt
- inversions
 
-  bitwise operations (request other ops in comments)
- shift
- rotate
- XOR
 
-  fields mod n (i.e. wrapper newtypes for UInt)
-  constant-time division
-  by 2 (useful for elliptic-curvecrates)
- arbitrary
 
-  by 2 (useful for 
-  subtlecomparisons-   ConstantTimeEq
-  ConstantTimeGreater
-  ConstantTimeLess
 
-   
- CRT (algorithms listed below)
- LCM
-  GCD (algorithms listed below)
- safegcd (a.k.a. Bernstein-Yang)
- safegcd-bounds (#634)
 
-  RNG
- random < n
- better random < n
- random prime(use- crypto-primesinstead)
 
- Hardware acceleration / assembly (see also #572)
NOTE: for prime number support, see the crypto-primes crate
survived
Metadata
Metadata
Assignees
Labels
No labels