#digest #hash #crypto #blake2

blakeout

Memory hard hashing algorithm based on Blake2s

3 releases (breaking)

0.3.0 Mar 21, 2021
0.2.0 Mar 21, 2021
0.1.0 Mar 9, 2021

#15 in #blake2

Download history 56/week @ 2024-11-13 33/week @ 2024-11-20 28/week @ 2024-11-27 24/week @ 2024-12-04 35/week @ 2024-12-11 22/week @ 2024-12-18 11/week @ 2024-12-25 13/week @ 2025-01-01 17/week @ 2025-01-08 22/week @ 2025-01-15 17/week @ 2025-01-22 17/week @ 2025-01-29 27/week @ 2025-02-05 24/week @ 2025-02-12 24/week @ 2025-02-19 42/week @ 2025-02-26

119 downloads per month

MIT/Apache

7KB
99 lines

Blakeout

Memory hard hashing algorithm based on Blake2s

Usage

Blakeout can be used in the following way:

use crypto::digest::Digest;
use blakeout::Blakeout;

// create a Blakeout object, it will hash your bytes for you
let mut hasher = Blakeout::default();

// write input message
hasher.input(b"hello world");

// read hash digest and consume hasher
let res = hasher.result_str();
assert_eq!(res, "6cc4bddb52416711be65e4b0201106fda4ceb0de48dfdce7e3a136e490d8586f");

lib.rs:

An implementation of the Blakeout hash function.

Usage

Blakeout can be used in the following way:

use crypto::digest::Digest;
use blakeout::Blakeout;

// create a Blakeout object, it will hash your bytes for you
let mut hasher = Blakeout::default();

// write input message
hasher.update(b"hello world");

// read hash digest and consume hasher
let res = hasher.result_str();
assert_eq!(res, "6cc4bddb52416711be65e4b0201106fda4ceb0de48dfdce7e3a136e490d8586f");

Dependencies

~685KB
~17K SLoC