mirror of
https://github.com/plume-sig/zk-nullifier-sig.git
synced 2026-04-16 03:00:03 -04:00
ecac4e7395d3d4b35ae4181bcee33d84f9dfd4e0
Verifiably Deterministic Signatures on ECDSA
This allows for the construction of deterministic nullifiers. We intend to deploy it as Privately Linked Unique Message Entities (PLUME).
Implementations
rust-k256: Rust, using the k256 libraryrust-arkworks: Rust, using arkworksjavascript: JavaScript, using MIRACL
TODO
- zk verifier circuits (WIP Circom here: https://github.com/geometryresearch/secp256k1_hash_to_curve/tree/main/circuits)
- change SHA512 to Poseidon (wallets are onboard)
- improve
rust-k256to use a similar interface asrust-arkworks- i.e. generate/accept arbitrary keypairs andrvalues, and not just hardcoded values
Resources
Paper
https://aayushg.com/thesis.pdf https://eprint.iacr.org/2022/1255
Slides
Blog Post
https://blog.aayushg.com/posts/nullifier
ERC Draft
https://personae-labs.notion.site/ERC-Draft-f6d584dd2acd414cb6be834e9bdcfbda
Demo
nullifier.xyz
Circom Code (Partial)
https://github.com/geometryresearch/secp256k1_hash_to_curve/
Talk
https://www.youtube.com/watch?v=6ajBnMdJGoY
Nullifier Calculation Spec
https://hackmd.io/uZQbMHrVSbOHvoI_HrJJlw
Circom Verification Spec
Languages
Rust
69.3%
TypeScript
19.3%
Circom
10.4%
Shell
0.8%
JavaScript
0.2%