[][src]Struct disco::symmetric::DiscoHash

pub struct DiscoHash { /* fields omitted */ }

An object for facilitating continuous hashing. General use is to call the write method a bunch of times, and then call a final sum.

Input is streamed in, meaning that

h.write(b"foo bar");

is equivalent to

h.write(b"foo");
h.write(b" bar");

Methods

impl DiscoHash[src]

pub fn new(output_len: usize) -> DiscoHash[src]

Makes a new DisocHash object with the given digest size.

Panics when output_len < 32.

pub fn write(&mut self, input_data: &[u8])[src]

Absorbs more data into the hash's state

pub fn sum(self) -> Vec<u8>[src]

Reads the output from the hash. This affects the internal state, so reading will consume this DiscoHash instance. If you want to write and read more, you can clone this instance.

pub fn random(output_len: usize) -> Vec<u8>[src]

Random byte arrays

Trait Implementations

impl Clone for DiscoHash[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,