#[repr(u8)]pub enum ScsType {
Scs11 = 17,
Scs12 = 18,
Scs13 = 19,
Scs14 = 20,
Scs15 = 21,
Scs16 = 22,
Scs17 = 23,
Scs18 = 24,
}Expand description
Security block type byte (SEC_BLK_TYPE).
§Spec: §5.9, Table 3 (cross-referenced via Annex D)
Variants§
Scs11 = 17
SCS_11 — ACU → PD. Begin SC session, carries RND.A.
Scs12 = 18
SCS_12 — PD → ACU. cUID + RND.B + client cryptogram.
Scs13 = 19
SCS_13 — ACU → PD. Server cryptogram.
Scs14 = 20
SCS_14 — PD → ACU. Initial R-MAC.
Scs15 = 21
SCS_15 — ACU → PD. Secure message, MAC only.
Scs16 = 22
SCS_16 — PD → ACU. Secure reply, MAC only.
Scs17 = 23
SCS_17 — ACU → PD. Secure message, encrypted DATA + MAC.
Scs18 = 24
SCS_18 — PD → ACU. Secure reply, encrypted DATA + MAC.
Implementations§
Source§impl ScsType
impl ScsType
Sourcepub const fn has_mac(self) -> bool
pub const fn has_mac(self) -> bool
true if this SCS implies a 4-byte MAC trailer before the checksum / CRC.
§Spec: §5.9
Sourcepub const fn is_encrypted(self) -> bool
pub const fn is_encrypted(self) -> bool
true if this SCS implies the DATA payload is AES-CBC encrypted.
Sourcepub const fn is_handshake(self) -> bool
pub const fn is_handshake(self) -> bool
true if this SCS is part of the handshake (no DATA encryption, no MAC).
Trait Implementations§
impl Copy for ScsType
impl Eq for ScsType
impl StructuralPartialEq for ScsType
Auto Trait Implementations§
impl Freeze for ScsType
impl RefUnwindSafe for ScsType
impl Send for ScsType
impl Sync for ScsType
impl Unpin for ScsType
impl UnsafeUnpin for ScsType
impl UnwindSafe for ScsType
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