Crate async_hash
source ·Expand description
Provides traits Hash
, HashStream
, and HashTryStream
for SHA-2 hashing
of data that must be accessed asynchronously, e.g. a [Stream
] or database table.
Hash
is implemented for standard Rust types:
- Primitive types:
- bool
- i8, i16, i32, i64, i128, isize
- u8, u16, u32, u64, u128, usize
- f32, f64
- &str
- String
- Common standard library types:
- Option<T>
- PhantomData<T>
- Compound types:
- [T; 0] through [T; 32]
- tuples up to size 16
- Collection types:
- BTreeMap<K, V>
- BTreeSet<T>
- BinaryHeap<T>
- LinkedList<T>
- VecDeque<T>
- Vec<T>
IMPORTANT: hashing is order-dependent. Do not implement the traits in this crate for
any data structure which does not have a consistent order. Consider using the collate
crate
if you need to use a type which does not implement Ord
.
Re-exports
pub use sha2::digest::generic_array;
Traits
- Convenience wrapper trait covering functionality of cryptographic hash functions with fixed output size.
- Trait to compute a SHA-2 hash using the digest type
D
Functions
- Construct an empty hash
- Hash a [
Stream
] - Hash a [
TryStream
]
Type Definitions
- Output array of [
OutputSizeUser
] implementors. - SHA-256 hasher.