pub struct AesGmac<'c, const KEY_SIZE: usize> { /* private fields */ }Expand description
AES-GMAC Cipher Mode (Galois Message Authentication Code)
GMAC provides message authentication without encryption. The data remains in plaintext but any tampering is detected via the authentication tag.
Implementations§
Trait Implementations§
Source§impl<'c, const KEY_SIZE: usize> Cipher<'c> for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> Cipher<'c> for AesGmac<'c, KEY_SIZE>
Source§const REQUIRES_PADDING: bool = false
const REQUIRES_PADDING: bool = false
Indicates whether the cipher requires the application to provide padding.
Source§fn chmod_bits(&self) -> u8
fn chmod_bits(&self) -> u8
Returns the raw
CHMOD field value for this cipher mode.Source§fn init_phase_blocking(&self, p: Aes)
fn init_phase_blocking(&self, p: Aes)
Performs any cipher-specific initialization (blocking).
Source§fn uses_gcm_phases(&self) -> bool
fn uses_gcm_phases(&self) -> bool
Indicates whether this cipher mode uses GCM/CCM phases (init, header, payload, final).
Source§const BLOCK_SIZE: usize = 16usize
const BLOCK_SIZE: usize = 16usize
Processing block size (always 16 bytes for AES).
Source§fn prepare_key(&self, _p: Aes, _dir: Direction)
fn prepare_key(&self, _p: Aes, _dir: Direction)
Performs any key preparation within the processor, if necessary.
Source§fn is_ccm_mode(&self) -> bool
fn is_ccm_mode(&self) -> bool
Indicates whether this is CCM mode (which has different final phase handling).
Source§impl<'c, const KEY_SIZE: usize> CipherAuthenticated<16> for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> CipherAuthenticated<16> for AesGmac<'c, KEY_SIZE>
impl<'c> CipherSized for AesGmac<'c, { _ }>
impl<'c> CipherSized for AesGmac<'c, { _ }>
impl<'c, const KEY_SIZE: usize> IVSized for AesGmac<'c, KEY_SIZE>
Auto Trait Implementations§
impl<'c, const KEY_SIZE: usize> Freeze for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> RefUnwindSafe for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> Send for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> Sync for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> Unpin for AesGmac<'c, KEY_SIZE>
impl<'c, const KEY_SIZE: usize> UnwindSafe for AesGmac<'c, KEY_SIZE>
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