IT-словарь › Безопасность › GHASH

GHASH

Безопасность Svenska → Обновлено: 2026-10-18

Универсальный хеш внутри GCM: превращает шифртекст в многочлен и вычисляет его в секретной точке.

GHASH нарезает ассоциированные данные, шифртекст и завершающий блок длин на 128-битные части и рассматривает их как коэффициенты многочлена над GF(2128). Многочлен вычисляется в точке H = E_K(0¹²⁸) — блочный шифр, применённый к нулевому блоку. Результат XOR-ится с зашифрованным блоком счётчика, и получается тег аутентификации. Мак-Грю и Виега встроили его в GCM в 2004 году; с тех пор как Intel в 2010 году выпустила инструкцию PCLMULQDQ, в железе он почти бесплатен.

Подвох в том, что всё держится на H. Повторите nonce — и атакующий составит уравнение, из которого получит H, после чего теги можно подделывать сколько угодно. Порядок битов к тому же отражён так, что поколения разработчиков ругались; POLYVAL в GCM-SIV — та же идея, но с порядком байтов, который человек способен понять.

← Назад к словарю