Следствие 3. В условиях теоремы 1 существует n0, такое, что для любых £1 , £2 > 0, n > По верны неравенства
(1 - £1) exp2 (m2n - T (n,m,k) + (m - 1) N (n, 1,k)) < | R (m, n, k) | <
< (1 + £2) exp2 (m2n - T (n, m, k) + (m - 2) N (n, m, k) + N (n, 1, k)).
Данные оценки уточняют или улучшают результаты работ [1, 4] в связи с [8].
ЛИТЕРАТУРА
1. Панков К. Н. Асимптотические оценки для чисел двоичных отображений с заданными криптографическими свойствами // Математические вопросы криптографии. 2014. №4. С. 73-97.
2. Логачев О. А., Сальников А. А., Смышляев С. В., Ященко В. В. Булевы функции в теории кодирования и криптологии. М.: МЦНМО, 2012.
3. Carlet C. Vectorial Boolean functions for cryptography // Boolean Models and Methods in Mathematics, Computer Science, and Engineering. Encyclopedia of Mathematics and its Applications. V. 134. N.Y.: Cambridge University Press, 2010. P. 398-472.
4. Денисов О. В. Локальная предельная теорема для распределения части спектра случайной двоичной функции // Дискретная математика. 2000. №1. С. 82-95.
5. Словарь криптографических терминов. М.: МЦНМО, 2006.
6. Сачков В. Н. Курс комбинаторного анализа. Ижевск: НИЦ «Регулярная и хаотическая динамика», 2013.
7. Панков К. Н. Оценки скорости сходимости в предельных теоремах для совместных распределений части характеристик случайных двоичных отображений // Прикладная дискретная математика. 2012. №4. С. 14-30.
8. Canfield E. R., Gao Z., Greenhill C., et al. Asymptotic enumeration of correlation-immune Boolean functions // Cryptography and Communications. 2010. No. 1. P. 111-126.
УДК 519.7 DOI 10.17223/2226308X/10/21
КОМПОНЕНТНАЯ АЛГЕБРАИЧЕСКАЯ ИММУННОСТЬ S-БЛОКОВ, ИСПОЛЬЗУЮЩИХСЯ В НЕКОТОРЫХ БЛОЧНЫХ ШИФРАХ
Д. П. Покрасенко
Установлено точное значение компонентной алгебраической иммунности S-бло-ков, которые используются в работе известных блочных шифров. Получено, что такие шифры, как DES, CAST-256, KASAMI, PRESENT не обладают максимальной иммунностью и потенциально являются менее стойкими к алгебраическому криптоанализу.
Ключевые слова: векторная булева функция, компонентная алгебраическая иммунность, S-блоки, DES, AES, PRESENT, KUZNYECHIK.
Известно, что любой шифр можно представить в виде системы булевых уравнений, которые описывают его работу. Данная система строится на основе известного алгоритма шифрования и позволяет связать между собой биты открытого текста, ключа и шифротекста. Решение систем булевых уравнений в общем случае является NP-трудной задачей. Существуют различные алгоритмы решения таких систем, но большинство из них решают только линейные системы либо нелинейные при достаточно низком значении степени уравнений, трудоёмкость нахождения решения в таком случае слишком велика. Подробнее с методами решения систем булевых уравнений можно ознакомиться в [1].
50
Прикладная дискретная математика. Приложение
В 2003 г. N. Courtois и W. Meier [2] предложили новый метод криптоанализа шифров, который был назван алгебраическим криптоанализом. Основная его идея заключается в процессе линеаризации булевых систем уравнений и сведении их к уравнениям меньшей степени, решение которых — менее сложная задача. Появление нового вида атаки привело к необходимости исследования свойств булевых функций, наличие которых позволяет затруднить применение данного критоанализа.
В 2004 г. W. Meier, E. Pasalic и C. Carlet [3] ввели понятие алгебраической иммунности AI(f ) для булевых функций. В частности, было установлено, что высокая алгебраическая иммунность позволяет противостоять алгебраическим атакам. Алгебраической иммуностью AI(f ) булевой функции f : Z^ ^ Z2 называется минимальное число d, такое, что существует булева функция g степени d, не тождественно равная нулю, для которой fg = 0 или (f ф 1)g = 0.
Данное понятие различными способами обобщено на векторный случай. Одним из наиболее естественных обобщений является понятие компонентной алгебраической иммунности, введённое C. Carlet [4]. Компонентной алгебраической иммунностью AIcomp(F) векторной булевой функции F : Z^ ^ Zm называется минимальная алгебраическая иммунность компонентных функций b • F (b E Zm, b = 0), т. е. Alcomp(F) = min{AI(b • F) : b G Z™ b = 0}, где b • F = bf ф ... ф bmfm.
Наличие высокой компонентной алгебраической иммунности способствует наилучшему противостоянию различным методам алгебраических атак. В [5] установлено, что в случае нечётного n если векторная булева функция обладает максимальной компонентной алгебраической иммунностью, то она является сбалансированной, и построены примеры функций с максимальной компонентной иммунностью для малых значений n,m.
Основу блочных шифров составляют S-блоки, которые и являются векторными булевыми функциями. В данной работе проведён анализ компонентной алгебраической иммунности S-блоков, использующихся в различных блочных шифрах.
Ниже приведена таблица, в которой указан год создания шифра, его название, размер S-блока, значение компонентной алгебраической иммунности и максимально возможное значение компонентной алгебраической иммунности при данных параметрах n,m. Будем обозначать через n ^ m векторную булеву функцию (S-блок), действующий из Zn в Zm.
Год Шифр Размер блока AIcomp(F ) Max
1977 DES 6 ^ 4 2 3
1989 ГОСТ 28147-89 4 ^ 4 2 2
1996 CAST-256 8 ^ 32 2 4
1997 SQUARE 8 ^ 8 2 4
1998 CRYPTON 8 ^ 8 4 4
1998 AES 8 ^ 8 4 4
1998 KASAMI 7 ^ 7 3 4
2006 SM4 8 ^ 8 4 4
2007 PRESENT 4 ^ 4 1 2
2013 FIDES 6 ^ 6 3 3
2015 KUZNYECHIK 8 ^ 8 4 4
Видно, что далеко не все шифры обладают максимальной компонентной алгебраической иммунностью. Такие шифры потенциально являются менее стойкими к алгебраическому криптоанализу.
ЛИТЕРАТУРА
1. Агибалов Г. П. Методы решения систем полиномиальных уравнений над конечным полем // Вестник Томского государственного университета. Приложение. 2006. № 17. С. 4-9.
2. Courtois N. and Meier W. Algebraic attacks on stream ciphers with linear feedback // Eurocrypt 2003. LNCS. 2003. V. 2656. P. 345-359.
3. Meier W., Pasalic E., and Carlet C. Algebraic attacks and decomposition of Boolean functions // Eurocrypt 2004. LNCS. 2004. V.3027. P. 474-491.
4. Carlet C. On the algebraic immunities and higher order nonlinearities of vectorial Boolean functions // Enhancing Cryptographic Primitives with Techniques from Error Correcting Codes. Amsterdam: IOS Press, 2009. P. 104-116.
5. Покрасенко Д. П. О максимальной компонентной алгебраической иммунности векторных булевых функций // Дискретный анализ и исследование операций. 2016. Т. 23. № 2. С. 88-99.
УДК 512.13 Б01 10.17223/2226308Х/10/22
СПОСОБ ПРЕДСТАВЛЕНИЯ ПОДСТАНОВОК £16 С ПОМОЩЬЮ АЛГЕБРАИЧЕСКИХ ПОРОГОВЫХ ФУНКЦИЙ
Д. А. Сошин
Предлагается алгоритм представления подстановок на множестве элементов {0,1,..., 15} с помощью линейных комбинаций алгебраических пороговых функций. Получаемые задания могут быть использованы для эффективной реализации на перспективной оптической элементной базе нелинейных преобразований узлов переработки информации.
Ключевые слова: алгебраические пороговые функции, геометрические типы, подстановки, блочные шифры.
Определение 1. Функцию к-значной логики f : П^ ^ Пк назовём алгебраической пороговой (АПФ), если существуют целочисленные наборы с = (со, с1,..., сп), Ь = (60,61,..., Ьд) и натуральный модуль т, такие, что для любого а £ Пд выполняется
f (Х1,Х2, . . . ,Хп) = а ^ Ьа ^ Гт(Со + С1Х1 + С2Ж2 + ... + сгажга) < Ьа+1,
где гт(х) —функция взятия остатка числа х по модулю т, гт(х) € {0,1,... , т — 1}; Пк = {0,1,..., к — 1}. Тройку (с, Ь, т) будем называть структурой функции f.
В случае двузначной логики АПФ будем задавать следующим образом:
f =1 ^ Гт(со + С1Х1 + С2Х2 +-----+ сгахга) ^ Ь
и писать f : ((с0, с1, с2,..., сп); Ь; т).
В [1] исследован вопрос реализации булевых функций трёх переменных функциями из класса АПФ. Для этого доказана замкнутость данного класса относительно операций перестановки переменных, инвертирования переменных и инвертирования функции (геометрическая замкнутость). Геометрическим типом функции f назовём класс эквивалентности относительно указанных преобразований. Для булевых функций от трёх переменных доказано, что только геометрический тип с представителем f * (х1, х2, х3) = х1х3 V х2Х3 не задаётся через АПФ. Для булевых функций от четырёх