STRUCT POLYVAL_KEY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct polyval_key(9) β€” from the Kernel API Manual πŸ’–

✨ NAME ✨

struct polyval_key β€” Prepared key for POLYVAL. That's the whole vibe, bestie 🫢.

πŸ“¦ SYNOPSIS πŸ“¦

okay so the struct is literally this, platform-config conditional and all:

struct polyval_key {
  #if defined(CONFIG_CRYPTO_LIB_GF128HASH_ARCH) &&
(defined(CONFIG_ARM64) || defined(CONFIG_X86));
    struct polyval_elem h_powers[8];
  #else;
    struct polyval_elem h;
  #endif;
};

🫢 Members 🫢

  • h_powers β€” Powers of the hash key H^8 through H^1. Precomputed powers, slay ✨.
  • h β€” The hash key H. Just the raw key, no cap.

🌸 Description 🌸

Depending on the platform's POLYVAL implementation, this may contain just the raw key H, or it may contain precomputed key powers. Use polyval_preparekey to initialize this. Periodt πŸ’….

By H^i we mean H^(i-1) * H * x^-128, with base case H^1 = H. I.e. the exponentiation repeats the POLYVAL dot operation, with its "extra" x^-128. The way that math is mathing, honestly πŸ”₯.

πŸ‘€ SEE ALSO πŸ‘€

Kernel file ./include/crypto/gf128hash.h β€” go read it, bestie. Then these, in the original order:


mwah πŸ’‹ β€” this page lives in ./include/crypto, dated October 2026, and it's the struct polyval_key(9) manual page. bye bestie, go initialize your keys 🫢✨

πŸ“¦ where this page comes from