ЛИТЕРАТУРА
1. Шеннон К. Теория связи в секретных системах // Работы по теории информации и кибернетике. М.: Наука, 1963. С. 333-402.
2. Алферов А. П., Зубов А. Ю., Кузьмин А. С., Черемушкин А. В. Основы криптографии. М.: Гелиос АРВ, 2001.
3. Зубов А. Ю. Совершенные шифры. М.: Гелиос АРВ, 2003.
4. Медведева Н. В., Титов С. С. Конструкции неэндоморфных совершенных шифров // Прикладная дискретная математика. Приложение. 2020. №13. С. 51-54.
5. Медведева Н. В., Титов С. С. К задаче описания минимальных по включению совершенных шифров // Прикладная дискретная математика. Приложение. 2021. №14. С. 91-95.
6. Зубов А. Ю. Почти совершенные шифры и коды аутентификации // Прикладная дискретная математика. 2011. №4(14). С. 28-33.
7. Зубов А. Ю. О понятии е-совершенного шифра // Прикладная дискретная математика. 2016. №3(33). С. 45-52.
УДК 519.7 DOI 10.17223/2226308X/15/14
ВЫЧИСЛЕНИЕ РАЗНОСТНЫХ ХАРАКТЕРИСТИК ДЛЯ СЛОЖЕНИЯ k ЧИСЕЛ ПО МОДУЛЮ 2п 1
А. С. Мокроусов
Рассматривается разностная характеристика xdp++ (a1,...,ak ^ а0), где а0, а1, ... ,ak £ Zn, которая определяет вероятность преобразования разностей а1,... ,ак в разность а0 (относительно побитового «исключающего или») функцией f (x1,..., xk) = x1 + ... + xk mod 2n. Данная величина используется при разностном криптоанализе криптографических примитивов, содержащих «исключающее или» и сложение по модулю 2п, например ARX-конструкций. Предложены аналитические выражения для матриц, используемых для вычисления xdp++. Кроме
того, рассмотрена разностная характеристика adp® (а, в ^ y), где а, в, Y S Zn
'k'
4 S Z2
определяющая вероятность преобразования разностей а, в в разность y (относительно сложения по модулю 2n) функцией xфy, и получены все тройки разностей, вероятность которых больше 1/4.
Ключевые слова: ARX, исключающее или, сложение по модулю, разностный криптоанализ, разностные характеристики.
Одним из подходов к построению криптографических примитивов является комбинирование сложения по модулю 2n (Ш), побитовых операций (например, «исключающего или» — ф), битовых сдвигов (^), циклических сдвигов Это позволяет получить очень быстрые в программной реализации алгоритмы. Особый интерес представляют ARX-конструкции, использующие только операции Ш, ф и Примерами таких шифров являются FEAL [1], TEA [2], Salsa20 [3], Speck [4].
Хорошие шифры должны быть стойкими к различным видам криптоанализа, в частности к разностному криптоанализу [5]. Это один из основных статистических методов, основанный на исследовании того, в какие разности шифртекстов могут переходить разности открытых текстов. Важным шагом при реализации метода является вычисление разностных характеристик и их максимальных значений. Для базовых операций архитектуры ARX данные характеристики определяются следующим образом [6]:
1 Работа выполнена в рамках госзадания ИМ СО РАН (проект № FWNF-2022-0018).
хар+(а, в ^ 7) = | {х, у Е zn : (х 0 а) Ш (у 0 в) = 7 © (х И у)} |
аар®(а,в ^ 7) = 4п |{х,У Е К
п :
(х Ш а) 0 (у Ш в) = 7 Ш (х 0 у)}|.
п— 1
С вектором х = (х0,..., хп-1) € Ж? мы ассоциируем целое число ^ х^2г, тогда ж Ш а
г=0
означает сложение ассоциированных с х и а чисел по модулю 2п.
Недостатком АИХ-шифров является сложность вычисления разностных характеристик для композиций операций. Существует подход с использованием Б-функций [6], позволяющий вычислить разностные характеристики как произведение специальных матриц, построенных на основе рассматриваемого преобразования. Однако его алгоритмическое применение в большинстве случаев не позволяет получить аналитические выражения для данных матриц.
1. Матричный способ вычисления xdp+ (а1,..., ак ^ а0)
+
Рассмотрим функцию f (х1,... , ) = х1 +... + х^. Разностная характеристика xdp к для неё определяется следующим образом:
хф+ (а1,...,ак ^ а0) = ^
к к х1,..., хк € : Ш (хг 0 аг) = а0 0 Ш хг
г=1 г=1
Подход с использованием Б-функций подразумевает построение матриц на основе преобразования, через произведения которых можно подсчитать значения разностной характеристики [5]. Для характеристики xdp+ далее предлагаются явные выражения для вычисления всех ненулевых элементов матриц.
Обозначим через '^(х) вес Хэмминга вектора х. Определим N (а, Ь) = а + 2кЬ, где 0 ^ а, Ь < 2к. Мы будем использовать матрицы размера 4к2 х 4к2. Заметим, что 0 ^ N (а, Ь) < 4к2. Таким образом, через N (а, Ь) будем представлять номер строки или столбца матрицы с помощью пары чисел (а, Ь).
Зададим матрицы Ат размера 4к2 х 4к2 для всех т Е Ж/к+1 следующим образом. Рассмотрим любую четвёрку целых чисел х, у, х', у', таких, что 0 ^ х, у,х',у' < 2к. Пусть с = '1(т1,... ,тк),
Ах
х'
ау = у'-
х у
L2J
Ах + Ау — с 2
Ах — Ау + с 2
Тогда элемент матрицы Ат в N(х', у')-й строке и N(х,у)-м столбце определяется следующим образом:
1) 0, если выполнено одно из следующих условий:
— хотя бы одно из чисел Ах, Ау, а или Ь меньше нуля,
— х1 + у1 + с + т0 — нечётное,
— Ах + Ау + с — нечётное; 'к — с\ /с\
в противном случае.
Ь
а
Ь
С использованием матриц Ат, а также матриц Ь = (1 1 ... 1) размера 1 х 4к2 и С = (1 0 ... 0)Т размера 4к2 х 1 можно вычислить значения характеристики xdp+. Теорема 1. Пусть а0, а1,... , ак Е Жп. Тогда
xdp+ (а1,..., ак ^ а0) = ^ЬА^- ... Аад1 А^С, где ^ = (а0,..., ак) Е Ж^1.
Заметим, что элементы матрицы Ат зависят только от '1(т1,..., тк) и т0. Следствие 1. В последовательности матриц Ат, где т Е ^к+1, существует лишь 2(к + 1) различных матриц.
Переобозначим эти матрицы как А^(т1 ,...,тк),то. Алгоритм 1 позволяет вычислять все матрицы А0 0,... , Ак,0 и А01,... , Акд одновременно за 0(к6) операций.
Алгоритм 1. Алгоритм одновременного вычисления всех матриц А^-
1 " " 2
3
4
5
6
7
8 9
10
11 12
13
14
15
16
17
18
19
20 21 22
Для всех целых m, i, j, таких, что 0 ^ m ^ k, 0 ^ i ^ k, 0 ^ j ^ 1:
B™ —матрица размера 4k2 х 4k2, изначально заполненная нулями. Для всех целых x, y, таких, что 0 ^ x, y < 2k: c := xi 0 yi;
Bo0c[N(Lx/2J, Ly/2J)][N(x,y)] := 1. Для всех m от 1 до k:
Для всех x,y, x', y', таких, что 0 ^ x,y,x',y' < 2k: Для всех i от 0 до m — 1, j от 0 до 1: P := B^N(x',y')][N(x,y)]; B™ [N (x',y' )][N (x,y)] += P. Если x' + 1 < 2k и y' + 1 < 2k, то B™ [N (x' + 1,y' + 1)][N (x,y)] += P. Для всех j от 0 до 1:
Р := ВЦ;N(x',y')][N(х,у)];
э' := э 0 1. Если у' + 1 < 2к, то
Вт,/ [N (х',у' + 1)]^ (х,у)] += Р. Если х' + 1 < 2к, то
[N (х' + 1,y')][N (х,у)] += Р. Для всех г,э, таких, что 0 ^ г ^ к, 0 ^ э ^ 1:
:= Вгк.?.
Вернуть А^- для всех г, э, таких, что 0 ^ г ^ к, 0 ^ э ^ 1.
Отметим, что для разностной характеристики xdp+, которая является частным случаем xdp+ при к = 2, известен более простой способ вычисления без использования матриц [7]. Однако на случай xdp+ он, по всей видимости, не обобщается.
2. Максимумы adp®(а,в ^ 7)
Рассмотрим характеристику аdp®(a,в,7). В [8] изучены максимумы при фиксированном значении 7. В данной работе мы рассматриваем максимумы без фиксации 7, по всем возможным тройкам а, в, 7 Е Ж?. В результате обнаружено, что п максимальных значений данной характеристики имеют достаточно простые выражения.
Теорема 2. Пусть р1,..., рп — п различных максимальных значений аdp® (а, в, 7), где а, в, 7 Е Жп, Р1 > Р2 > ... > рп Тогда
1) p1 = 1 и pi = Pi-1 — ^ при 2 ^ i ^ и;
2) adp®(а,в,Y) = Pi ^^ тройка (а,в,7) получается из тройки (0, 2n-i, 2n-i) композицией следующих преобразований, сохраняющих значение adp® [8]:
а) перестановка элементов тройки;
б) (а,в,7) ^ (а 0 2n-1,e 0 2n-1,7);
в) (а,в,Т) ^ (±а, ±в, ±7), где ±а обозначает а или —а mod 2n. Замечание 1. Если adp® (а, в, y) = Pi для 1 ^ i ^ n из теоремы 2, то
adp®(а,в,Y) ^ 1/4.
Из теоремы 2 нетрудно получить количество разностей, на которых достигаются данные максимальные значения. Обозначим количество разностей (а,в^), а,в^ £ £ Zn, на которых достигается adp® (а, в, y) = Pi, как Ci. Следствие 2. Для Ci верны следующие утверждения:
- C = 4, C2 = 24;
— C3 = C4 = ... = Cn = 48.
ЛИТЕРАТУРА
1. Shimizu A. and Miyaguchi S. Fast data encipherment algorithm FEAL // LNCS. 1988. V. 304. P. 267-278.
2. Wheeler D. J. and Needham R. M. TEA, a tiny encryption algorithm // LNCS. 1995. V. 1008. P. 363-366.
3. Bernstein D. J. Salsa20 specification. eSTREAM Project algorithm description. http://www. ecrypt.eu.org/stream/salsa20pf.html. 2005.
4. Beaulieu R., Shors D, Smith J, et al. The SIMON and SPECK Families of Lightweight Block Ciphers. https://eprint.iacr.org/2013/404.
5. Biham E. and Shamir A. Differential cryptanalysis of DES-like cryptosystems //J. Cryptology. 1991. No. 4. P. 3-72.
6. Mouha N., Velichkov V., De Canniere C., and Preneel B. The differential analysis of S-func-tions // LNCS. 2011. V. 6544. P. 36-56.
7. Lipmaa H. and Moriai S. Efficient algorithms for computing differential properties of addition // LNCS. 2002. V. 2355. P. 336-350.
8. Mouha N., Kolomeec N., Akhtiamov D., et al. Maximums of the additive differential probability of Exclusive-Or // IACR Trans. Symmetric Cryptology. 2021. No. 2. P. 292-313.
УДК 519.7 DOI 10.17223/2226308X/15/15
НЕКОТОРЫЕ УСЛОВИЯ ПРИМЕНИМОСТИ ИНТЕГРАЛЬНОГО МЕТОДА К ЧЕТЫРЁМ РАУНДАМ AES-ПОДОБНЫХ АЛГОРИТМОВ
К. Н. Панков
Получен ряд необходимых и одно достаточное условие того, что к блочным алгоритмам, построенным аналогично алгоритму AES (например, SQUARE, Rijndael, Crypton) с уменьшенным до четырёх числом раундов может быть применён интегральный метод криптоанализа. Приведены данные экспериментов о применении интегрального метода к алгоритму Rijndael.
Ключевые слова: блочные алгоритмы, AES, SQUARE, Rijndael, Crypton, спектральные коэффициенты, интегральный метод.