Struct cbc_mac::CbcMacCore
source · pub struct CbcMacCore<C>{ /* private fields */ }
Expand description
Generic core CMAC instance, which operates over blocks.
Trait Implementations§
source§impl<C> AlgorithmName for CbcMacCore<C>
impl<C> AlgorithmName for CbcMacCore<C>
source§fn write_alg_name(f: &mut Formatter<'_>) -> Result
fn write_alg_name(f: &mut Formatter<'_>) -> Result
Write algorithm name into
f
.source§impl<C> BlockSizeUser for CbcMacCore<C>
impl<C> BlockSizeUser for CbcMacCore<C>
source§type BlockSize = <C as BlockSizeUser>::BlockSize
type BlockSize = <C as BlockSizeUser>::BlockSize
Size of the block in bytes.
source§fn block_size() -> usize
fn block_size() -> usize
Return block size in bytes.
source§impl<C> BufferKindUser for CbcMacCore<C>
impl<C> BufferKindUser for CbcMacCore<C>
source§type BufferKind = Eager
type BufferKind = Eager
Block buffer kind over which type operates.
source§impl<C> Clone for CbcMacCore<C>
impl<C> Clone for CbcMacCore<C>
source§fn clone(&self) -> CbcMacCore<C>
fn clone(&self) -> CbcMacCore<C>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<C> Debug for CbcMacCore<C>
impl<C> Debug for CbcMacCore<C>
source§impl<C> Drop for CbcMacCore<C>
Available on crate feature zeroize
only.
impl<C> Drop for CbcMacCore<C>
Available on crate feature
zeroize
only.source§impl<C> FixedOutputCore for CbcMacCore<C>where
C: BlockCipher + BlockEncryptMut + Clone,
C::BlockSize: IsLess<U256>,
Le<C::BlockSize, U256>: NonZero,
impl<C> FixedOutputCore for CbcMacCore<C>where
C: BlockCipher + BlockEncryptMut + Clone,
C::BlockSize: IsLess<U256>,
Le<C::BlockSize, U256>: NonZero,
source§fn finalize_fixed_core(
&mut self,
buffer: &mut Buffer<Self>,
out: &mut Output<Self>,
)
fn finalize_fixed_core( &mut self, buffer: &mut Buffer<Self>, out: &mut Output<Self>, )
Finalize state using remaining data stored in the provided block buffer,
write result into provided array and leave
self
in a dirty state.source§impl<C> InnerInit for CbcMacCore<C>
impl<C> InnerInit for CbcMacCore<C>
source§fn inner_init(cipher: C) -> Self
fn inner_init(cipher: C) -> Self
Initialize value from the
inner
.source§impl<C> InnerUser for CbcMacCore<C>
impl<C> InnerUser for CbcMacCore<C>
source§impl<C> OutputSizeUser for CbcMacCore<C>
impl<C> OutputSizeUser for CbcMacCore<C>
source§type OutputSize = <C as BlockSizeUser>::BlockSize
type OutputSize = <C as BlockSizeUser>::BlockSize
Size of the output in bytes.
source§fn output_size() -> usize
fn output_size() -> usize
Return output size in bytes.
source§impl<C> Reset for CbcMacCore<C>
impl<C> Reset for CbcMacCore<C>
source§impl<C> UpdateCore for CbcMacCore<C>
impl<C> UpdateCore for CbcMacCore<C>
source§fn update_blocks(&mut self, blocks: &[Block<Self>])
fn update_blocks(&mut self, blocks: &[Block<Self>])
Update state using the provided data blocks.
impl<C> MacMarker for CbcMacCore<C>
impl<C> ZeroizeOnDrop for CbcMacCore<C>
Available on crate feature
zeroize
only.Auto Trait Implementations§
impl<C> Freeze for CbcMacCore<C>
impl<C> RefUnwindSafe for CbcMacCore<C>where
C: RefUnwindSafe,
<<C as BlockSizeUser>::BlockSize as ArrayLength<u8>>::ArrayType: RefUnwindSafe,
impl<C> Send for CbcMacCore<C>where
C: Send,
impl<C> Sync for CbcMacCore<C>where
C: Sync,
impl<C> Unpin for CbcMacCore<C>
impl<C> UnwindSafe for CbcMacCore<C>
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> KeyInit for T
impl<T> KeyInit for T
source§fn new(key: &GenericArray<u8, <T as KeySizeUser>::KeySize>) -> T
fn new(key: &GenericArray<u8, <T as KeySizeUser>::KeySize>) -> T
Create new value from fixed size key.
source§fn new_from_slice(key: &[u8]) -> Result<T, InvalidLength>
fn new_from_slice(key: &[u8]) -> Result<T, InvalidLength>
Create new value from variable size key.