This is a rust wrapper around secp256k1, with interesting Wiki documents and a lot of demos.
secp256k1
is an actively maintained optimized C library for EC(Elliptic Curve) operations on curve secp256k1, the main contributors include:
- Peter Wuille, Co-founder and Core Tech Engineer of Blockstream.
- Gregory Maxwell, Bitcoin Core developer, Co-Founder and CTO of Blockstream (resigned from Blockstream 2017 Nov.).
- Andrew Poelstra, Mathematician at Blockstream.
- And all other around fifty contributors.
You can find more detail about it on https://github.com/bitcoin/secp256k1.
This Rust library:
- exposes type-safe Rust bindings for all
libsecp256k1
functions - implements key generation
- implements deterministic nonce generation via RFC6979
- implements many unit tests, adding to those already present in
libsecp256k1
- makes no allocations (except in unit tests) for efficiency and use in freestanding implementations
- including: schnorr signature, pedersen commitment, bulletproof
git clone --recursive https://github.com/garyyu/rust-secp256k1-zkp.git
cd rust-secp256k1-zkp
cargo build --release
cargo test --release -- demo_ecdsa_sign --nocapture
replace demo_ecdsa_sign
with any demo/test as you want.
If you find this repo or the Wiki documents are useful for you, please star it (click that Star button on top right corner), and then find it later from Your stars menu on your github account.
And welcome to edit the Wiki pages and/or fork this repo, to contribute for the open source.