Elabs Crypto.

This crate provides a set of cryptographic helper functions. It provide secp256k1 PublicKey, PrivateKey, signer, and hash functions. This crate is based on [secp256k1] and [tiny-keccak].

Usage

toml [dependencies] elabs-crypto = "0.1"

Example

```rust use elabs_crypto::*;

fn main() { let msg = b"hello world"; let hash = keccak256(msg); let sk = PrivateKey::random(); let pk = sk.topublic().unwrap(); let sig = sign(msg, sk).unwrap(); let (recid, bsig) = sig.serializecompact(); let pk2 = ecrecover(&hash, &bsig, recid.toi32() as u8).unwrap(); asserteq!(pk, pk2); } ```