Trait cryptoxide::mac::Mac

source ·
pub trait Mac {
    // Required methods
    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;
}
Expand description

The Mac trait defines methods for a Message Authentication function.

Required Methods§

source

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

Process input data.

Arguments
  • data - The input data to process.
source

fn reset(&mut self)

Reset the Mac state to begin processing another input stream.

source

fn result(&mut self) -> MacResult

Obtain the result of a Mac computation as a MacResult.

source

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.

source

fn output_bytes(&self) -> usize

Get the size of the Mac code, in bytes.

Implementors§