[−][src]Struct ring::digest::Context
A context for multi-step (Init-Update-Finish) digest calculations.
C analog: EVP_MD_CTX.
Examples
use ring::digest; let one_shot = digest::digest(&digest::SHA384, b"hello, world"); let mut ctx = digest::Context::new(&digest::SHA384); ctx.update(b"hello"); ctx.update(b", "); ctx.update(b"world"); let multi_part = ctx.finish(); assert_eq!(&one_shot.as_ref(), &multi_part.as_ref());
Fields
algorithm: &'static AlgorithmThe context's algorithm.
Methods
impl Context[src]
pub fn new(algorithm: &'static Algorithm) -> Context[src]
Constructs a new context.
C analogs: EVP_DigestInit, EVP_DigestInit_ex
pub fn update(&mut self, data: &[u8])[src]
Updates the digest with all the data in data. update may be called
zero or more times until finish is called. It must not be called
after finish has been called.
C analog: EVP_DigestUpdate
pub fn finish(self) -> Digest[src]
Finalizes the digest calculation and returns the digest value. finish
consumes the context so it cannot be (mis-)used after finish has been
called.
C analogs: EVP_DigestFinal, EVP_DigestFinal_ex
pub fn algorithm(&self) -> &'static Algorithm[src]
The algorithm that this context is using.
Trait Implementations
Auto Trait Implementations
Blanket Implementations
impl<T> From for T[src]
impl<T, U> TryFrom for T where
U: Into<T>, [src]
U: Into<T>,
type Error = !
🔬 This is a nightly-only experimental API. (
try_from)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T, U> Into for T where
U: From<T>, [src]
U: From<T>,
impl<T> Borrow for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,