Криптографические свойства булевых функций. Методические указания
.pdf
В качестве примера булевой функции S-блока шифра ГОСТ 28147-89 можно
привести пример, представленный в работе [16]:
F1 (x1, x2 , x3 , x4 ) x2 x3 x1x2 x1x3 x1x4 x1x2 x4 x2 x3 x4 .
Задание 3.1 (комплексное задание). Для всех рассмотренных булевых функций в этом разделе записать АНФ, найти алгебраическую степень,
нелинейность. Выяснить, являются ли функции уравновешенными, при каком значении параметра m являются m-устойчивыми. Найти корреляционную и алгебраическую иммунность. Проверить выполнимость критериев распространения,
выбрав параметры самостоятельно. Сделать выводы.
41
4 Рекомендации для дальнейшего изучения криптографических
булевых функций
Развитие прикладных исследований в области теории булевых функций стало следствием развития вычислительной техники и технических устройств связи,
которое послужило появлению новых прикладных разделов математики и новых подходов к применению фундаментальных математических исследований. Булева алгебра, появившаяся как объект фундаментальных исследований математики,
начиная с середины ХХ века, нашла применение в различных областях науки и техники, в том числе и в области шифрования и кодирования. В настоящее время булевы отображения и функции широко используются в криптографических системах, и поэтому они являются популярным объектом систематического и всестороннего математического и криптографического анализа.
Охарактеризуем ряд публикаций, которые могут быть полезны для дальнейшего знакомства с криптографическими булевыми функциями и их приложениями в криптографии.
1) Учебники и учебные пособия, предназначенные для студентов вузов [15, 19, 24, 28]. В данное время уровень развития криптографии таков, что необходимо рассматривать вопросы теории криптографических функций и практики её применения в учебных изданиях. В каждом из упомянутых учебников есть раздел,
посвященный булевым функциям в криптографии.
2) Книги, посвященные исследованиям криптографических булевых функций
[13, 25, 32]. Они включают в себя подробное систематическое изложение криптографических аспектов применения аппарата теории булевых функций.
Отметим, что в работе [25] исследуется класс функций, обладающих сильными свойствами нелинейности. В ней можно найти обзор результатов в области бент-функций и их обобщений, описание их теоретических и практических приложений.
42
Отличительной особенностью книг [13, 25] является наличие в них сформулированных нерешенных проблем в исследуемой области, которые могут стать основой для дальнейших научных работ.
3) Кроме книг и учебников, существует множество публикаций как отечественных, так и зарубежных авторов, посвященных различным проблемам теории и практики применения криптографических булевых функций. Количество публикаций по данной тематике огромно. Достаточно посмотреть списки использованных источников в каждой из книг, рекомендуемых нами, оценив направления работ, чтобы понять весь масштаб проводимых исследований.
Впервую очередь отметим появление работ о новых видах булевых функций
иметодах их исследования [6, 14, 21]. Далее отметим различные виды публикаций,
посвященных описанию криптографических свойств и определению взаимосвязи между различными криптографическими характеристиками [1, 2, 5, 7, 11, 27].
Особое внимание в ряде работ уделяется оценкам границ криптографических свойств [3, 12]. Еще одна линия теоретических исследований лежит в области создания новых конструкций и методов получения определенных видов булевых функций [22, 25].
Одним из направлений практического применения теории является поиск и создание алгоритмов генерации булевых функций, удовлетворяющих криптографическим свойствам [23, 30, 31, 33]. Также существуют работы,
посвященные описанию криптографических конструкций, использующих аппарат теории булевых функций [4, 9, 16].
С применением булевых функций в криптографии тесно связана проблема представления булевых функций в ЭВМ и проблема взаимосвязи различных представлений булевых функций. Рекомендуем также познакомиться с публикациями по данному направлению исследований [8, 17, 18, 20].
43
Список использованных источников
1.Алексеев, Е.К. О некоторых алгебраических и комбинаторных свойствах корреляционно-иммунных булевых функций / Е.К. Алекcеев // Дискретная математика. – 2010. – Т. 22, вып. 3. – С. 110-126.
2.Алексейчук, А.Н. О статистических свойствах нелинейности сужений булевых функций на случайно выбранное подпространство / А.Н. Алексейчук, С.Н. Конюшок // Теоретические основы прикладной дискретной математики. – 2012. – №
1(15). – С. 5-10.
3.Баев, В.В. Некоторые нижние оценки на алгебраическую иммунность функций, заданных своими след-формами / В.В. Баев // Проблемы передачи информации. – 2008. – Т. 44, вып. 3. – С. 81-104.
4.Долгов, В.И. Исследование криптографических свойств нелинейных узлов замены уменьшенных версий некоторых шифров / В.И. Долгов [и др.] // Прикладная радиоэлектроника. – 2009. – Т. 8, № 3. – С. 268-277.
5.Ивченко, Г.И. Спектр случайной булевой функции и его производящая функция / Г.И. Ивченко, Ю.И. Медведев // Математические вопросы криптографии.
–2011. – Т. 2 № 2. –С. 41-54.
6.Ивченко, Г.И. Стохастические булевы функции и их свойства / Г.И. Ивченко, Ю.И. Медведев // Математические вопросы криптографии. – 2012. – Т. 3, № 3. – С. 21-34.
7.Коломеец, Н.А. Свойства бент-функций, находящихся на минимальном расстоянии друг от друга / Н.А. Коломеец, А.В. Павлов // Теоретические основы прикладной дискретной математики. – 2009. – № 4. – С. 5-20.
8.Коломеец, Н.А. Boolean Functions – система для работы с булевыми функциями / Н.А. Коломеец, А.В. Павлов // Вычислительные методы в дискретной математике. Приложение. – 2011. – №4. – С. 67-68.
44
9. Ключарев, П.Г. Обеспечение криптографических свойств обобщенных
клеточных автоматов [Электронный ресурс] / П.Г. Ключарев // Наука и образование,
2012. – Режим доступа: http://technomag.edu.ru/doc/358973.html
10.Куприянов А.И. Основы защиты информации / А.И. Куприянов, А.В. Сахаров, В.А. Шевцов. – М.: Издательский центр «Академия», 2006. – 256 с.
11.Лобанов, М.С. Точное отношение между нелинейностью и алгебраической иммунностью / М.С. Лобанов // Дискретная математика и исследование операций. –
2008. – Т.15, вып. 6. – С.3-47.
12.Лобанов, М.С. Получение нижних оценок на нелинейность булевой функции через размерность некоторых подпространств / М.С. Лобанов // Материалы
ХМеждународного семинара «Дискретная математика и приложения». – М.: Изд-во мех.-мат. факультета МГУ, 2010. – С. 416-419.
13.Логачев, О.А. Булевы функции в теории кодирования и криптологии / О.А. Логачев, А.А. Сальников, В.В. Ященко. – М.: МЦНМО, 2004. – 470с.
14.Логачев, О.А. Новые методы изучения совершенно уравновешенных булевых функций / О.А. Логачев, С.В. Смышляев, В.В. Ященко // Дискретная математика. – 2009. – Т. 21, вып. 2. – С. 51-74.
15.Мухачев, В.А. Методы практической криптографии / В.А. Мухачев, В.А. Хорошко. – К.: ООО «Полиграф-Консалтинг», 2005. – 215с.
16.Сергиенко, Р.В. Исследование криптографических свойств нелинейных узлов замен алгоритма симметричного шифрования ГОСТ 28147-89 / Р.В. Сергиенко, И.В. Московченко // Системы обработки информации. – 2007. – №8(66).
– С. 91-95.
17.Сизоненко, А.Б. Анализ логических функций средств и систем защиты информации и способов повышения эффективности их вычислений [Электронный ресурс] / А.Б. Сизоненко // Научный журнал КубГАУ. – 2012. – № 78(04). – Режим доступа: http://ej.kubagro.ru/2012/04/pdf/76.pdf.
18.Сизоненко, А.Б. Оптимальная реализация линейных блочных кодов средствами вычислительной техники за счет выбора полиномиальной формы
45
представления систем булевых функций // Вестник ВИ МВД России. – 2012. – №4.
–С. 114-122.
19.Смарт, Н. Криптография / Н. Смарт. – М.: Техносфера. – 2006. – 528с.
20.Смирнов, В.Г. Полиномиальные представления дискретных функций / В.Г. Смирнов // Труды по дискретной математике. – 2008. – Т.11. – С. 119-137.
21.Смышляев, С.В. Булевы функции без предсказывания / С.В. Смышляев // Дискретная математика. – 2011. – Т. 23, вып. 1. – С. 102-118.
22.Смышляев, С.В. Построение классов совершенно уравновешенных булевых функций без барьера / С.В. Смышляев // Прикладная дискретная математика. – 2010. – № 3(9). – С. 41-50.
23.Стасев, Ю.В. Разработка и исследование криптографически стойких булевых функций / Ю.В. Стасев, А.А. Кузнецов, А.А. Юкальчук // Радiоелектроннi i
комп`ютернi системи. – 2006. – № 6. – С. 91-96.
24.Токарева, Н.Н. Симметричная криптография. Краткий курс: учебное пособие / Н.Н. Токарева. – Новосибирский государственный университет, Новосибирск, 2012. – 234 с.
25.Токарева, Н.Н. Нелинейные булевы функции: бент-функции и их обобщения / Н.Н. Токарева. – LAP LAMBERT Academic Publishing (Saarbrucken, Germany), 2011. – 180 с.
26.Токарева, Н.Н. Новая комбинаторная конструкция бент-функций / Н.Н. Токарева // Прикладная дискретная математика. Приложение. – 2010. – №3. – С. 1314.
27.Тужилин, М.Э. Алгебраический иммунитет булевых функций / М.Э. Тужилин // Прикладная дискретная математика. – 2008. - № 2. – С. 18-22.
28.Фомичев, В.М. Методы дискретной математики в криптологии / В.М. Фомичев. – М.: ДИАЛОГ-МИФИ, 2010. – 424с.
29.Шеннон К. Теория связи в секретных системах [Электронный ресурс] / К. Шеннон // Работы по теории информатики и кибернетике, М., 1963. – Режим доступа: http://www.enlight.ru/crypto/articles/shannon/shann__i.htm
46
30.Burnett, L. Simpler methods for generating better Boolean functions with good cryptographic properties / L. Burnett, W. Millan, E. Dawson, A. Clark // Australasian journal of combinatorics. – 2004. – V. 29. – P. 231-247.
31.Carlet, C. Self-Dual Bent Function / C. Carlet, L.E. Danielsen, M.G. Parker, P.
Solé // Int. J. Inform and Coding Theory. – 2010. – № 1(4). – P. 384-399.
32.Cusick, T.W. Cryptographic Boolean functions and applications / T.W. Cusick, P. Stanica. – Academic Press, 2009. – 232 p.
33.Najjar, M. Generating of homogeneous Boolean functions with high nonlinearity using genetic algorithm / M. Najjar // IJCSNS International Journal of Computer Science and Network Security. – 2010. – VOL. 10 No. 3. – P. 266-273.
47
|
|
|
|
Приложение А |
|
|
|
|
(справочное) |
|
|
|
|
Ответы и указания |
1.2. D( f ) |
|
Vn , E( f ) F2 . |
||
1.3. |
|
P (n) |
|
22n . Указание. Сначала найти число всевозможных наборов из n |
|
|
|||
|
|
2 |
|
|
переменных, принимающих 2 значения – 0 или 1. Это число равно числу размещений с повторениями из двух элементов по n элементов: A 2n . Затем найти число функций, мощность множества значений которых равна 2, а мощность области определения – 2n .
1.4.Указание. См. таблицы 1 и 2 раздела 1.2 методических указаний.
1.5.Переменные x1, x2 являются существенными, x3 – фиктивной. Указание.
Составить таблицу истинности и проверить выполнение условий определения 1.3
для каждой переменной.
1.6. (x1,..., xn ) ( y1,..., yn ) означает, что для некоторого k xk yk и для всех i<k
xi yi .
1.7. Указание. Сначала необходимо определить количество функций,
задаваемых с помощью АНФ. Число коэффициентов в АНФ, принимающих всего
два значения (0 и 1), равно 2n . Затем найти число различных представлений АНФ,
которое совпадает с числом булевых функций – 22n . Затем необходимо показать,
что различные представления АНФ соответствуют различным булевым функциям.
Доказательство провести от противного, предположив, что одной функции соответствует два представления в виде АНФ.
1.9. x1x2 x1x4 x4 1.
1.10. Указание. При преобразовании формул можно воспользоваться формулами и АНФ из таблиц 2 и 3.
а) x1 ; существенная переменная – x1 , фиктивные переменные – x2 , x3 .
48
б) x1x3 |
x1 ; |
существенные переменные – |
x1, x3 |
, фиктивные переменные – |
x2 . |
|||||||||
в) 1; все переменные фиктивные; |
|
|
|
|
|
|
|
|
||||||
г) |
x1x2 x3x4 |
x1x2 x3 |
x1x2 x4 |
x2 x3x4 |
x2x3 |
x2x4 |
1; |
все |
переменные |
|||||
существенные. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.11. Для таблицы 2: deg f0 |
0 , deg f1 |
1, deg f2 |
1, deg f3 0 . |
|
|
|||||||||
Для таблицы 3: deg f0 |
0 , |
deg f1 2 , deg f2 |
2 , deg f3 |
1, deg f4 |
2 , deg f5 |
1 , |
||||||||
deg f6 1, |
deg f7 |
2 , |
deg f8 |
2 , |
deg f9 |
1, |
deg f10 |
1 , |
deg f11 2 , |
deg f12 |
1 , |
|||
deg f13 2 , deg f14 |
2, deg f15 |
0 . |
|
|
|
|
|
|
|
1.13. АНФ аффинной функции n переменных a0 |
a1x1 ... |
an xn ; |
|
|
|||||
АНФ линейной функции n переменных a1x1 ... |
an xn . |
|
|
|
|||||
1.14. | A (n) | |
2n 1, | L (n) | |
2n . |
Указание. |
Рассмотреть |
АНФ |
функций |
из |
||
2 |
|
2 |
|
|
|
|
|
|
|
задания 1.13. |
|
|
|
|
|
|
|
|
|
1.15. wt(x)=5. |
|
|
|
|
|
|
|
|
|
1.16. Для таблицы 2: wt( f0 ) |
0 , wt( f1) 1, wt( f2 ) |
1, wt( f3) |
2 . |
|
|
||||
Для таблицы 3: wt( f0 ) |
0 , |
wt( f1) |
1, wt( f2 ) |
1, wt( f3) 2 , |
wt( f4 ) |
1, wt( f5 ) |
2 |
||
, wt( f6 ) 2 , wt( f7 ) 3 , wt( f8 ) 1 , wt( f9 ) 2 , wt( f10 ) 2 , wt( f11) 3 , wt( f12 ) 2 ,
wt( f13 ) 3 , wt( f14 ) 3 , wt( f15 ) 4 .
Для 1.9 wt( f ) 8 .
Для 1.10: а) wt( f ) 2 ; б) wt( f ) 6 ; в) wt( f ) 16 ; г) wt( f ) |
13 . |
1.18. Указание. Проанализировать компоненты вектора x |
y . |
1.21.dist( f , g) 6 .
1.22.dist( f , M ) 1.
1.23.1.
1.24.Для 1.9 W f {8,4,0,0,4,0,0,0,0,4,0,0, 4,0,0,0};
|
|
|
|
|
|
|
|
|
|
|
|
Для 1.10 а) W f {2,0, |
2,0}; б) W f |
{6,2,0,0, 2,2,0,0}; |
|||||||||
|
|
|
|
|
|
||||||
в) W f |
{16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; |
||||||||||
|
|
|
|
|
|
||||||
г) W f |
{13,1,1,1,3, 1, |
1, 1, 3,1,1,1,3, |
1, 1, 1}. |
||||||||
|
|
|
|
|
|
|
|
49 |
|||
1.25. Для 1.9 Wf |
{0, |
|
8,0,0, |
8,0,0,0,0, |
8,0,0,8,0,0,0}; |
|
|
|
|
|
||||||||||||||||
Для 1.10 а) Wf |
|
|
|
{0,0,4,0}; б) Wf |
{ |
4, |
4,0,0,4, |
4,0,0}; |
|
|
|
|
||||||||||||||
в) Wf |
{ |
16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; |
|
|
|
|
|
|
|
|
||||||||||||||||
г) Wf |
{ |
10, |
2, |
2, 2, 6,2,2,2,6, |
2, 2, |
2, 6,2,2,2}. |
|
|
|
|
|
|||||||||||||||
1.27. 2 n |
Wf (u)( |
1) x,u |
|
|
|
|
( |
1) f ( y ) |
y,u ( |
1) x,u |
2 n |
|
( 1) f ( y ) |
( |
1) x |
u,u . |
||||||||||
|
u Vn |
|
|
|
|
|
|
|
|
|
|
u Vn y Vn |
|
|
|
|
|
|
|
y Vn |
|
u Vn |
|
|
||
При фиксированном x |
|
V |
|
( |
1) x |
u,u |
0, |
если x |
y, |
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
n |
|
|
|
|
|
2n , если x |
y. |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
u V |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
Тогда 2 n |
|
W |
f |
(u)( |
1) x,u |
|
2 n ( |
1) f ( x) 2n |
exp f (x) . |
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
u Vn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
W 2 |
(u) |
|
|
|
|
|
|
|
1 f ( x) |
x,u |
|
|
|
1 f ( x) |
x,u |
f ( y ) y,u |
|
|
|
||||||
1.28. |
|
f |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
u Vn |
|
|
|
|
|
u Vn x Vn |
|
|
|
|
|
|
u Vn x, y Vn |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 f ( x) f ( y ) |
|
1 x y,u |
22n. |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
x, y Vn |
|
|
|
|
u Vn |
|
|
|
|
|
|
|
|
|
||||
1.29. A |
1 |
1 |
|
|
, |
b |
1 |
, c |
|
1 , |
|
0 . |
|
|
|
|
|
|
|
|
|
|||||
|
|
0 |
1 |
|
|
|
|
0 |
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2.2. а) для 1.9 |
N f |
4 ; для 1.10 а) |
N f |
0 , б) |
N f |
2 , в) |
N f |
0 , г) |
N f |
3; |
|
|||||||||||||||
б) N f |
2 . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2.3.Указание. Воспользоваться равенством Парсеваля и тем фактом, что число |
||||||||||||||||||||||||||
коэффициентов Уолша-Адамара булевой функции n переменных равно |
2n |
для |
||||||||||||||||||||||||
|
|
|
|
2n 2 . Затем воспользоваться соотношением (2.2). |
||||||||||||||||||||||
доказательства оценки max |
W |
f |
( |
) |
||||||||||||||||||||||
|
|
|
|
|
|
|
|
Vn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2.4.Да.
2.5.Да.
2.6.Нет; да.
2.7.Да.
2.8.Для таблицы 2: f1, f2 . Для таблицы 3: f3, f5 , f6 , f9 , f10 , f12 .
2.9.C22nn 1 .
2.10.Да.
50
