Build Status

Full documentation

NOTE

This is a fork of https://github.com/rust-bitcoin/rust-secp256k1, the alterations are minor and relating directly to keeping up-to-date dependencies.

rust-secp256k1

rust-secp256k1 is a wrapper around libsecp256k1, a C library by Pieter Wuille for producing ECDSA signatures using the SECG curve secp256k1. This 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

Contributing

Contributions to this library are welcome. A few guidelines:

A note on Rust 1.22 support

The build dependency cc might require a more recent version of the Rust compiler. To ensure compilation with Rust 1.22.0, pin its version in your Cargo.lock with cargo update -p cc --precise 1.0.41. If you're using secp256k1 in a library, to make sure it compiles in CI, you'll need to generate a lockfile first. Example for Travis CI: yml before_script: - if [ "$TRAVIS_RUST_VERSION" == "1.22.0" ]; then cargo generate-lockfile --verbose && cargo update -p cc --precise "1.0.41" --verbose; fi