Процедура DES-6 ГОСТ-6 ГОСТ-8 PRESENT-6
Standard 9,99 • 107 7,86 • 108 2,30 • 1026 8,72 • 1014
Middle 7,28 • 107 7,15 • 108 3,24 • 1024 2,16 • 1014
Комментарии. На первый взгляд, процедура кодирования обратных преобразований не даёт существенного выигрыша (за исключением, пожалуй, 8-раундовой версии шифра ГОСТ 28147-89, где выигрыш составил около 100 раз). Тем не менее описанный метод демонстрирует весьма интересный феномен. Множества угадываемых бит (guessed bits, [5]), которые построены для кодировки типа Middle, содержат не только переменные, кодирующие биты неизвестного секретного ключа, но и ряд вспомогательных переменных, вводимых при переходе от формулы (3) к КНФ. Авторам не известны другие атаки из класса «угадывай и определяй», для которых наблюдается данное свойство. В заключение отметим, что описанная атака на 6-раундовый вариант шифра PRESENT превосходит по эффективности лучшую из известных нам атак данного типа [11].
ЛИТЕРАТУРА
1. Biere A., Heule M., van Maaren H., and Walsh T. (eds.) Handbook of Satisfiability, Frontiers in Artificial Intelligence and Applications. V. 185. IOS Press, 2009.
2. Отпущенников ИВ., Семенов А. А. Технология трансляции комбинаторных проблем в булевы уравнения // Прикладная дискретная математика. 2011. №1. С. 96-115.
3. Otpuschennikov I., Semenov A., Gribanova I., et al. Encoding cryptographic functions to SAT using Transalg system // Frontiers in Artificial Intelligence and Applications. 2016. V. 285. P. 1594-1595.
4. Massacci F. and Marraro L. Logical cryptanalysis as a SAT problem //J. Automated Reasoning. 2000. V. 24(1/2). P. 165-203.
5. Bard G. V. Algebraic Cryptanalysis. Springer, 2009.
6. Courtois N. T., Gawinecki J. A, and Song G. Contradiction immunity and guess-then-determine attacks on GOST // Tatra Mountains Math. Publ. 2012. V.53(1). P. 2-13.
7. Semenov A., Zaikin O., Otpuschennikov I., et al. On cryptographic attacks using backdoors for SAT // Proc. AAAI Conf. 2018. P. 6641-6648.
8. Semenov A. and Zaikin O. Algorithm for finding partitionings of hard variants of Boolean satisfiability problem with application to inversion of some cryptographic functions // SpringerPlus. 2016. V.5(1). P. 1-16.
9. Заикин О. С., Семенов А. А. Применение метода Монте-Карло к прогнозированию параллельного времени решения проблемы булевой выполнимости // Вычислительные методы и программирование. 2014. Т. 15. С. 22-35.
10. Kochemazov S. and Zaikin O. ALIAS: A modular tool for finding backdoors for SAT // Proc. SAT Conf. 2018. (to be published)
11. Yeo S., Li Z., Khoo K., and Low Y. An enhanced binary characteristic set algorithm and its applications to algebraic cryptanalysis // LNCS. 2017. V. 10355. P. 518-536.
УДК 519.7 DOI 10.17223/2226308X/11/25
О НЕАБЕЛЕВЫХ ГРУППАХ НАЛОЖЕНИЯ КЛЮЧА И МАРКОВОСТИ АЛГОРИТМОВ БЛОЧНОГО ШИФРОВАНИЯ
Б. А. Погорелов, М. А. Пудовкина
Для абелевой группы наложения ключа (X, *) и разбиения W = {Wo,..., Wr-1} множества X ранее авторами рассматривались *w-марковские преобразования и
80
Прикладная дискретная математика. Приложение
*-^-марковские алгоритмы, частным случаем которых являются *-марковские алгоритмы блочного шифрования, представленные на конференции EUROCRYPT в 1991 г. В данной работе для неабелевой группы (X, *) описываются свойства *-^-марковских алгоритмов и преобразований. Получены ограничения на строения групп (X, *), (дк | к € X), а также на блоки Шо,...,Шг_1, вытекающие из условия сохранения частичной раундовой функцией дк : X м X нетривиального разбиения W для каждого к € X. Для всех неабелевых групп порядка 2т, имеющих циклическую подгруппу индекса два, приведены примеры -марковских подстановок.
Ключевые слова: марковский алгоритм блочного шифрования, гомоморфизм, группа диэдра, обобщённая группа кватернионов, матрица разностей переходов, импримитивная группа.
Пусть (X, *) —произвольная группа на множестве X с бинарной операцией * и единичным элементом е; аь = аЬ = Ь(а) —образ элемента а € X при действии на него подстановкой Ь € Б(X). Рассмотрим /-раундовый алгоритм блочного шифрования Сг(*,Ь), у которого раундовая функция д : X2 м X, определяемая подстановкой Ь € Б (X), задана условием
Раундовой функции д соответствуют частичные функции дк : X м X, где д(ж, к) = = дк (ж) для каждых (ж, к) € X2. Заметим, что к данному классу относятся ХБЬ-алгоритмы блочного шифрования, у которых Ь = вЛ, где в — преобразование слоя перемешивания (в-боксы); Л — преобразование линейного слоя. Неабелевость группы наложения ключа позволяет в некоторых случаях повышать стойкость алгоритмов блочного шифрования относительно линейного и разностного методов.
Пусть К — множество всех раундовых ключей итерационного алгоритма блочного шифрования (в данной работе К = X). Для в,е € X положим
Зафиксируем произвольное нетривиальное разбиение W = {Ш0,... , Шг_1} множества X, е € Ш0. Положим
В [1] введено понятие *-марковского алгоритма блочного шифрования, а в [2] — *^-марковского алгоритма блочного шифрования и -марковского преобразования.
Определение 1. Преобразование Ь € Б(X) называется *w-марковским для разбиения W = {Ш0,..., Шг-1}, IX| ^ г ^ 2, если грв,Шс (Ь) = а^,с для каждых с) € € {0,..., г — 1}2, в € и некоторых а^,с, 0 ^ а^,с ^ 1.
Условие *-^-марковости алгоритма С г(*,Ь) равносильно *w-марковости подстановки Ь.
Рассмотрим преобразование ак € Б (X), заданное условием ак : ж м- ж * к для каждого к € X, и группу X * = (ак |к € X). Пусть р : X м Б (X) — правое регулярное представление группы (X, *). Очевидно, что р^) = X* и р(к) = ак для каждого к € X; дк = акЬ для каждого к € X.
д : (ж, к) м (ж * к)ь для всех (ж, к) € X2.
1
Рв№ (Ь)= Е Рв,в' (Ь), в € X, с €{0,...,г — 1}.
Будем говорить, что раундовая функция g сохраняет разбиение W справа, если Wgk е W для всех (W, k) е W х X.
Получены ограничения на группы (X, *), G = (b,X*), а также на блоки Wo,...,Wr-1, вытекающие из условия сохранения раундовой функцией нетривиального разбиения W. Доказано, что W — система импримитивности группы G. Кроме того, показано, что (Wo, *) —подгруппа группы (X, *), причём Wj — j-й правый смежный класс группы (X, *) по (W0, *) для j = 0,... , r — 1. Из импримитивности группы G следуют включения
b е IGw, (gk|k е X) ^ IGw,
где IGw — максимальная подгруппа группы S(X), сохраняющая разбиение W.
Если группа G = (b, X*) импримитивна с системой импримитивности W, то существует естественный гомоморфизм : G ^ S({0,... , r — 1}), 1 = (e). Доказано, что если (Wo, *) нормальна в (X, *) ((Wo, *) < (X, *) ), W — множество всех смежных классов группы (X, *) по (Wo, *), то условие *w-марковости алгоритма Q(*,b) эквивалентно существованию у него гомоморфизма, задаваемого отображением <^w.
Для криптографических приложений представляют интерес группы порядка 2m. В [3, теорема 12.5.1] описаны все неабелевы группы порядка 2m, обладающие циклической подгруппой индекса два. Таких групп всего четыре, включая группу диэдра и обобщённую группу кватернионов. Для всех четырёх групп описаны *w-марковские подстановки из S(X) относительно разбиения W = {Wo,... , Wr-1}, блоками которого являются все правые смежные классы группы (X, *) по подгруппе (Wo, *), но (Wo, *) ^ (X, *).
ЛИТЕРАТУРА
1. Lai X., Massey J. L., and Murphy S. Markov ciphers and differential cryptanalysis // EUROCRYPT 1991. LNCS. 1991. V. 547. P. 17-38.
2. Погорелов Б. А., Пудовкина М. А. Разбиения на биграммах и марковость алгоритмов блочного шифрования // Математические вопросы криптографии. 2017. Т. 8. №1. С. 107142.
3. Холл М. Теория групп. М.: ИЛ, 1962. 468с.
УДК 519.7 DOI 10.17223/2226308X/11/26
АТАКИ ИЗ КЛАССА «УГАДЫВАЙ И ОПРЕДЕЛЯЙ» И АВТОМАТИЧЕСКИЕ СПОСОБЫ ИХ ПОСТРОЕНИЯ1
А. А. Семёнов
Представлен краткий обзор подходов к построению криптографических атак, относящихся к классу «угадывай и определяй». Основной акцент сделан на относительно недавних работах, в которых описаны автоматические способы построения таких атак с ипользованием алгоритмов решения проблемы булевой выполнимости (SAT). С этой целью задачи построения атак из рассматриваемого класса ставятся как задачи оптимизации на булевом гиперкубе специальных оценочных функций. Для решения последних используются метаэвристические алгоритмы, широко применяемые в дискретной оптимизации. В упомянутых работах введены два типа оценочных функций, которые можно рассматривать как конкретиза-
1 Работа выполнена при финансовой поддержке Российского научного фонда, проект № 16-11-10046.