10 releases
0.0.11 | Jan 22, 2024 |
---|---|
0.0.10 | Sep 9, 2022 |
0.0.8 | Mar 9, 2021 |
0.0.6 | Dec 20, 2020 |
0.0.1 | Aug 4, 2019 |
#465 in Cryptography
71 downloads per month
35KB
779 lines
babyjubjub-rs

BabyJubJub elliptic curve implementation in Rust. A twisted edwards curve embedded in the curve of BN128/BN256.
BabyJubJub curve explanation: https://medium.com/zokrates/efficient-ecc-in-zksnarks-using-zokrates-bd9ae37b8186
Uses:
- Poseidon hash function https://github.com/arnaucube/poseidon-rs
Compatible with the BabyJubJub implementations in:
- Go, from https://github.com/iden3/go-iden3-crypto
- circom & javascript, from https://github.com/iden3/circomlib
Warning
Doing this in my free time, do not use in production.
References
- BabyJubJub curve explanation: https://medium.com/zokrates/efficient-ecc-in-zksnarks-using-zokrates-bd9ae37b8186
- C++ & Explanation https://github.com/barryWhiteHat/baby_jubjub
- Javascript & Circom: https://github.com/iden3/circomlib
- Go https://github.com/iden3/go-iden3-crypto
- JubJub curve explanation: https://z.cash/technology/jubjub/
Dependencies
~4–5.5MB
~92K SLoC