Crate digest[−][src]
This crate provides traits which describe functionality of cryptographic hash functions.
Traits in this repository are organized into high-level convenience traits, mid-level traits which expose more fine-grained functionality, and low-level traits intended to only be used by algorithm implementations:
- High-level convenience traits:
Digest,DynDigest. They are wrappers around lower-level traits for most common hash-function use-cases. - Mid-level traits:
Update,FixedOutput,ExtendableOutput,Reset. These traits atomically describe available functionality of hash function implementations. - Low-level traits defined in the
core_apimodule. These traits operate at a block-level and do not contain any built-in buffering. They are intended to be implemented by low-level algorithm providers only and simplify the amount of work implementers need to do and therefore usually shouldn't be used in application-level code.
Additionally hash functions implement traits from the standard library:
Default, Clone, Write. The latter is
feature-gated behind std feature, which is usually enabled by default
by hash implementation crates.
The Digest trait is the most commonly used trait.
Re-exports
pub use block_buffer; |
pub use generic_array; |
Modules
| consts | Type aliases for many constants. |
| core_api | core-apiLow-level core API traits. |
| dev | devDevelopment-related functionality |
Macros
| bench | devDefine benchmark |
| new_test | devDefine test |
Structs
| GenericArray | Struct representing a generic array - |
| InvalidBufferLength | allocBuffer length is not equal to the hash output size. |
| InvalidOutputSize | The error type for variable hasher initialization. |
Traits
| Digest | The |
| DynDigest | allocThe |
| ExtendableOutput | Trait which describes extendable-output functions (XOF). |
| FixedOutput | Trait for returning digest result with the fixed size |
| Reset | Trait for resetting hasher instances |
| Update | Trait for updating hasher state with input data. |
| VariableOutput | Trait for variable output size hash functions. |
| XofReader | Trait for describing readers which are used to extract extendable output from XOF (extendable-output function) result. |
Type Definitions
| Output | Fixed of fixed-sized hash-function used by |