Усеченные дифференциальные характеристики с минимальным количеством активных байт для упрощенной хэш-функции Whirlpool

Для рассматриваемых кодов и во введённых обозначениях справедлива следующая теорема.

Теорема 1. Пусть Cr = C(D, G) —код, в котором дивизор D = Qi + ... + Q768 есть сумма всех P-рациональных точек кривой, заданной уравнением у3 = x60 + x57 + +x54 +... + x3 + 1. Тогда в порождающей матрице этого кода нет одинаковых столбцов. Для каждого фиксированного кода из рассматриваемых семейств Clrm при r ^ 127 и

фиксированном m получается — ( ) различных кодов.

18 \ m J

Доказательство теоремы конструктивно и даёт возможность выбора точек дивизора D' так, чтобы все полученные коды были различны.

Код C при указанных выше значениях r изоморфен пространству Ф0. Описание автоморфизмов алгебры Ф, оставляющих на месте Ф0, дает следующая теорема.

Теорема 2. В указанных выше обозначениях при 39 ^ r ^ 127 каждый автоморфизм линейной алгебры Ф, отображающий Ф0 на себя, задается образами x, у: <^(x) = ax + 8; <р(у) = dy, где a,d,8 Е P и a3 = d3 = 1, 8 Е {0,1} в поле P.

Из этой теоремы выводятся достаточные условия на выбор точек дивизора D' для получения кодов C(D', G) с тривиальной группой автоморфизмов.

Обобщёнными автоморфизмами кода длины N называют композицию его автоморфизма и преобразования, заключающегося в умножении i-й координаты всех его векторов на один и тот же элемент ki поля (зависящий от i), i = 1,... , N. Условимся последнее преобразование называть мультипликативным сдвигом на вектор (ki, k2,... , kn). При ki = ... = kN будем называть его тривиальным сдвигом на ki.

Теорема 3. Код C(D', G) имеет только тривиальные мультипликативные сдвиги на любые элементы из P.

ЛИТЕРАТУРА

1. Peters Chr. Information-set decoding for linear codes over Fq // LNCS. 2010. V. 6061. P. 81-94.

2. Bernstein D. J., Lange T, and Peters Chr. Wild McEliece // http://eprint.iacr.org/2010/ 410.

3. Сидельников В. М. Открытое шифрование на основе двоичных кодов Рида — Маллера // Дискретная математика. 1994. T. 6. Вып. 3. C.3-20.

4. Minder L. and Shokrollahi A. Cryptanalysis of the Sidelnikov cryptosystem // LNCS. 2007. V. 4515. P. 347-360.

5. Сидельников В. М., Шестаков С. О. О системе шифрования, построенной на основе обобщённых кодов Рида — Соломона // Дискретная математика. 1994. T. 4. Вып. 3. C. 57-63.

6. Глухов М. М. О кодах Гоппы на одном семействе полей алгебраических функций // Дискретная математика. 2001. T. 13. Вып. 2. C. 14-34.

УДК 519.7, 004.056.2, 004.056.53

УСЕЧЁННЫЕ ДИФФЕРЕНЦИАЛЬНЫЕ ХАРАКТЕРИСТИКИ С МИНИМАЛЬНЫМ КОЛИЧЕСТВОМ АКТИВНЫХ БАЙТ ДЛЯ УПРОЩЁННОЙ ХЭШ-ФУНКЦИИ WHIRLPOOL

А. А. Камаева

Хэш-функция Whirlpool (далее W) разработана Винсентом Риджменом ( Vincent Rijmen) и Пауло Баррето (Paolo Barreto) и опубликована в 2000 г. [1]. Претерпев ряд

изменений, касающихся преобразований, лежащих в её основе, она была стандартизована в окончательном варианте в [2]. Хэш-функция Whirlpool построена на основе AES-подобного блочного шифра W. В атаке отражениями (rebound attack) [3], предложенной Марио Ламбергером и др.(Mar¿o Lamberger etc.), найдены коллизии только для пяти полных раундов блочного шифра W (из 14). Сложность такой атаки составляет 2120 (в то время как парадокс о днях рождения даёт сложность 2256).

Будем рассматривать хэш-функции V и U, которые являются упрощёнными вариантами хэш-функции W: их блочные шифры представляют собой всего один или два раунда блочного шифра W соответственно.

Под дифференциальной характеристикой в задаче поиска одноблоковой коллизии будем понимать набор разностей (AM; AH0, AH1), где AH0 — разность начальных хэш-значений, а AH1 —разность хэш-значений после обработки одного блока сообщений. Под активным байтом в дифференциальной характеристике понимается ненулевой байт, который подается на нелинейное преобразование. В случае хэш-функции W (соответственно, и для V и U) единственным нелинейным преобразованием является S, в основе которого лежит S-box, реализующий нелинейную подстановку.

Пусть M1 и М2 — пара сообщений, такая, что M1 ф M2 = AM. Рассматривая различные значения AM, найдём минимальное количество активных байт в дифференциальной характеристике (AM; 0, 0), при которых существует коллизия, поскольку, как правило, минимизация количества активных байт ведёт к максимизации вероятности дифференциальной характеристики.

Утверждение 1. Для функции V наименьшее количество активных байт в дифференциальной характеристике равно 23, а для функции U — 45.

Для оценки вероятности дифференциальной характеристики используем следующее свойство нелинейного преобразования S: пусть a,b Е {0,1}8. Тогда для фиксированной пары (a, b) число решений уравнения

S(х) ф S(х ф a) = b

относительно переменной х может быть равным 0, 2, 4, 6, 8 и 256 (a = b = 0).

Обозначим Pa,b = N/28, где N — число решений уравнения для пары (a,b). Величина Pa,b является вероятностью дифференциальной характеристики для S-box с разностью a на входе и разностью b на выходе. Соответственно она принимает одно из следующих значений: 0, 2-7, 2-6, 3 • 2-7, 2-5 и 1.

Максимальной вероятности дифференциальной характеристики (AM; 0, 0) можно добиться при предположении, что все её активные байты проходят через S-box с вероятностью 2-5; таким образом, получаем

Следствие 1. Максимальная вероятность нахождения коллизии для хэш-функции V составляет 2-115 , а для U — 2-225.

Итак, даже сильно упрощённая хэш-функция Whirlpool обладает значительной стойкостью к нахождению коллизий.

ЛИТЕРАТУРА

1. Barreto P. S. L. M. and Rijmen V. The Whirlpool Hashing Function. Submitted to NESSIE

2. Information technology — Security techniques — Hash-functions. Part 3: Dedicated hash-functions. ISO/IEC 10118-3:2004, 2004.

3. Lamberger M., MendelF., Rechberger C., et al. The Rebound Attack and Subspace Distinguishers: Application to Whirlpool. Cryptology ePrint archive, Report 2010/198, 2010. http://eprint.iacr.org/2010/198

УДК 519.7, 004.056.2, 004.056.53

ОЦЕНКИ СЛОЖНОСТИ ПОИСКА КОЛЛИЗИЙ ДЛЯ ХЭШ-ФУНКЦИИ RIPEMD

Г. А. Карпунин, Е. З. Ермолаева

Хэш-функция RIPEMD [1] была разработана в 1992 г. в рамках европейского проекта RIPE (RACE Integrity Primitives Evaluation) как альтернатива популярной на то время хэш-функции MD4 [2]. Фактически, функция сжатия RIPEMD представляет собой две работающие параллельно функции сжатия MD4 (левая и правая ветки RIPEMD), отличающиеся друг от друга аддитивными константами. Уже в 1997г. Х. Доббертин [3] нашел коллизии для урезанной до двух раундов версии RIPEMD, а в 2001 г. К. Дебарт и Г. Гилберт [4] показали, что по отдельности и левая и правая ветки RIPEMD не устойчивы к коллизиям. Для полной версии RIPEMD коллизии были построены лишь в 2004 г. и предъявлены в знаменитой заметке К. Вонг и др. [5], чуть позднее те же авторы в [6] опубликовали детали своего алгоритма поиска коллизий и привели оценку средней трудоёмкости, которая является наилучшей на сегодняшний день. Однако корректность этой оценки вызывает сомнения в силу краткого и недетального изложения алгоритма.

К текущему моменту разработаны усиленные варианты хэш-функции RIPEMD: RIPEMD-128, RIPEMD-160, RIPEMD-256, RIPEMD-320 [7, 8], которые рекомендуются к использованию во многих международных и национальных стандартах, в частности ISO/IEC 10118-3:2004. Хэш-функции семейства RIPEMD-x получили широкое распространение и на практике, например RIPEMD-160 используется для генерации ключа шифрования на основе пароля в популярном программном комплексе создания шифрованных дисков TrueCrypt [9]. Поскольку все усиленные варианты наследуют идеологию первой конструкции RIPEMD, её подробный криптоанализ и получение точных оценок стойкости по-прежнему остается актуальным.

В настоящей работе восстанавливаются опущенные детали алгоритма [6] поиска коллизий для RIPEMD и проводится экспериментальная проверка заявленной в [6] трудоёмкости этого алгоритма. Такая необходимость возникает в силу того, что в [6] отсутствует полное обоснование оценок трудоёмкости, а приводятся лишь основные идеи алгоритма, которые состоят в следующем. Строится приводящая к коллизии дифференциальная характеристика (ДМ, AQ), где ДМ — набор разностей между сообщениями, а AQ — набор разностей между промежуточными переменными сцепления. Выписывается некоторый набор достаточных условий на промежуточные переменные сцепления Q и неявно утверждается, что если для одного сообщения М все промежуточные значения переменных сцепления удовлетворяют этим условиям, то автоматически другое сообщение М + ДМ образует коллизию с М. Затем используются две техники для подбора такого сообщения М, что при вычислении его хэш-значения все переменные сцепления удовлетворяют набору достаточных условий. Первая техника называется однократной модификацией сообщения и позволяет добиться выполнения достаточных условий на первых 16 шагах функции сжатия. Сложность этого этапа, как неявно предполагают авторы [6], составляет от 1 до 4 условных операций, где за одну условную операцию принимается одно вычисление функции сжатия. Однако