1 unstable release
| 0.1.0 | Jan 23, 2025 |
|---|
#1539 in Math
240KB
4.5K
SLoC
Proofs of properties of RSA or Paillier modulus
Implements the protocols described in the papers Efficient Noninteractive Certification of RSA Moduli and Beyond and UC Non-Interactive, Proactive, Distributed ECDSA with Identifiable Aborts. Also refer this.
For a given composite RSA or Paillier modulus N
- Proof that
gcd(x, N) = 1for a givenx - Proof that
Nis square free - Proof that
Nis product 2 distinct primes - Proof that
Nis a Blum integer - A more efficient proof that
Nis a Blum integer
Uses following math
- Legendre and Jacobi symbols,
- square roots modulo prime and composite numbers,
- checking if a composite number is formed of prime powers.
By default, it uses standard library and rayon for parallelization.
For no_std support, build as
cargo build --no-default-features
and for wasm-32, build as
cargo build --no-default-features --target wasm32-unknown-unknown
Dependencies
~3.5–5MB
~101K SLoC