Skip to main content

cbc_mac

Function cbc_mac 

Source
pub fn cbc_mac(
    input: &[u8],
    icv: &[u8; 16],
    s_mac1: &[u8; 16],
    s_mac2: &[u8; 16],
) -> [u8; 16]
Expand description

Compute the OSDP CBC-MAC.

icv is the previous MAC from the other direction (R-MAC ↔ C-MAC roll per Annex D). For the very first MAC after handshake, the ICV is the initial R-MAC computed by super::crypto::initial_rmac.

Returns the full 16-byte MAC; only the first 4 are transmitted.