omac1_aes_128_vector(9)
π omac1_aes_128_vector β Kernel API Manual β¨
okay bestie, so this page is omac1_aes_128_vector(9), and it's literally a manual page from the Kernel API Manual β yes, that's the manual name, we're not copying the header line, we're folding it in like a true main character π
β¨ NAME β¨
omac1_aes_128_vector β One-Key CBC MAC (OMAC1) hash with AES-128 π¦
πΈ SYNOPSIS πΈ
int omac1_aes_128_vector (u8 *key , size_t num_elem , u8 *addr[] ,
size_t *len , u8 *mac );
π ARGUMENTS π
keyβ the 128-bit key for the hash operation π like, the whole secret vibe of this thingnum_elemβ number of elements in the data vector, i.e. how many lil pieces of data you're handing overaddrβ pointers to the data areas ππ yes, plural, it's an array of pointerslenβ the lengths of the data blocks π so it knows how big each one ismacβ buffer for the MAC (128 bits, i.e., 16 bytes) β this is where the finished MAC gets dropped off π
π«Ά RETURN π«Ά
0on success β slay β-1on failure β not slay π
π DESCRIPTION π
So basically this is a mode for using a block cipher (AES in this case, obviously) for authentication. That's the whole gig: auth, not encryption, don't get it twisted π
And the lore: OMAC1 was standardized with the name CMAC by NIST in a Special Publication (SP) 800-38B. periodt. That's the tea π
ngl, the exact numbers and spec names matter here βOMAC1,CMAC,NIST,SP,800-38Bβ keep them exactly as they are, bestie π
π¦ SEE ALSO π¦
- Kernel file
./drivers/staging/rtl8723bs/core/rtw_security.c omac1_aes_128(9)
and that's the whole page π§ this cutie came from ./drivers/staging/rtl8723bs/core and it's dated October 2026 β go off, October 2026, you iconic little timestamp ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms