Custom fork of rust-secp256k1 with unsafe modifications for higher speed. Unsuitable for production.
Go to file
Andrew Poelstra f8bbc89df6 [API BREAK] expose ability to create contexts without verify or signing caps
There are a lot of cases in rust-bitcoin where we need a `Secp256k1`
which doesn't need any signing or verification capabilities, only
checking the validity of various objects. We can get away with a bare
context (i.e. no precomputation) which can be cheaply created on demand,
avoiding the need to pass around references to Secp256k1 objects everywhere.

API break because the following functions can now fail (given an insufficiently
capable context) and therefore now return a Result:

    Secp256k1::generate_keypair
    Secp256k1::sign
    Secp256k1::sign_compact
2015-04-13 22:15:52 -05:00
src [API BREAK] expose ability to create contexts without verify or signing caps 2015-04-13 22:15:52 -05:00
.gitignore Add gitignore 2014-08-04 19:59:58 -04:00
.travis.yml Update bindings to current secp256k1 library 2015-04-06 00:13:38 -05:00
Cargo.toml Add support for serde (de)serialization; add unit tests 2015-04-10 00:32:12 -05:00
LICENSE Remove the MIT/CC0 license in favor of just CC0 2015-03-25 18:36:30 -05:00
Makefile Initial (failing) implementation. 2014-07-06 22:41:22 -07:00
README.md Add Travis build status to README 2015-04-05 12:37:49 -05:00

README.md

Build Status

rust-secp256k1

rust-secp256k1 is a wrapper around libsecp256k1, a C library by Peter 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

Full documentation