pub struct RetailMac<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> { /* private fields */ }Expand description
Generic Retail MAC instance.
Trait Implementations§
Source§impl<C> AlgorithmName for RetailMac<C>
impl<C> AlgorithmName for RetailMac<C>
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> BlockSizeUser for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> BlockSizeUser for RetailMac<C>
Source§type BlockSize = <RetailMacCore<C> as BlockSizeUser>::BlockSize
type BlockSize = <RetailMacCore<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: Clone + BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Clone for RetailMac<C>
impl<C: Clone + BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Clone for RetailMac<C>
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> CoreProxy for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> CoreProxy for RetailMac<C>
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Debug for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Debug for RetailMac<C>
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> FixedOutput for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> FixedOutput for RetailMac<C>
Source§fn finalize_into(self, out: &mut Output<Self>)
fn finalize_into(self, out: &mut Output<Self>)
Consume value and write result into provided array.
Source§fn finalize_fixed(self) -> Array<u8, Self::OutputSize>
fn finalize_fixed(self) -> Array<u8, Self::OutputSize>
Retrieve result and consume the hasher instance.
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> FixedOutputReset for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> FixedOutputReset for RetailMac<C>
Source§fn finalize_into_reset(&mut self, out: &mut Output<Self>)
fn finalize_into_reset(&mut self, out: &mut Output<Self>)
Write result into provided array and reset the hasher state.
Source§fn finalize_fixed_reset(&mut self) -> Array<u8, Self::OutputSize>
fn finalize_fixed_reset(&mut self) -> Array<u8, Self::OutputSize>
Retrieve result and reset the hasher state.
Source§impl<C> KeyInit for RetailMac<C>where
C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser + KeyInit,
<C as SmallBlockSizeUser>::_BlockSize: Mul<U2>,
Prod<<C as SmallBlockSizeUser>::_BlockSize, U2>: ArraySize,
impl<C> KeyInit for RetailMac<C>where
C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser + KeyInit,
<C as SmallBlockSizeUser>::_BlockSize: Mul<U2>,
Prod<<C as SmallBlockSizeUser>::_BlockSize, U2>: ArraySize,
Source§impl<C> KeySizeUser for RetailMac<C>where
C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser,
<C as SmallBlockSizeUser>::_BlockSize: Mul<U2>,
Prod<<C as SmallBlockSizeUser>::_BlockSize, U2>: ArraySize,
impl<C> KeySizeUser for RetailMac<C>where
C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser,
<C as SmallBlockSizeUser>::_BlockSize: Mul<U2>,
Prod<<C as SmallBlockSizeUser>::_BlockSize, U2>: ArraySize,
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> OutputSizeUser for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> OutputSizeUser for RetailMac<C>
Source§type OutputSize = <RetailMacCore<C> as OutputSizeUser>::OutputSize
type OutputSize = <RetailMacCore<C> as OutputSizeUser>::OutputSize
Size of the output in bytes.
Source§fn output_size() -> usize
fn output_size() -> usize
Return output size in bytes.
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Reset for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Reset for RetailMac<C>
Source§impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Update for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> Update for RetailMac<C>
impl<C: BlockCipherEncrypt + BlockCipherDecrypt + SmallBlockSizeUser> MacMarker for RetailMac<C>
Auto Trait Implementations§
impl<C> Freeze for RetailMac<C>
impl<C> RefUnwindSafe for RetailMac<C>where
C: RefUnwindSafe,
<<C as SmallBlockSizeUser>::_BlockSize as ArraySize>::ArrayType<u8>: RefUnwindSafe,
impl<C> Send for RetailMac<C>where
C: Send,
impl<C> Sync for RetailMac<C>where
C: Sync,
impl<C> Unpin for RetailMac<C>
impl<C> UnsafeUnpin for RetailMac<C>where
C: UnsafeUnpin,
<<C as SmallBlockSizeUser>::_BlockSize as ArraySize>::ArrayType<u8>: UnsafeUnpin,
impl<C> UnwindSafe for RetailMac<C>where
C: UnwindSafe,
<<C as SmallBlockSizeUser>::_BlockSize as ArraySize>::ArrayType<u8>: UnwindSafe,
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§impl<D> DynDigest for D
impl<D> DynDigest for D
Source§fn finalize_into(self, buf: &mut [u8]) -> Result<(), InvalidBufferSize>
fn finalize_into(self, buf: &mut [u8]) -> Result<(), InvalidBufferSize>
Write result into provided array and consume the hasher instance. Read more
Source§fn finalize_into_reset(
&mut self,
buf: &mut [u8],
) -> Result<(), InvalidBufferSize>
fn finalize_into_reset( &mut self, buf: &mut [u8], ) -> Result<(), InvalidBufferSize>
Write result into provided array and reset the hasher instance. Read more
Source§fn output_size(&self) -> usize
fn output_size(&self) -> usize
Get output size of the hasher
Source§impl<T> Mac for T
impl<T> Mac for T
Source§fn chain_update(self, data: impl AsRef<[u8]>) -> T
fn chain_update(self, data: impl AsRef<[u8]>) -> T
Process input data in a chained manner.
Source§fn finalize_reset(&mut self) -> CtOutput<T>where
T: FixedOutputReset,
fn finalize_reset(&mut self) -> CtOutput<T>where
T: FixedOutputReset,
Source§fn verify(
self,
tag: &Array<u8, <T as OutputSizeUser>::OutputSize>,
) -> Result<(), MacError>
fn verify( self, tag: &Array<u8, <T as OutputSizeUser>::OutputSize>, ) -> Result<(), MacError>
Check if tag/code value is correct for the processed input. Read more
Source§fn verify_reset(
&mut self,
tag: &Array<u8, <T as OutputSizeUser>::OutputSize>,
) -> Result<(), MacError>where
T: FixedOutputReset,
fn verify_reset(
&mut self,
tag: &Array<u8, <T as OutputSizeUser>::OutputSize>,
) -> Result<(), MacError>where
T: FixedOutputReset,
Source§fn verify_slice(self, tag: &[u8]) -> Result<(), MacError>
fn verify_slice(self, tag: &[u8]) -> Result<(), MacError>
Check truncated tag correctness using all bytes
of calculated tag. Read more
Source§fn verify_slice_reset(&mut self, tag: &[u8]) -> Result<(), MacError>where
T: FixedOutputReset,
fn verify_slice_reset(&mut self, tag: &[u8]) -> Result<(), MacError>where
T: FixedOutputReset,
Source§impl<T> SmallBlockSizeUser for T
impl<T> SmallBlockSizeUser for T
Source§type _BlockSize = <T as BlockSizeUser>::BlockSize
type _BlockSize = <T as BlockSizeUser>::BlockSize
Helper associated type equal to
<Self as BlockSizeUser>::BlockSize.