72
Прикладная дискретная математика. Приложение
УДК 519.7 DOI 10.17223/2226308X/11/22
ШИФР NSUPRESENT: УСТОЙЧИВОСТЬ К ЛИНЕЙНОМУ И ДИФФЕРЕНЦИАЛЬНОМУ КРИПТОАНАЛИЗАМ1
Е. А. Манылов
Рассмотрен шифр NSUPresent — модификация известного легковесного блочного шифра Present. Исследуется криптографическая стойкость данного шифра к линейному и дифференциальному криптоанализам. Получены теоретические оценки на дифференциальную и линейную характеристики шифра. Показано, что достаточно пяти раундов шифра NSUPresent, чтобы обеспечить устойчивость шифра к линейному и дифференциальному криптоанализам.
Ключевые слова: легковесный блочный шифр, SP-сеть, линейный криптоанализ, дифференциальный криптоанализ.
Пусть Fn — множество всех двоичных векторов длины п. Весом Хэмминга wt(x) двоичного вектора х Е Fn называется количество единиц, содержащихся в х. Векторной булевой функцией называется функция вида F : Fn ^ F^. Функцию F также записывают как F = (fi,..., fm), где fi,...,fm — координатные булевы функции от п переменных, а функции (b, F) = bifi ф b2f2 Ф ... Ф bmfm называются компонентными, где b Е Fm. Спектром Уолша — Адамара векторной функции F называется набор коэффициентов W(b,F)(y) = (—1)^b,FФункцию F : Fn ^ Fn можно рас-
xeFg
сматривать как функцию над конечным полем F2n и однозначно представлять в виде
2n-i
полинома степени не выше 2n — 1: F(x) = 6гхг, где 6г Е F2n.
i=0
SP-сеть (подстановочно-перестановочная сеть) — одна из моделей построения итеративных блочных шифров — состоит из S-блоков, замещающих набор входных битов на соответствующий набор выходных битов, и P-блоков, перемешивающих биты. S-блок размера п — это отображение F : Fn ^ Fn (как правило, взаимно однозначное).
Рассмотрим модификацию легковесного блочного шифра Present [1], в основе которого лежит SP-сеть (длина блока 64 бит, 31 раунд, слой S-блоков состоит из 16 одинаковых S-блоков размера 4). В отличие от Present, слой S-блоков NSUPresent состоит из четырёх S-блоков размера 16. Будем использовать перемешивающий слой шифра Present. Цель данной работы — найти минимальное количество раундов шифра NSUPresent, необходимое для криптографической стойкости шифра к линейному и дифференциальному криптоанализам.
Введем для вектора а = (а1,..., an) Е Fn следующие множества:
gri(а) = {[(г — 1)/4] + 1 : аг = 1}, gro(а) = {i mod 4 : аг = 1}.
Если а — входной вектор S-блока, то множество gri (а) задаёт активные входные группы S-блока, если выходной, то множество grO (а) задаёт активные выходные группы S-блока. Структура P-слоя такова, что каждая выходная группа S-блока связана ровно с одной входной группой S-блока следующего раунда.
Будем использовать S-блок F : F1,6 ^ F26 с дополнительными условиями:
1) для любой ненулевой входной разности 51 Е F1,6 и любой ненулевой выходной разности 8O Е Fi6 выполняется |{х Е F26 : F(х) ф F(х ф 81) = 8O}| ^ 4;
1 Работа поддержана грантами РФФИ, проекты №18-31-00479 и 18-07-01394.
Математические методы криптографии
73
2) для любой ненулевой входной разности ô1 G F16, такой, что \gri(ô1 )\ = 1, выходная разность ô0 = F(x) ф F(x ф ô1 ) такова, что \gr0(ô0)\ ^ 2;
3) для любого a G FJ>6 и всех ненулевых b G FJ>6 выполняется \W{b,F>(a)\ ^ 29;
4) для всех a G FJ>6 и всех b G FJ>6, таких, что \gri(a)\ = 1 и \gr0(b)\ = 1, выполняется \W{b,F>(a)\ ^ 28.
Первое и второе условия определяют дифференциальную характеристику S-блока и позволяют увеличить количество активных S-блоков при проведении дифференциального криптоанализа; третье и четвёртое определяют линейную характеристику S-блока.
Отметим, что функция, удовлетворяющая данным условиям, существует, например функция обращения элемента в поле, используемая в шифре AES.
Утверждение 1. Существуют коэффициенты a,b G F2i6, такие, что функция обращения F (x) = ax-1 + b удовлетворяет условиям 1-4.
Основа линейного криптоанализа [2] —поиск линейного приближения, которое содержит биты открытого текста и шифртекста и имеет наибольшую вероятность выполнения. Линейная характеристика шифра — вероятность выполнения найденного линейного приближения.
Теорема 1. Линейная характеристика для пяти раундов шифра NSUPresent
р._35
меньше чем 2 35.
В основе дифференциального криптоанализа [3] лежит анализ пар открытых текстов (P, P') и соответствующих им пар шифртекстов (C,C), между которыми существуют определённые разности, или дифференциалы а = P ф P', ß = C ф C. Дифференциальная характеристика шифра — максимальная вероятность выполнения пары (a0,ß0) из всевозможных пар (a,ß).
Теорема 2. Дифференциальная характеристика для пяти раундов шифра NSU-Present меньше чем 2-84.
Для теорем 1 и 2 получены аналитические доказательства, в которых использованы свойства функции обращения и условия, накладываемые на S-блок.
Следствие 1. Для проведения успешной атаки с помощью линейного криптоанализа потребуется более 270 пар открытых текстов / шифртекстов, а для дифференциального криптоанализа — более 284 пар текстов.
Так как на вход шифра подаются блоки длины 64, то максимально возможное количество пар открытый текст / шифртекст равно 264. Следовательно, для проведения данных атак таких пар недостаточно.
ЛИТЕРАТУРА
1. BogdanovA., KnudsenL.R., Leander G., et al. PRESENT: An ultra-lightweight block cipher jj CHES 2007. LNCS. 2007. V.4727. P. 450-466.
2. Matsui M. Linear cryptanalysis method for DES cipher jj Advances in Cryptology — EUROCRYPT'93. Berlin: Springer, 1994. P. 386-397.
3. Biham E. and Shamir A. Differential cryptanalysis of DES-like cryptosystems jj J. Cryptology. 1991. V.4. No. 1. P. 3-72.