ghash_preparekey(9)
π ghash_preparekey(9) β¨
okay so real talk, this is a page straight out of the Kernel API Manual and it's literally about prepping a GHASH key π no cap, it's a tiny one but it's iconic in its own lowkey way, so let's get into it bestie π«Ά
πΈ NAME πΈ
ghash_preparekey β Prepare a GHASH key π
like, that's the whole vibe. it prepares the key. it's giving preparation. periodt.
β¨ SYNOPSIS β¨
void ghash_preparekey (struct ghash_key *key , const u8
raw_key[GHASH_BLOCK_SIZE] );
that's it, that's the signature π«Ά copy it exactly, don't be out here renaming things, i'm watching π
π ARGUMENTS π
keyβ (output) the key structure you're gonna initialize π it's the output bestie, so it comes back all filled in for youraw_keyβ the raw hash key πΈ the actual key material, handed to you as-is
π¦ DESCRIPTION π¦
Initialize a GHASH key structure from a raw key β¨
that's the whole thing. you hand it a raw key, it hands you back a nice initialized struct ghash_key. the way that it just works ππ
π CONTEXT π
Any context π ngl, that's the most chill context line i've ever seen. no locks, no special rules, no "you must be in interrupt context or the kernel will personally come for you" β just any context π slay.
β SEE ALSO β
Kernel file ./include/crypto/gf128hash.h β go read it, it's where the family lives π§
struct polyval_elem(9)struct ghash_key(9)struct polyval_key(9)struct ghash_ctx(9)struct polyval_ctx(9)polyval_preparekey(9)ghash_init(9)polyval_init(9)polyval_import_blkaligned(9)polyval_export_blkaligned(9)ghash_update(9)polyval_update(9)ghash_final(9)polyval_final(9)ghash(9)polyval(9)
that's the whole squad fr fr π
and that's a wrap bestie!! π this lil page lives over in ./include/crypto and it's stamped October 2026 β so yeah, mark your calendar, it's canon ποΈπ
π¦ 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