ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА
№16 ПРИЛОЖЕНИЕ Сентябрь 2023
Секция 3
МАТЕМАТИЧЕСКИЕ МЕТОДЫ КРИПТОГРАФИИ
УДК 519.24 DOI 10.17223/2226308Х/16/9
АТАКА РАЗЛИЧЕНИЯ НА ЧЕТЫРЕ РАУНДА ШИФРА ЛЮБИ — РАКОФФ ПО РАЗНОСТЯМ ДВУБЛОЧНЫХ ТЕКСТОВ1
О, В, Денисов
Установлено, что шифр Люби — Ракофф является марковским, найдены его матрицы переходных вероятностей разностей за 1, 2 и 4 раунда. На основе статистики логарифма отношения правдоподобий построена последовательная атака различения на четыре раунда шифра по разностям заданного типа независимых двублоч-ных текстов. Получены оценки среднего числа используемых текстов, проведены эксперименты на шифрах с длинами блоков от 12 до 44 бит.
Ключевые слова: марковский шифр, сеть Фейстеля, шифр Люби — Ракофф, дивергенция Кульбака, последовательная, разностная атака.
Рассмотрим Д-раундовую сеть Фейстеля с алфавитом полублоков (Zm, ф), ф —покоординатное сложение по модулю 2, и раундовыми преобразованиями
(xr-1,xr) ^ (xr,xr-1 ф fr(xr)), 1 ^ r ^ R. (1)
В 1988 г. американские криптографы М. Luby и С. Rackoff ввели [1] вероятностную модель сети (1), в которой раундовые функции усложнения выбираются независимо равновероятно из множества всех двоичных вектор-функций от m переменных:
f1,...,fR - U(Fm), Fm = {f | f : zm ^ zm}. (2)
Для такой случайной сети при R = 3,4 в разных моделях запросов получен ряд нижних оценок стойкости к атакам различения, т. е. алгоритмам d проверки гипотез о случайной подстановке F на множестве X = Z^m:
H1 : F выбрана равновероятно го множества всех подстановок, H2 : F получена в R-раундовой модели Люби — Ракофф.
d
емые аргументы x1,...,xq G X, что ему становятся доступны значения yt = F(xt), 1 ^ t ^ g, т. е, набор Y = (y1,..., yq). Преимуществом различнтеля d называется
Adv(d) = | Px[d(Y) = 1] - P2[d(Y) = 1]| = |1 - ax(d) - a2(d)y
Здесь и далее через P^ и a^(d) обозначаем соответственно вероятностное распределение и вероятности ошибок критерия d ^^и гапотезе Hi, i = 1, 2.
R=4
d
Attack", когда d может формировать запрос xt с учётом значений yi,...,yt-\, 2 ^ ^ t ^ q, выполнено AdvCCA(d) ^ q2/2m, Отсюда следует, что если q(M) = o(vM) при M = 2m ^ то, то гипотезы асимптотически неразличимы, т. е. сумма вероятностей ошибок любого критерия стремится к 1,
Рассмотрим модель наблюдений последовательности подстановок Fi, F2,..., полученных независимо друг от друга одним фиксированным способом из двух, но запросов всего два (двублочный текст), и эти пары входных блоков выбираются из X с ограничением на их разность. При таких условиях наблюдений построим критерий Вальда проверки гипотез по парам входная/выходная разность
AXt = Xit 0 X2t, AYt = Yit 0 Y2t, t ^ 1,
с вероятностями ошибок, близкими к заданным значениям a,ß.
Далее ej (ej) обозначает j-й вектор-строку (столбец) стандартного базиса, j ^ 0, Через а и aj обозначаем вектор-строку и вектор-столбец (размерности, определяемой контекстом), все компоненты которых равны константе a a Е {0,1},
Теорема 1. Если в модели Люби —Ракофф (1) и (2) начальная пара блоков (X0, X0*) выбирается независимо от f1,..., fR, то раундовые разпости AXr = Xr 0 0 Xr*, 0 ^ r ^ R, образуют однородную цепь Маркова с матрицей переходных вероятностей разностей (МПВР) за 1 шаг, равной
P(M) = M
fpi Q2 . . QM^
P2 Q2 . . QM
[Pm Q2 . . QM J
где Ру = Ме^ву, Qk = е^ 1 — клетки ранга 1 размера М для всех 1 ^ ] ^ М, 2 ^ к ^ М, всего М + (М — 1) = 2М — 1 видов клеток,
/2 0 0 0\ 0 0 11 0 2 0 0 \0 0 1 1/
Из теоремы о блочном умножении [3, с, 21] следует, что все степени МПВР сохраняют такое разбиение на М2 клеток размера М, С помощью этой теоремы описаны все клетки целочисленной матрицы
Например, P(2) = ^
B(M) = (MP(M))2
(Bii Bi2 B2i B22
B
2i
B
i2
Bi2 Bi2
B
22
где диагональные клетки Бц = Мdiag(vM), vM = (М, 1,..., 1) и Б21 = Мdiag(vo), vo = (0,1,..., 1) составляют левую горизонтальную полосу, а остальные клетки Б12 = = 41, Б22 = уМ 1 одноранговые.
Аналогично, как суммы произведений клеток матрицы Б, найдены пять видов клеток Су матрицы С(М) = (МР(М))4 = Б(М)2, Установлено, что строки матрицы, полученной из С(М) удалением верхней строки и левого столбца, могут быть разбиты
на два типа по своему составу, т, е, частотам значении элементов строки: если
(Дх0 = 0 Л Дж1 = 0) V (Дх0 = 0 Л Дж1 = 0) (3)
(это строки верхней полосы, а также все строки, кроме верхних, из остальных горизонтальных полос), то имеем
Значение 2М2 — М М2 — м М2 + 1
Частота 1 М — 2 М2 — М
если
Дхо = 0, Дх1 = 0, (4)
(это верхние строки всех горизонтальных полос, кроме верхней), то имеем
Значение М2 2М2 — М М 2 — М
Частота М — 1 М М 2 — 2М
Отсюда, в частности, следует, что матрицы переходных вероятностей ненулевых разностей за четыре раунда положительны и такие шифры дважды транзитивны.
При гипотезе Н1 выходные разности имеют равномерное распределение па множестве X' = Ж,^ \ {0} ненулевых блоков. Обозначим эти вероятности через р1(Ду) = = (М2 — 1)-1. Через р2(Ду) обозначим вероятности распределения 4-раундовой выходной разности при фиксированной входной разности Дх и рассмотрим дивергенции Клльбака между этими распределениями: К (г : 3 — г) = ^ рДДу) 1п -Р-^-дУ^т,
Дуех' Рз-- (ДУ)
г = 1, 2. Вероятностный смысл этих величин следующий: математическое ожидание слагаемого статистики логарифма отношения правдоподобий равно К(2:1) > 0 при гипотезе Н2 и —К(1 : 2) < 0 при гипотезе Н1.
Теорема 2. При входной разности Дх = (Дх0, Дх1) € X' и М ^ то для дивергенций Кульбака между распределениями р2 и р1 выполнено: 1) при условии (3)
ч 2М2 — М (2М2 — М )(М2 — 1) , ,М2 — М (М2 — М )(М2 — 1)
К(2 : 1) =-—-1п ^--+ (М — 2)——— 1п ^--+
М4 М4 1 ; М4 М4
/ 2 2 + 1 (М2 + 1)(М2 — 1) , , 2
+ (М2 — М)---- (21п2 — 1)М-2,
V М4 М4 1 ;
К( \ - 1 1 м4 М — 2 М4
К(1 : 2) = М2 — 1 (2м2-м)(м2-1) + М2 — 1 1п (М2 — М)(М2 — 1) +
М2 — М М4 2
+-о-1п 7—Й-г - (1 — 1п 2)М-2;
М2 — 1 (М4 — 1) 1 ; '
2) при условии (4)
К(2 = Ц = (М — 1)М ^ 1 + М^ Ь(2М — ММ2 - 1} +
+(М2 — М)^ Ь(М — ^ — 1} - (21п 2 — 1)М
1 М2 1 М3
К: 2) = <М — М2—Г1п 1 + ММ2—Г 1п (2М — 1)(М2 — 1) +
1 М3
+ (М2 — М)—-1п--^-- - (1 — 1п2)М-1.
1 'М2 — 1 (М — 1)(М2 — 1) 1 ;
М
ответетвующие значения в п, 2, Поэтому атаки различения будут значительно эффективнее при выборе типа (4) входных разностей.
Проведём статистические эксперименты (атаки различения на четыре раунда шифра Люби — Ракофф) по входным разностям (4) второго типа, используя критерии Вальда (как более экономичные в смысле объёма материала) для проверки следующих гипотез о последовательности случайных независимых одинаково распределённых подстановок ^1, ^2,... на множестве Z2m:
Н : ^ выбраны равновероятно го множества всех подстановок,
(5)
Н2 : ^ — подстановки 4-раупдовой модели Люб и — Ракофф, £ ^ 1.
Для корректной работы критерия требуется независимость двублочных текстов (запросов с разностью второго типа между блоками), выбираемых для каждой подстановки, Модель независимых двублочных текстов введена в работе автора [4]. В этой модели проведены атаки различения, основанные на статистике отношения правдоподобий при фиксированной входной разности, на марковские модели шифрсистем ЯтаПРгеве^ с длиной блока до 28 бит.
Критерий обеспечивает вероятности ошибок первого и второго родов, близкие к а = = в = 0,1, при выборе таких границ А, Б, что [5, с, 150]
— 1п А = 1п Б = 1п —- = 1п9 = 2,197.
а
Среднее число испытаний (пар открытый/шифрованный двублочный текст) до при-
1 — а — 1
нятия решения при гипотезе Н близко к (1 — 2а) 1п-(К(г : 3 — г)) [5, с, 152], что
при больших М, согласно теореме 2, близко к ТДМ), г € {1, 2}, где
0 81П 9 0 81П 9
Т(М) = 0,8 '9 М = 5,72М, Т2(М) = 0 М = 4,55М. и ; 1 — 1п 2 > а ; 21п2 — 1 '
В таблице представлены результаты 20 атак различения гипотез (5) с расчётными значениями ошибок а = в = 0,1 при длине полу блока га бит: оценки Т и эмпирические значения Е^т числа т использованных критерием Вальда двублочных текстов при гипотезе Н^, эмпирические вероятности ошибок а^, Эмпирические вероятности ошибок, а также средние длины продолжительности экспериментов показывают хорошее соответствие теории и практики.
m Ti Eir cEi T2 E2T «2
6 366,6 436,5 0 291,2 348,8 0,05
7 733,2 631,6 0 582,4 696,7 0,1
8 1,4Е3 1,4 Е3 0,05 1,1 Е3 1,2 Е3 0,1
9 2,9Е3 3,7 Е3 0,1 2,3 Е3 2,7 Е3 0,05
10 5,8Е3 5,9 Е3 0 4,6 Е3 7,5 Е3 0,1
11 1,1 Е4 1,0 Е4 0 9,3 Е3 7,6 Е3 0,2
12 2,34 Е4 2,9 Е5 0,1 1,8 Е4 1,6 Е4 0,05
13 4,6Е4 5,8 Е4 0 3,7 Е4 4,9 Е4 0,05
14 9,3Е4 9,7 Е4 0,05 7,4 Е4 1,1 Е5 0,2
15 1,8Е5 2,1 Е5 0,2 1,4 Е5 1,6 Е5 0,1
16 3,7Е5 4,2 Е5 0 2,9 Е5 3,5 Е5 0,1
17 7,5Е5 7,2 Е5 0,05 5,9 Е5 6,3 Е5 0,1
18 1,5Е6 1,3 Е6 0,1 1,1 Е6 1,3 Е6 0,05
19 3,0Е6 3,4 Е6 0,05 2,3 Е6 1,7Е6 0,05
20 6,0Е6 6,3 Е6 0,1 4,7 Е6 4,4 Е6 0
21 1,2Е7 1,0 Е7 0,05 9,5 Е6 1,1 Е7 0,1
22 2,4Е7 2,6 Е7 0,15 1,9 Е7 2,1 Е7 0,1
ЛИТЕРАТУРА
1. Luby М. and Rackoff С. How to construct pseudorandom permutations from pseudorandom functions 11 SIAM J. Comput. 1988. V. 17. P. 373-386.
2. Nachef V., Patarin J., and Volte E. Feistel Ciphers: Security Proofs and Crvptanalvsis. Springer, 2017.
3. Ланкастер П. Теория матриц. M.: Наука, 1978.
4. Денисов О. В. Атаки различения на блочные шифрсистемы по разностям двублочных текстов // Прикладная дискретная математика. 2020. №48. С. 43-62.
5. Ивченко Г. И., Медведев Ю. И. Математическая статистика. М.: Высшая школа, 1984.
УДК 004.8 Б01 10.17223/2226308Х/16/10
ОБРАЩЕНИЕ 29-ШАГОВОЙ ФУНКЦИИ СЖАТИЯ МБ5 ПРИ ПОМОЩИ АЛГОРИТМОВ РЕШЕНИЯ ПРОБЛЕМЫ БУЛЕВОЙ ВЫПОЛНИМОСТИ1
О. С. Заикин
Криптографическая хеш-функция MD5 предложена в 1992 г. Ключевым компонентом MD5 является 64-шаговая функция сжатия. До сих пор не представляется возможным обратить функцию сжатия MD5 за реальное время, поэтому зачастую в данном контексте анализируются версии с сокращённым количеством шагов. В 2007 г. с помощью алгоритмов решения проблемы булевой выполнимости (SAT) была обращена 26-шаговая функции сжатия MD5. В 2012 г. с помощью SAT были обращены 27- и 28-шаговые версии. В настоящем исследовании предлагается подход к формированию 32 промежуточных задач обращения между парой последовательных шагов функции сжатия MD5. С помощью этого подхода построены промежуточные задачи обращения между 28 и 29 шагами. Несколько простых задач использованы для параметризации современного SAT-решателя, в результате чего впервые обращена 29-шаговая функция сжатия MD5.
Ключевые слова: криптографическая хеш-функция, MD5, алгебраический криптоанализ, логический криптоанализ, проблема булевой вы,полним,ост,и.
1Работа выполнена за счёт субсидии Минобрнауки России в рамках проекта № 121041300065-9.