purecrypt 0.1.0-alpha

Minimal, readable, dependency-free implementations of modern cryptographic primitives in pure Rust
Documentation
use purecrypt::chacha::{ChaCha20Rng, Seed};

fn main() {
    let mut buf = vec![0_u8; 1024 * 1024 * 1024];
    let seed = Seed::default();
    let mut rng = ChaCha20Rng::from_seed(&seed);

    let now = std::time::Instant::now();

    rng.fill_bytes(&mut buf);

    let elapsed = now.elapsed();

    println!(
        "elasped: {elapsed:?}, \nfirst bytes: {:?}, \nlast bytes: {:?}",
        &buf[0..8],
        &buf[buf.len() - 8..buf.len()]
    );
}