Crate yobicrypto [] [src]

Yobicrypto is the cryptographic toolkit used by the Yobicash cryptocurrency. It implements symmetric and assymmetric encryption (AES256, x25519), zero-knowledge proofs using the Schnorr Protocol (curve25519) made non-interactive with the Fiat-Shamir Transform (SHA3-512), and proof-of-work through Balloon Hashing ("such alpha, such CPU"). Caveat emptor.

Reexports

pub use self::error::*;
pub use self::result::*;
pub use self::traits::*;
pub use self::random::*;
pub use self::hash::*;
pub use self::balloon::*;
pub use self::pow::*;
pub use self::scalar::*;
pub use self::point::*;
pub use self::zkp::*;
pub use self::encrypt::*;

Modules

balloon

The hash module provides types, traits, and methods for hashing.

encrypt

The encrypt module provides encryption types, traits, and functions.

error

The error module provides the errors used throughout libyobicash.

hash

The hash module provides types, traits, and methods for hashing.

point

The point module provides types, traits, and methods for ECC points on Curve25519.

pow

The pow module provides types, traits, and methods for PoW mining.

random

The random module provides types, traits, and methods for random types.

result

The result module provides the Result type used throughout libyobicash.

scalar

The scalar module provides types, traits, and methods for modular arithmetics on the field of q = 2255.

traits

The traits module provides the traits used throughout libyobicash.

zkp

The zkp module provides Schnorr Algorithm types, traits, and methods.