Struct ring::hkdf::Okm[][src]

pub struct Okm<'a, L: KeyType> { /* fields omitted */ }

An HKDF OKM (Output Keying Material)

Intentionally not Clone or Copy as an OKM is generally only safe to use once.

Implementations

impl<L: KeyType> Okm<'_, L>[src]

pub fn len(&self) -> &L[src]

The OkmLength given to Prk::expand().

pub fn fill(self, out: &mut [u8]) -> Result<(), Unspecified>[src]

Fills out with the output of the HKDF-Expand operation for the given inputs.

Fails if (and only if) the requested output length is larger than 255 times the size of the digest algorithm’s output. (This is the limit imposed by the HKDF specification due to the way HKDF’s counter is constructed.)

Trait Implementations

impl<'a, L: Debug + KeyType> Debug for Okm<'a, L>[src]

impl From<Okm<'_, &'static Algorithm>> for UnboundKey[src]

impl From<Okm<'_, &'static Algorithm>> for HeaderProtectionKey[src]

impl From<Okm<'_, Algorithm>> for Salt[src]

impl From<Okm<'_, Algorithm>> for Prk[src]

impl From<Okm<'_, Algorithm>> for Key[src]

Auto Trait Implementations

impl<'a, L> RefUnwindSafe for Okm<'a, L> where
    L: RefUnwindSafe

impl<'a, L> Send for Okm<'a, L> where
    L: Send

impl<'a, L> Sync for Okm<'a, L> where
    L: Sync

impl<'a, L> Unpin for Okm<'a, L> where
    L: Unpin

impl<'a, L> UnwindSafe for Okm<'a, L> where
    L: UnwindSafe

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, 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.