Trait crypto::mac::Mac [-] [+] [src]

pub trait Mac {
    fn input(&mut self, data: &[u8]);
    fn reset(&mut self);
    fn result(&mut self) -> MacResult;
    fn raw_result(&mut self, output: &mut [u8]);
    fn output_bytes(&self) -> usize;
}

The Mac trait defines methods for a Message Authentication function.

Required Methods

fn input(&mut self, data: &[u8])

Process input data.

Arguments

  • data - The input data to process.

fn reset(&mut self)

Reset the Mac state to begin processing another input stream.

fn result(&mut self) -> MacResult

Obtain the result of a Mac computation as a MacResult.

fn raw_result(&mut self, output: &mut [u8])

Obtain the result of a Mac computation as [u8]. This method should be used very carefully since incorrect use of the Mac code could result in permitting a timing attack which defeats the security provided by a Mac function.

fn output_bytes(&self) -> usize

Get the size of the Mac code, in bytes.

Implementors