Методы Джунемана

Этот MAC также называют квадратичным конгруэнтным кодом обнаружения манипуляции ( quadratic con-graential manipulation detection code, QCMDC) [792, 789]. Сначала разделим сообщение на от-битовые блоки. Затем:

Н0 = /я, , где 1Н - секретный ключ

Я, = (#„! + М,)2 mod p, где/; - простое число, меньшее 2m-l, a + обозначает целочисленное сложение.

Джунеман (Jueneman) предлагает п = 16 ир = 231-1. В [792] он также предлагает, чтобы Щ использовался в качестве дополнительного ключа, а действительное сообщение начиналось бы с Я2.

Из-за множества вскрытий типа дня рождения, выполненных в сотрудничестве с Доном Копперсмитом , Джунеман предложил вычислять QCMDC четыре раза, используя результат одной итерации в качестве IV для


следующей итерации, а затем результаты объединяются в 128-битовое хэш-значение [793]. В дальнейшем эта идея была усилена за счет параллельного выполнения четырех итераций с поперечными связями между ними [790, 791]. Эта схема была взломана Копперсмитом [376].

В другом варианте [432, 434] операция сложения заменена XOR, и используются блоки сообщения, намного меньшие/;. Кроме того, был задан Я0, что превратило алгоритм в однонаправленную хэш-функцию без ключа . После того, как эта схема была вскрыта [612], она была усилена для использования в качестве части проекта European Open Shop Information-TeleTrast [1221], процитирована в CCITT X.509 [304] и принята ISO в 10118 [764, 765]. К сожалению Копперсмит взломал и эту схему [376]. В ряде исследований изучалась возможность использовать отличные от 2 основания экспоненты [603], но ни одно не оказалось перспективным.