feat(backend): Use Schnorr signatures for signed PODs (#236)
* Implement non-native extension field arithmetic * Schnorr signature verification (#221) * Use Schnorr signatures for signed PODs * add custom gates (#237) * Clippy * Formatting * Apply suggestions from code review Co-authored-by: Eduard S. <eduardsanou@posteo.net> * Fix typo * Fix tests * Point -> PublicKey * Remove default nnf_div implementation for clarity * Code review & edits for clarity * Remove suspicious mutation * Simplify computation * Fix division * Fix * Update src/backends/plonky2/primitives/ec/curve.rs Co-authored-by: Eduard S. <eduardsanou@posteo.net> * Update src/backends/plonky2/primitives/ec/curve.rs Co-authored-by: Eduard S. <eduardsanou@posteo.net> * Fixes * Add public key to signed POD struct * Style * Elaborate on in-circuit field->biguint conversion * Add missing gates * Comments * Add bits to biguint struct * Comments * Comment --------- Co-authored-by: Daniel Gulotta <dgulotta@alum.mit.edu> Co-authored-by: Eduard S. <eduardsanou@posteo.net>
This commit is contained in:
parent
541c264586
commit
c66506c048
22 changed files with 2995 additions and 456 deletions
|
|
@ -24,6 +24,10 @@ serde = "1.0.219"
|
|||
serde_json = "1.0.140"
|
||||
base64 = "0.22.1"
|
||||
schemars = "0.8.22"
|
||||
num = { version = "0.4.3", features = ["num-bigint"] }
|
||||
num-bigint = { version = "0.4.6", features = ["rand"] }
|
||||
# num-bigint 0.4 requires rand 0.8
|
||||
rand = "0.8.5"
|
||||
hashbrown = { version = "0.14.3", default-features = false, features = ["serde"] }
|
||||
pest = "2.8.0"
|
||||
pest_derive = "2.8.0"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue