5 unstable releases

0.3.1 Aug 10, 2022
0.3.0 Dec 8, 2020
0.2.1 Nov 11, 2020
0.2.0 Oct 15, 2020
0.1.0 Jan 20, 2020

#719 in Algorithms

Download history 2259/week @ 2024-12-01 2348/week @ 2024-12-08 2904/week @ 2024-12-15 1465/week @ 2024-12-22 1858/week @ 2024-12-29 2371/week @ 2025-01-05 3021/week @ 2025-01-12 2649/week @ 2025-01-19 1132/week @ 2025-01-26 1435/week @ 2025-02-02 1671/week @ 2025-02-09 2193/week @ 2025-02-16 2695/week @ 2025-02-23 1909/week @ 2025-03-02 2179/week @ 2025-03-09 2285/week @ 2025-03-16

9,282 downloads per month
Used in 89 crates (3 directly)

MIT license

1MB
21K SLoC

blake2b-ref.rs

Crates.io

A no_std BLAKE2B crate.

This crate is transcompiled by c2rust; the source code is from the offcial BLAKE2 ref implementation. The transcompiled source has been modified slightly to support no_std.

The API design is highly inspired - almost copy from https://github.com/nervosnetwork/blake2b-rs.


lib.rs:

This crate is transcompiled from blake2b-ref

Example:

use blake2b_ref::Blake2bBuilder;

fn hash_message(msg: &[u8]) -> [u8; 32] {
    let mut output = [0u8; 32];
    let mut blake2b = Blake2bBuilder::new(32).personal(b"SMT").build();
    blake2b.update(msg);
    blake2b.finalize(&mut output);
    output
}

No runtime deps