Научная статья на тему 'Способ представления подстановок S16 с помощью алгебраических пороговых функций'

Способ представления подстановок S16 с помощью алгебраических пороговых функций Текст научной статьи по специальности «Математика»

CC BY
109
14
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АЛГЕБРАИЧЕСКИЕ ПОРОГОВЫЕ ФУНКЦИИ / ГЕОМЕТРИЧЕСКИЕ ТИПЫ / ПОДСТАНОВКИ / БЛОЧНЫЕ ШИФРЫ / ALGEBRAIC THRESHOLD FUNCTIONS / GEOMETRIC TYPES / SUBSTITUTIONS / BLOCK CIPHER

Аннотация научной статьи по математике, автор научной работы — Сошин Данил Андреевич

Предлагается алгоритм представления подстановок на множестве элементов {0,1,..., 15} с помощью линейных комбинаций алгебраических пороговых функций. Получаемые задания могут быть использованы для эффективной реализации на перспективной оптической элементной базе нелинейных преобразований узлов переработки информации.

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

The method for implementation of substitutions S16 by algebraic threshold functions

The article deals with the algorithm for constructing representations of substitutions on the set {0,1,..., 15} by using linear combinations of algebraic threshold functions (ATF). Such representations can be used for effective implementations of non-linear discrete transformation schemes in optical basis.

Текст научной работы на тему «Способ представления подстановок S16 с помощью алгебраических пороговых функций»

ЛИТЕРАТУРА

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 не задаётся через АПФ. Для булевых функций от четырёх

переменных существует 222 геометрических типа, из них 70 представителей содержат в качестве подфункции функцию от трёх переменных f * и поэтому не относятся к классу АПФ. Для 101 из оставшихся 152 геометрических типов найдено задание в виде АПФ. Важно отметить, что класс АПФ замкнут относительно фиксации переменных и включает в себя все линейные функции к-значной логики.

Любое преобразование Г : ^ ^2, порождающее подстановку степени 16, задаётся набором координатных функций Г = (Л0, Д, Л2, fз), где fi : ^ П2, г = 0,1, 2, 3.

Определение 2. АПФ-реализацией преобразования Г будем называть некоторое задание его координатных функций через булевы линейные комбинации АПФ:

Л , Л , ]2 , Jз I

■^и-1

(

\а0

-1

1-1

г-1

*0 \

^ е АТ|,

а

е

где АТ42— множество всех АПФ от четырех переменных двузначной логики.

Утверждение 1. Для любого преобразования Г : ^2 ^ существует АПФ-реализация.

Построение АПФ-реализаций подстановок представляет собой сложную задачу дискретной математики, для решения которой может быть предложен алгоритм 1.

Алгоритм позволяет находить с высокой вероятностью АПФ-реализации подстановок, у которых в линейных комбинациях участвуют только пять АПФ.

В алгоритме используется подмножество О (Л0, Ль Л2, Лз) множества всех подфункций координатных функций Ло,ЛьЛ2,Лз подстановки п, формируемое по одному из следующих правил.

Способ 1. О (Ло, Л1, Л2, Лз) = Л л Л : г = з}-

с п о с о б 2. О (f0| f1| л2, лз) = {# : # Л Л = ^ Ы = 4}, где Ы — вес фУнкЦии, г е {1,..., 4} — фиксированное.

1. Результаты применения алгоритма 1 к подстановкам алгоритмов блочного шифрования Магма и 2-ГОСТ

Задания подстановок алгоритмов блочного шифрования Магма и 2-ГОСТ получены в [2]. Предложенные в данной работе АПФ-реализации отличаются тем, что для каждой подстановки используется система из пяти АПФ и линейные комбинации каждой координатной функции используют не более чем две из них. Задания подстановок алгоритмов блочного шифрования Магма и 2-ГОСТ можно найти в [3, 4], ниже используются обозначения из работы [2]. В табл. 1 и 2 предложены АПФ-реализации данных подстановок. В табл. 1 для каждой подстановки пг указана функция Л из множества О (Ло, л 1, л2, Лз), с использованием которой получена АПФ-реализация.

0

1

2

а

а

а

а

а

а

а

1

1

1

1

1

2

а

а

Алгоритм 1. Алгоритм нахождения АПФ-реализаций подстановок Вход: функции Л, Л1, Л2, Лз, множество О (Ло, Л1, Л2, Лз).

Выход: АПФ-реализации Л = ^ а^ <г, З = 0,1, 2, 3, где <г — АПФ, либо сообщение

г

«Не успех». 1: Из всех АПФ вида

во Л © вЛ © в2Л2 © взЛз

формируем множество V, где во,във2,вз е П2. 2: Находим максимальную линейно независимую подсистему V' множества V. Если

она содержит 4 функции, то переходим на шаг 3, иначе на шаг 4. 3: Пусть V' = {<о, <, <2, <з}. Найдём решение системы

/4 /4 /4 /4\

Л , Л ,Л,Л I

<о,<1 ,<2,<з

/«о

ао

«о \«о

а1 а,

а а1

аг

1

а1 а2

а

ао\

аз

а а

1/

Найденное решение подаём на выход. Конец алгоритма. 4: Если О (Ло, Л, Л, Лз) = 0, то выдаём сообщение «Неуспех» и завершаем алгоритм. Иначе исключаем из множества О (Ло, Л1, Л2, Лз) произвольную функцию д и переходим на шаг 5. 5: Формируем множество V, состоящее из всех АПФ вида

во Ло © вЛ © в2 Л © взЛз © в4д.

6: Находим максимальную линейно независимую подсистему V' множества V. Если V' = {<о, <, <2, <з, <4}, то на выход подаём решение системы

<4 <4 ¿4 ¿4

Ло , Л1 , Л2 , Лз

ао1 ао

ао1 а11 а21 аз

а2 а21 а22 аз

а§ аз1 аз аз

ао4 а41 а24

В противном случае переходим на шаг 4.

Таблица 1

АПФ-реализации подстановок алгоритма блочного шифрования Магма

по : /4 = / Л /0;

П1 : /4 = /о1 л /?;

((0,1, 3, 2, 6); 2 ((0, 2, 3, 3,1); 6 ((1, 6, 7, 2, 5);4 ((1, 7, 6, 5, 5); 6 ((4, 2, 7, 2, 5); 4

7); /о0

8); /0

8); /2

8); /о

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

8).

/о0 = ^0 ® V? ® ^0 Ф ^4 Ф ^4.

/I = (1100000010100000) С /2;

V?

^4

((0, 3,1, 3, 0); 2 ((1, 3,1, 5, 6);6 ((3,4, 2, 6, 3); 2 ((4, 3, 7, 5, 2); 4 ((5, 7, 5, 2, 5); 4

/о? =

/0 = /121

/231

^3ф ^4

V? ф ^2

^0 ф v4

= Vо.

П2

п3 : /43 = /3 Л /23;

2

v0

V* 2

v2 v3 v4

((0,1,1,1, 3); 4; 6) ((0, 3, 7, 2, 5); 4; 8) ((3,1, 3, 5,1); 2; 6) ((3, 2,1, 4, 3); 3; 6) ((4, 6, 3, 6, 7); 4; 8).

/02 = V2 ф v3; /2 = V2 ф v2; /2 = V*;

/3 = V2 ф V!.

-Ж/

((0,1, 2,1,0); 3 ((0, 2,1, 3,0); 2 ((0, 2, 7, 5,4); 6 ((1, 7, 3, 2, 2); 4 ((6,1, 3, 3, 6); 6

V3

V? 3

v3 v4

((0, 2, 3,1, 2); 2; 4) ((0, 5, 5, 5, 2); 3; 6) ((1,3,5,4,1); 6; 8) ((1, 6, 3, 2, 4); 5; 7) ((2,4,1,2,1); 2; 6).

/03 = V3 ф V?

/?3 = V3 ф v3 /23 = V! ф v4 /3 = V3 ф v4.

П4

/44

4

v0

V?!

4

VI

4

v3

4

V4

п5 : /5 = (0011010000000010) С /5;

/04 = v! ф v4

/4 = vо ф v4 /4 = v3 ф v4

/34 = V?.

(0001010000001001) С /6;

V® ((5,4,1, 2, 6) 3 8)

V? ((0,1, 6, 5, 4) 6 8)

V5 ((0,3,0, 3, 2) 2 4)

v3 ((0, 3,4, 5,1) 3 6)

v4 ((5, 2, 5, 6, 7) 3 8)

/447 = /о7 л /7;

7 v0 ((4, 3, 7, 6, 5) 4 8)

V? ((3, 3,1, 5, 6) 2 8)

7 V7 ((3, 3, 2, 5, 5) 3 6)

7 v3 ((5, 2, 6, 3,1) 4 8)

v4 ((6, 3, 6, 5, 4) 6 8)

/05 = V? ф v4

/5 = V2 ф v3

/2 = Vо ф V2 /35 = V? ф V2

П6

/46

Vо V?

v2 v3 v4

П7 :

((0,0,1, 0,1); 1 ((0, 5, 2, 4,1); 3 ((0, 5, 7, 6,4); 5 ((2,4, 3, 2,1); 2 ((6, 2, 3,1, 6); 5

v3 ф v4

/6 /о

/6 = v0 ф V?

/6 = v0 ф v2

/36 = V? ф v3

/о7 = v0; /7 = V7 ф v4;

/27 = V7 ф v3; /37 = V7 ф v4.

Таблица 2

АПФ-реализации подстановок алгоритма блочного шифрования 2-ГОСТ

п' : п'' :

Vо ((0,1, 5, 2, 2) ; 6; 9); /0 /? /2' /3' Vо' ((6, 5, 5, 2,1) ; 6; 8); /0' /?' /2' /3' = vз ф v4'; = vо Ф v3'; = vо ф v2'; = Vо ф V?'.

V? ((0, 5, 5,1, 6) ; 2; 7); = V4; ' V?' ((3, 2, 4,1, 5) ; 6; 8);

v2 ((7, 6, 5, 6,1) ; 4; 8); = V2; = v2ф v3; = v0 ф V?. v2' ((3,1, 6, 3,4) ; 5; 7);

v3 ((2, 5, 7, 3, 2) ; 4; 8); v3' ((2,1, 6, 3, 2) ; 4; 8);

v4 ((3, 5,1, 2, 3) ; 4; 8). v4' ((0, 3, 2, 2,1) ; 4; 8).

ЛИТЕРАТУРА

1. Сошин Д. А. Представление геометрических типов булевых функций от трех переменных алгебраическими пороговыми функциями // Прикладная дискретная математика. 2016. №1(31). С. 32-45.

2. Сошин Д. А. Задание подстановок алгоритмов блочного шифрования Магма и 2-ГОСТ с помощью алгебраических пороговых функций // Прикладная дискретная математика. 2016. №3(33). С. 53-66.

3. ГОСТ Р 34.12-2015. Информационная технология. Криптографическая защита информации. Блочные шифры. М.: Стандартинформ, 2015.

4. Дмух А. А, Дыгин Д. М., Маршалко Г. Б. Пригодная для низкоресурсной реализации модификация блочного шифра ГОСТ // Математические вопросы криптографии. 2014. Т. 5. №2. С. 47-55.

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