pub struct Context {
pub algorithm: &'static Algorithm,
// some fields omitted
}A context for multi-step (Init-Update-Finish) digest calculations.
C analog: EVP_MD_CTX.
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());
Constructs a new context.
C analogs: EVP_DigestInit, EVP_DigestInit_ex
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
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
The algorithm that this context is using.
Performs copy-assignment from source. Read more
🔬 This is a nightly-only experimental API. (try_from)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from)
🔬 This is a nightly-only experimental API. (try_from)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from)
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (get_type_id)
this method will likely be replaced by an associated static
Creates owned data from borrowed data, usually by cloning. Read more
🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more