Expand description
Deprecation: The blake2b_simd
crate has better performance than this one, with the added benefit of being
pure Rust. This library probably won’t be developed any further.
blake2b_simd
doesn’t currently support BLAKE2s, but if there are any
callers that need it I can add support or fork the crate, so let me know.
blake2_c
is a safe Rust wrapper around the C implementation of
BLAKE2. It exposes all the parameters
that BLAKE2 supports, like personalization and tree hashing.
By default this crate links against the portable “ref”
implementation, but if
you turn on the native
feature it will link against the “sse”
implementation, which
uses SIMD instructions if your processor supports them. That gives about an
8% speedup on my machine, but the resulting binary is probably not
portable.
This crate supports no_std
. The std
feature is on by default, to
provide implementations of std::io::Write
, but it can be disabled in the
caller’s Cargo.toml
using
default-features = false
.
Originally based on libb2-sys
by
@cmr and @cesarb and blake2-rfc
by @cesarb.
Modules§
- blake2b
- The more common version of BLAKE2, optimized for 64-bit processors.
- blake2s
- The less common version of BLAKE2, optimized for smaller processors.
Structs§
- Digest
- A finalized BLAKE2 hash.
Functions§
- blake2b_
256 - An all-at-once convenience function for BLAKE2b-256.
- blake2b_
512 - An all-at-once convenience function for BLAKE2b-512.
- blake2s_
256 - An all-at-once convenience function for BLAKE2s-256.