def AdAes.round

bend-osdev-aead@0.1.0.0 · aesround.bend:169

import bend-osdev-aead@0.1.0.0/aesround.bend as Aesround
import Base

169# AESRound(a, k)
170def AdAes.round(s: AdSbox, a: AdBlk, k: AdBlk) -> AdBlk:
171  match s a k:
172    case AdSbox{+t} AdBlk{+a0, +a1, +a2, +a3} AdBlk{k0, k1, k2, k3}:
173      AdBlk{U32.xor(ad.aes.col(t, a0, a1, a2, a3), k0), U32.xor(ad.aes.col(t, a1, a2, a3, a0), k1), U32.xor(ad.aes.col(t, a2, a3, a0, a1), k2), U32.xor(ad.aes.col(t, a3, a0, a1, a2), k3)}

Uses (4)

Used by (3)