babyjubjub-rs/README.md
README.mdRaw
1# babyjubjub-rs [](https://crates.io/crates/babyjubjub-rs) [](https://travis-ci.org/arnaucube/babyjubjub-rs)
2BabyJubJub elliptic curve implementation in Rust.
3
4BabyJubJub is a twisted edwards curve embedded in the curve of BN128.
5
6Uses MiMC7 hash function: https://github.com/arnaucube/mimc-rs
7
8## Warning
9Doing this in my free time to get familiar with Rust, do not use in production.
10
11- [x] point addition
12- [x] point scalar multiplication
13- [x] eddsa keys generation
14- [x] eddsa signature
15- [x] eddsa signature verification
16- [ ] {point, pk, signature} compress&decompress parsers
17
18
19
20
21### References
22- BabyJubJub curve explanation: https://medium.com/zokrates/efficient-ecc-in-zksnarks-using-zokrates-bd9ae37b8186
23 - C++ https://github.com/barryWhiteHat/baby_jubjub_ecc
24 - Javascript & Circom: https://github.com/iden3/circomlib
25 - Go https://github.com/iden3/go-iden3-crypto
26- JubJub curve explanation: https://z.cash/technology/jubjub/
27 - Rust: https://github.com/zkcrypto/jubjub
28 - Python: https://github.com/daira/jubjub