RustCrypto / RustCrypto/crypto-bigint
Feature wishlist tracking ticket
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 309
- Forks
- 95
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 3
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 < nrandom prime(usecrypto-primesinstead)
- Hardware acceleration / assembly (see also #572)
NOTE: for prime number support, see the crypto-primes crate
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
This is a tracking ticket rather than a single implementation task, and it names no source files or tests. Start by reviewing the unchecked items and their linked algorithm references or related issues. Work is done only after one specific feature is selected, scoped, implemented, and covered by the project’s tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cryptography
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100