pub struct MetaKey(/* private fields */);Expand description
Private-metadata key (K5): real filename and informational size.
A distinct type, not PayloadKey, despite identical length and derivation method.
This module’s promise that “swapping arguments in a key-schedule call
becomes a compile error” did not cover K3/K5: both
derivations returned PayloadKey, silently accepting a metadata key
where a payload key belonged. Domain separation still held
(different labels, different values), so no silent vulnerability arose,
but the claimed protection exceeded the actual protection, exactly the case
for which these types exist.
Implementations§
Source§impl MetaKey
impl MetaKey
Sourcepub fn from_bytes(bytes: [u8; 32]) -> Self
pub fn from_bytes(bytes: [u8; 32]) -> Self
Take ownership of existing bytes.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MetaKey
impl RefUnwindSafe for MetaKey
impl Send for MetaKey
impl Sync for MetaKey
impl Unpin for MetaKey
impl UnsafeUnpin for MetaKey
impl UnwindSafe for MetaKey
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more