[][src]Crate digest

This crate provides traits which describe functionality of cryptographic hash functions.

Traits in this repository can be separated into two levels:

  • Low level traits: Input, BlockInput, Reset, FixedOutput, VariableOutput, ExtendableOutput. These traits atomically describe available functionality of hash function implementations.
  • Convenience trait: Digest, DynDigest. They are wrappers around low level traits for most common hash-function use-cases.

Additionally hash functions implement traits from std: Default, Clone, Write. (the latter depends on enabled-by-default std crate feature)

The Digest trait is the most commonly used trait.

Re-exports

pub extern crate generic_array;

Macros

impl_write

Implements std::io::Write trait for implementer of Input

Structs

InvalidOutputSize

The error type for variable hasher initialization

Traits

BlockInput

Trait to indicate that digest function processes data in blocks of size BlockSize.

Digest

The Digest trait specifies an interface common for digest functions.

DynDigest

The DynDigest trait is a modification of Digest trait suitable for trait objects.

ExtendableOutput

Trait which describes extendable-output functions (XOF).

FixedOutput

Trait for returning digest result with the fixed size

Input

Trait for processing input data

Reset

Trait for resetting hash instances

VariableOutput

Trait for returning digest result with the variable size

XofReader

Trait for describing readers which are used to extract extendable output from XOF (extendable-output function) result.