grin/secp256k1zkp
Ignotus Peverell 6bd3fc0d48
Cleanup of Transaction and Block data structures
Some renaming and cleanup of the Input, Output, Transaction and
Block structs. The main change is the removal of all the overt
structures which are now replaced by a specialized module to
build transactions easily. More specifically:

* Rename the TxProof to TxKernel in Block to reflect the current
naming consensus in MimbleWimble.
* Change Input and Output to be plain structs instead of enums
making their manipulation a lot easier. The building of
transactions is now handled by the build module.
* Input now directly includes the commitment of the Output it's
spending instead of going through an intermediate hash.
* The new build module encapsulates all the transaction building
logic, making it very straightforward by chaining combinators.
* Moves some tests to the core mod.rs as they required being able
to build a transaction to test it.
2017-03-20 14:07:00 -07:00
..
depend/secp256k1-zkp Initial import. 2016-10-20 20:06:12 -04:00
src Cleanup of Transaction and Block data structures 2017-03-20 14:07:00 -07:00
.gitignore Initial import. 2016-10-20 20:06:12 -04:00
.travis.yml Initial import. 2016-10-20 20:06:12 -04:00
build.rs Initial import. 2016-10-20 20:06:12 -04:00
Cargo.toml Initial import. 2016-10-20 20:06:12 -04:00
LICENSE Initial import. 2016-10-20 20:06:12 -04:00
Makefile Initial import. 2016-10-20 20:06:12 -04:00
README.md Initial import. 2016-10-20 20:06:12 -04:00

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