Add support for custom BigInt
Moduli
#4676
Labels
C-barretenberg
Component: barretenberg cryptography library
BigInt
Moduli
#4676
I’ve been using the new
BigInt
feature in Noir, and was able to decrypt an RSA signature using a 2048 bit modulus.However, while it successfully decrypted the RSA signature (confirmed via
println
), it also produced the error:The backend encountered an error: Assertion failed
. See bigint_constraint.cpp#L360Currently the barretenberg backend only supports 6 different moduli for foreign field arithmetic, and so although it appeared to work, this couldn't be used for creating actual proofs with constraints.
The current approach works well for BN254, ECDSA, EdDSA and other signature algorithms/curves with a fixed modulus, but not so much for non-curve algorithms like RSA, where the modulus changes with each keypair.
Some questions:
Related:
The text was updated successfully, but these errors were encountered: