Formally verified Pasta curves (Pallas and Vesta) in Coq, Lean, or Dafny

  by   Mukesh Tiwari






Departments Computer Science
DescriptionPasta curve is extensively used in Zk-SNARK, specificially in Halo2, to compose recursive proof. The goal of this project to implement Pasta curve in Coq, Lean, or Dafny and prove the correctness properties, e.g., the prime modulus of Pallas is the group order of Vesta curve. Zcash has published a Rust implementation [1]; also, there is Haskell implementation [2]. [1] https://github.com/zcash/pasta_curves [2] https://hackage.haskell.org/package/pasta-curves-0.0.1.0/docs/PastaCurves.html
PreparationRead about elliptic curve cryptography [1]. [1] https://archive.org/details/guide-to-elliptic-curve-cryptography-darrel-hankerson
Project Categories
Project Keywords Cybersecurity, Logic


Level of Studies

Level 6 (Undergraduate Year 3) yes
Level 7 (Masters) yes
Level 8 (PhD) yes