polyval
POLYVAL
Mojo implementation of POLYVAL, a universal hash function over GF(2¹²⁸)
defined modulo the polynomial x¹²⁸ + x¹²⁷ + x¹²⁶ + x¹²¹ + 1.
POLYVAL is the authentication component of AES-GCM-SIV, specified in RFC 8452. It is the little-endian “mirror” of GHASH (their polynomials are byte-reversed), making it faster on little-endian architectures while remaining able to compute GHASH/GMAC. Block, key, and tag sizes are all 16 bytes.
References
- RFC 8452 — AES-GCM-SIV (§ 3 defines POLYVAL; Appendix A relates it to GHASH)
- RustCrypto —
polyval
Mojo package 🡭