Научная статья на тему 'О свойствах двух классов s-боксов размера 16x16'

О свойствах двух классов s-боксов размера 16x16 Текст научной статьи по специальности «Математика»

CC BY
205
28
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОДИФИЦИРОВАННЫЙ АДДИТИВНЫЙ ГЕНЕРАТОР / MODIFIED ADDITIVE GENERATOR / АЛГОРИТМ NASH / NASH BLOCK CIPHER / S-БОКС / S-BOX / МАКСИМАЛЬНАЯ РАЗНОСТНАЯ ХАРАКТЕРИСТИКА / MAXIMUM DIFFERENTIAL PROBABILITY / МАКСИМАЛЬНАЯ ЛИНЕЙНАЯ ХАРАКТЕРИСТИКА / MAXIMUM LINEAR PROBABILITY / СТЕПЕНЬ НЕЛИНЕЙНОСТИ / 16-BIT S-BOX / ALGORITHMIC IMPLEMENTATION OF S-BOXES / NONLINEAR ORDER

Аннотация научной статьи по математике, автор научной работы — Бобров Владимир Михайлович, Комиссаров Семён Михайлович

Нелинейные отображения векторного пространства Vn (s-боксы размера n x n) в симметричных алгоритмах блочного шифрования обычно реализуются в виде таблиц, содержащих множество всех образов. Для хранения одного такого массива требуется n2n бит памяти. Это вынуждает в алгоритмах блочного шифрования использовать s-боксы малых размеров (8x8 бит в алгоритме «Кузнечик», 4x4 в алгоритме «Магма», 6x4 в DES, 8x8 в AES). Предложена алгоритмическая реализация s-боксов 16x16 бит на основе функции модифицированного аддитивного генератора, а также на основе легковесного алгоритма блочного шифрования NASH. Лучшая максимальная разностная характеристика построенных s-боксов равна 18/216. Минимальная степень нелинейности среди координатных функций равна 15. Минимальная степень нелинейности среди всех нетривиальных линейных комбинаций координатных функций равна 14-15. Лучшая линейная характеристика равна 764/215.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

On the properties of substitution blocks on the base of a modified additive generator and on the base of the block cipher nash

Here, we present two algorithms for computing substitution blocks (S-boxes) of the size 16 x 16 bits. The first one is based on a modified additive generator, the second on the lightweight block cipher NASH. For both algorithms, we give the numerical values for some cryptographic properties of S-boxes produced by them, namely for differential probability, for linear probability, for nonlinearity order of coordinate functions and their linear combinations and compare them with the similar values related to S-boxes of some known block ciphers (AES, Kuznechik and others). Also, we show that the running time of these algorithms is 3.5-5 times more than the running time needed to compute the same S-boxes in the table form.

Текст научной работы на тему «О свойствах двух классов s-боксов размера 16x16»

5. Вычислительная сложность атак на ЛСБЕ

В таблице приведён порядок к(и) вычислительной сложности 0(к(и)) атаки, построенной по общей схеме на шифр и схему подписи в АСБЕ С (3) для каждого непустого подмножества ключевых параметров 3 С I. Здесь р(и) —некоторый полином от и.

J w {ni} {ni,Oi} w {01,02} {^1,02} {ni, 01,02} {П2 }

h(n) p(n) p(n) rm/2 Cn p(n) 2n pin/2 Cn 2 nçn/2 p(n)

J {^2,0l} {^1,^2} {^1,^2,01} {^2,02} {n2,01,02} {пЪ п2, 02 } {n1,n2,01,02}

h(n) pin/2 Cn n! n! p(n) 2n n! n!2n

ЛИТЕРАТУРА

1. Agibalov G. P. and Pankratova I. A. Asymmetric cryptosystems on Boolean functions // Прикладная дискретная математика. 2018. №40. С. 23-33.

2. Agibalov G. P. Substitution block ciphers with functional keys // Прикладная дискретная математика. 2017. №38. С. 57-65.

3. Агибалов Г. П. Методы решения систем полиномиальных уравнений над конечным полем // Вестник Томского государственного университета. Приложение. 2006. № 17. С. 4-9.

4. Агибалов Г. П. Логические уравнения в криптоанализе генераторов ключевого потока // Вестник Томского государственного университета. Приложение. 2003. №6. С. 31-41.

УДК 519.1 DOI 10.17223/2226308X/11/18

О СВОЙСТВАХ ДВУХ КЛАССОВ S-БОКСОВ РАЗМЕРА 16x16

В. М. Бобров, С. М. Комиссаров

Нелинейные отображения векторного пространства Vn (s-боксы размера n x n) в симметричных алгоритмах блочного шифрования обычно реализуются в виде таблиц, содержащих множество всех образов. Для хранения одного такого массива требуется n2n бит памяти. Это вынуждает в алгоритмах блочного шифрования использовать s-боксы малых размеров (8x8 бит в алгоритме «Кузнечик», 4x4 в алгоритме «Магма», 6x4 в DES, 8x8 в AES). Предложена алгоритмическая реализация s-боксов 16x16 бит на основе функции модифицированного аддитивного генератора, а также на основе легковесного алгоритма блочного шифрования NASH. Лучшая максимальная разностная характеристика построенных s-боксов равна 18/216. Минимальная степень нелинейности среди координатных функций равна 15. Минимальная степень нелинейности среди всех нетривиальных линейных комбинаций координатных функций равна 14-15. Лучшая линейная характеристика равна 764/215.

Ключевые слова: модифицированный аддитивный генератор, алгоритм NASH, s-бокс, максимальная разностная характеристика, максимальная линейная характеристика, степень нелинейности.

Обозначим Vn — n-мерное векторное пространство над полем GF(2). Пусть

У,П = Vn\{0}. Для некоторого вектора a G Vn определим линейную булеву функцию la : Vn ^ GF(2):

n— 1

la(x) = ф ai ' xi. i=0

Корреляцию двух булевых функций f1 и f2 обозначим как

c(fi, /2) = 21—n|{x : f1(x) = f2(x)}|- 1.

Исследованы следующие характеристики подстановок s : V16 ^ V16:

1) совершенность, или существенная зависимость каждой координатной функции от всех переменных;

2) минимальная степень нелинейности среди всех координатных функций;

3) максимальная разностная характеристика, вычисляемая по формуле

Ps = 2_n ■ max |{x e Vn : s(x 0 a) 0 s(x) = ß}|;

a,ßevnx

4) линейная характеристика, вычисляемая по формуле

6s = max |c(/«,/ß(s(x))|;

a,ßeVnx

5) минимальная степень нелинейности среди всех нетривиальных линейных комбинаций координатных функций, вычисляемая по формуле

As = min {deg(/a(s(x)))}.

«evnx

1. Построение s-бокса 16x16 на основе модифицированного аддитивного

генератора

Используем подход, аналогичный описанному в [1].

Обозначим: m = 216; X0,... , Xr-1 —знаки начального состояния модифицированного аддитивного генератора (МАГ) длины r (числа кольца вычетов Zm); b — биек-ция, определяющая двоичное 16-разрядное представление числа X по правилу: если X = 215x0 + ... + 2x14 + x15, то b(X) = X = (x0,..., x15) e V16; g — преобразование множества V16 (модификация аддитивного генератора); — преобразование регистра сдвига длины r над V16, реализуемое МАГ:

^(Xo, ... ,Xr-1) = (Xb ..., Xr—1, bg((Xo + XXr-1) mod m)).

Знаки гаммы Xj, генерируемые МАГ, образуются по закону рекурсии:

Xi = bgb-1((Xi-1 + Xj-r) mod m), i ^ r. (1)

При фиксации переменных X0 = z0, ..., Xr_2 = zr_2 реализуемая в соответствии с (1) функция Xr-1 ^ Xr-1+i при r — 1 ^ I ^ 1 есть подстановка множества V16 [1, теорема 1]. Для краткости обозначим эту подстановку s(l)(z,x), где

z = (z0, . . . , zr_2) e V16(r_1), x = О^ . . . , x15) = Xr_1.

Экспериментально исследованы разные функции модификации, построенные с использованием конкатенации узлов замены ГОСТ 28147-89 [2]. В качестве s-бокса 16x16 исследовалась подстановка s(l)(z,x). Экспериментальные расчёты показали, что наилучшее соотношение скорости реализации и криптографических характеристик достигается при следующей функции модификации:

g(Xo, . . . ,Х15) =

= (S(X1 0 X6 0 X11 0 Ж12,Ж2 0 X7 0 X8 0 X13,X 0 Ж4 0 Ж9 0 X14,Xo 0 Ж5 0 X10 0 X15), S(X1 0 X11 0 X12, X 0 X8 0 X13, Ж3 0 Ж9 0 X14, Xo 0 X10 0 X15), S(X1 0 X6 0 X12, X 0 Ж7 0 X13, Ж3 0 Ж4 0 X14, Xo 0 Ж5 0 X15), S(X1 0 X6 0 X11, X2 0 X7 0 X8, X3 0 X4 0 X9, Xo 0 Ж5 0 X10)),

где S — узел замен ГОСТ 28147-89, и значениях г = 4 и I = 3. При данной модификации перемешивающая матрица МАГ является 32-положительной, где 3 = = {16(г - 1),..., 16г - 1} [3].

Рассчитаны некоторые криптографические характеристики исследуемых подстановок. Для нескольких узлов замены посчитаны разностные характеристики при 1000 фиксаций г. Подстановки брались с одинаковыми фиксациями г для всех узлов замены. В табл. 1 и 2 приведены распределения разностных характеристик для первого и второго узла.

Таблица 1

Разностные характеристики, узел замен 1

Значение ps • 216 18 20 22 24 26 28 30 32 34 36 38 40 42

Число подстановок 22 146 249 234 157 102 45 22 12 4 3 2 2

Среднее значение ps • 216 24,232

Таблица 2 Разностные характеристики, узел замен 2

Значение ps • 216 18 20 22 24 26 28 30 32 34 38

Число подстановок 97 393 260 144 60 28 10 6 1 1

Среднее значение ps • 216 21,690

При всех исследованных функциях модификации и параметрах МАГ наименьшая полученная разностная характеристика равна 18/216. Среднее значение разностной характеристики ниже при использовании узлов замены с большей степенью нелинейности.

Для всех подстановок, использующих второй узел замен и имеющих разностную характеристику 18/216, рассчитана степень нелинейности As. Для всех исследованных подстановок As = 14 или 15.

Проверено 20 подстановок для узла замен 2 . Наименьшая полученная линейная характеристика 5s = 764/215, наибольшая — 950/215.

2. Построение s-бокса 16x16 на основе алгоритма NASH

Итеративный алгоритм блочного шифрования NASH [4] основан на принципах современной «легковесной криптографии». Его отличительной особенностью является использование в раундовой функции циклического сдвига на переменное число бит в зависимости от текущего блока и подключа, что позволяет, по словам авторов алгоритма, при сохранении уровня стойкости уменьшить количество раундов.

s-Бокс на основе алгоритма NASH представляет собой сеть Фейстеля, функция усложнения которой состоит из сложения по модулю 2n, где n — размер полублока (в данном случае 8), с некоторой константой и циклического сдвига на переменное число бит. Преобразование блока на i-м раунде можно представить следующими формулами:

Дг+1 = Li, ¿г+1 = ((¿г Ш C) ^ F(Li, Li Ш C)) 0 Ri,

где Li и Ri — левый и правый полублоки шифруемого блока на i-м цикле преобразования соответственно; C — константа; F — функция управления сдвигами, которая выбирает одно из четырёх значений величины циклического сдвига полублока; Ш —

сложение по модулю 2п. Для получения первого бита функция Г выбирает из полублока Ьг Ш С биты с номерами 2к — 1, к = 1,... ,п. Затем, интерпретируя полублок Ьг размера 2п бит как вектор значений булевой функции от п переменных, получает значение первого бита как значение этой функции на векторе бит из Ьг Ш С с номерами 21 — 1, 22 — 1,... , 2п — 1, где порядок следования бит — от старшего к младшему. Затем полублоки Ьг и Ьг Ш С меняются местами и второй бит выбирается аналогично. По значениям полученных битов выбирается одно из четырёх значений, на которое производится циклический сдвиг.

С помощью матрично-графового подхода [5, гл. 10] оценено, а затем экспериментально подтверждено, что для достижения совершенности произведения раундовых подстановок требуется четыре итерации.

При различном количестве итераций я-бокса, разных значениях циклического сдвига и переборе константы С от 0 до 255 проверены первые три характеристики для более чем 16000 подстановок. Минимальная степень нелинейности среди всех координатных функций для большинства подстановок, в том числе для всех подстановок с лучшими разностными характеристиками, равна 15. При фиксации сдвигов значениями 1, 2, 3, 4 и переборе константы от 0 до 255 для всех подстановок, за исключением двух, параметр Л5 равен 14 или 15. Лучшие разностные характеристики для разного количества итераций приведены в табл. 3.

Таблица 3

Количество итераций 8-бокса 4 5 6 7 8

Лучшее значение рэ 200/216 40/216 20/216 20/216 18/216

При дальнейшем увеличении количества итераций не найдено разностной характеристики меньше 18/216. Кроме того, в каждой исследованной подстановке это значение характеристики встречается либо один раз, либо ни разу.

Для некоторых подстановок с лучшими разностными характеристиками исследована линейная характеристика. Для шести раундов для сдвигов 1, 2, 3, 4 при фиксации константы С = 105 (р3 = 20) линейная характеристика равна 83 = 946/215. Для сдвигов 1, 4, 2, 3 при восьми итерациях при фиксации константы С =215 (р3 = 18) линейная характеристика равна 83 = 860/215.

В табл. 4-6 приведено сравнение полученных характеристик с характеристиками известных я-боксов. Производительность оценивалась как скорость обработки большого объема данных одним я-боксом 16x16 и двумя я-боксами 8x8 алгоритма «Кузнечик».

Таблица 4

Сравнение максимальных разностных характеристик построенных Б-боксов

с известными Б-боксами

в-бокс ЛЕБ, 8x8 8к1р]аек, 8x8 «Кузнечик», 8x8 [6], 8x8 Данная работа, 16x16 Табличная реализация из [7], 16x16

Рэ 1,6 • 10-2 4,7 • 10-2 3,1 • 10-2 2,3 • 10-2 2,7 • 10-4 6,1 • 10-5

Таблица 5

Сравнение линейных характеристик Б-боксов из данной работы с известными

Б-боксами

s-бокс AES, SxS Skipjack, «Кузнечик», Sx S [б], SxS s-бокс 16 x 16 на основе NASH s-бокс 16x16 на основе МАГ Табличная реализация из [Т], 16x16

Ss 12,5 ■ 10-2 21,9 ■ 10-2 18,8 ■ 10-2 2,6 • 10-2 2,3 ■ 10-2 0,8 ■ 10-2

Таблица 6

Сравнение производительности построенных s-боксов (Intel Core i7-7700K, 4,2 ГГц)

s-бокс 16x16 на основе МАГ 16x16 на основе NASH 8x8 алгоритма «Кузнечик»

Мбайт/с 136,239 4 раунда 146,719 5 раундов 127,156 6 раундов 105,963 S раундов 76,293 476,837

Выводы

Предложенные s-боксы 16x16 обладают рядом положительных криптографических свойств: высокой степенью нелинейности, низкими максимальной разностной и линейной характеристиками. Они также отличаются простотой программной реализации. Их использование в итеративных алгоритмах блочного шифрования позволит снизить затраты памяти при программной реализации (на хранение прямого и обратного s-боксов 16x16, как, например, в [7], требуется 256 кбайт памяти), а также улучшить перемешивающие свойства раундового преобразования и его стойкость к различным видам криптоанализа. Вместе с тем полученные на данный момент способы алгоритмической реализации s-боксов 16x16 в 3,5-5 раз уступают в производительности табличным реализациям.

ЛИТЕРАТУРА

1. Фомичев В. М., Лолич Д. М., Юзбашев А. В. Алгоритмическая реализация s-боксов на основе модифицированных аддитивных генераторов // Прикладная дискретная математика. Приложение. 2017. №10. С. 102-104.

2. Методические рекомендации ТК26. Задание узлов замены блока подстановки алгоритма шифрования ГОСТ 28147-89. М., 2013. https://tc26.ru/standarts /metodicheskie-rekomendatsii/zadanie-uzlov-zameny-bloka-podstanovki-algoritma-shifrovaniya-gost-28147-89.html

3. Фомичев В. М., Кяжин С. Н, Локальная примитивность матриц и графов // Дискретный анализ и исследование операций. 2017. Т. 24. №1. С. 97-119.

4. Lebedev A., Karondeev A., and Kozlov A. New Block Cipher [Электронный ресурс]. https: //ist.ac.at/eurocrypt2016/slides/121.pdf

5. Фомичев В. М. Методы дискретной математики в криптологии: учеб. пособие. М.: Диалог-МИФИ, 2010.

6. Menyachikhin A. Spectral-linear and spectral-difference methods for generating cryptographically strong S-boxes // CTCrypt Preproc. Yaroslavl, 2016. P. 232-252. https://mjos.fi/doc/rus/CTCrypt2016Preproceedings.pdf

7. Wood C. A. Large Substitution Boxes with Efficient Combinational Implementations. Thesis. Rochester Institute of Technology, 2013.

i Надоели баннеры? Вы всегда можете отключить рекламу.