Tari Crypto
This crate is part of the Tari Cryptocurrency project.
Major features of this library include:
- Pedersen commitments
- Schnorr Signatures
- Generic Public and Secret Keys
- no-std support
The tari_crypto
crate makes heavy use of the excellent Dalek
libraries. The default implementation for Tari ECC is the Ristretto255 curve.
Feature flags
bulletproofs_plus
This adds in support for rangeproofs using the tari bulletproof plus library
serde
This adds serialise and deserialize support for all structs using the serde library
borsh
This adds serialise and deserialize support for all structs using the borsh library
precomputed_tables
This uses optimised precomputed tables for calculations. While this is faster than straight-up calculations, this requires large memory to store which is not ideal for small no_std devices
WASM and FFI support
TariCrypto has external WASM and FFI wrappers available here WASM: https://github.com/tari-project/tari-crypto-wasm FFI: https://github.com/tari-project/tari-crypto-ffi
Benchmarks
To run the benchmarks:
$ cargo bench
The benchmarks use Criterion and will produce nice graphs (if you have gnuplot installed)