Применение нейронных сетей в криптографии
Андреева А.
Шайхуллина Л.
Эсаулова Ю.
Студенты группы 4441
Интеллектуальные системы обеспечения информационной безопасности
введение
Увеличивающийся интерес к использованию математического аппарата искусственных нейронных сетей в задачах защиты информации связан со способностью к обучению, восстановлению искаженных сигналов и распознаванию объектов, имеющих характеристики отличные от эталонных.

Однако данный подход обладает своими ключевыми особенностями, которые способны критическим образом повлиять на его эффективность в области криптографии.
#2 слайд
Нейрокриптография
раздел криптографии, изучающий применение стохастических алгоритмов, в частности, нейронных сетей, для шифрования и криптоанализа
#4 слайд
Свойства нейронных сетей
В криптоанализе используется способность нейронных сетей исследовать пространство решений. Также имеется возможность создавать новые типы атак на существующие алгоритмы шифрования, основанные на том, что любая функция может быть представлена нейронной сетью. Взломав алгоритм, можно найти решение, по крайней мере, теоретически.

При этом используются такие свойства нейронных сетей, как взаимное обучение, самообучение и стохастическое поведение, а также низкая чувствительность к шуму, неточностям (искажения данных, весовых коэффициентов, ошибки в программе). Они позволяют решать проблемы криптографии с открытым ключом, распределения ключей, хеширования и генерации псевдослучайных чисел.

#5 слайд
идея
Идеи нейрокриптографии впервые были озвучены Себастьяном Дорленсом в 1995 году, спустя 30 лет после определения основ нейронных сетей.

В 1995 году Себастьян Дорленс применил нейрокриптоанализ, чтобы научить нейронные сети инвертировать S-перестановки в DES. В ходе эксперимента было найдено 50% битов ключа, то есть ключ целиком может быть найден за короткое время. Аппаратная реализация состоит из множества (64К) простых микроконтроллеров, расположенных на СБИС.
#6 слайд
микроконтроллер
Внутреннее представление информации нейросетью
Построение различных типов нейросетей обладает своими индивидуальными особенностями, но преследует единую цель - научиться распознавать и классифицировать искаженный код из областей, построенных на предварительном этапе. Форма областей напрямую зависит от выбранной нейросетевой парадигмы и особенностей внутреннего представления информации.
#7 слайд
Так для многослойного персептрона характерно разбиение пространства входных данных посредством гиперплоскостей или поверхностей. Нейросети, использующие радиальные базисные функции в нейронах промежуточного слоя, основаны на разбиении пространства окружностями или в общем случае гиперсферами (Рисунок 1а - групповое представление). Вследствие чего, такие сети, в отличие от многослойного персептрона, не умеет экстраполировать свои выводы за область известных данных.

При удалении от обучающего множества значение функции отклика быстро спадает до нуля, таким образом, RBF - нейроны действуют в достаточно малой области входного пространства и чем шире пространство (количество входов и расстояние между ними), тем больше требуется нейронов. Однако, центры RBF – нейронов могут совпадать с центрами областей (кластеров) пространства шифрования, т.е. в структуре сети хранится информация об областях допустимых искажений. В свою очередь, на рисунке 1в показаны линии энергетических уровней непрерывной системы соответствующей сети Хопфилда с двумя нейронами.
#8 слайд
Улучшение криптостойкости
Можно предложить три различных направления для улучшения криптостойкости алгоритма шифрования.

Первый вариант основан на увеличении размера ключа, который зависит от размерности элементов множества шифробозначений, и от количества кластеров (областей), характеризующих символ или группу символов. Однако, необходимо учитывать тот факт, что с ростом размерности, так же увеличивается и длинна получаемого шифротекста.

Увеличение длины получаемого шифротекста может быть компенсировано с помощью введения дополнительных классов, которые будут включать не единичные символы, а часто встречающиеся в тексте цепочки символов, т.е. за счет расширения алфавита. Однако, это потребует дополнительных вычислительных затрат на предварительном этапе в процессе построения сети и не может считаться удовлетворительным с учетов все возрастающих вычислительных мощностей, которые могут быть задействованы криптоаналитиком.
#9 слайд
Второй вариант основан на уменьшении размеров (радиусов) областей в пространстве шифробозначений, что в свою очередь влечет за собой увеличение их числа. Поскольку суммарная площадь этих областей должна быть пропорциональна частоте встречаемости символа исходного алфавита, то произойдет замена одной области с большим радиусом несколькими несмежными областями с меньшими радиусами и чем больше частота появления символа, тем большее число областей будет ему соответствовать.

Данное изменение увеличит размер нейросети (ключа шифрования/дешифрования), поскольку с увеличением числа областей в пространстве шифробозначений потребуется и увеличение числа нейронов скрытого слоя. Однако дополнительно, это позволит сгладить распределение расстояний для биграмм и триграмм, т.е. от криптоаналитика потребуется рассматривать всевозможные комбинации областей и соотносить их с частотными распределениями встречающихся биграмм и триграмм.
#10 слайд
И третий способ основан на переходе к многоалфавитному шифру и использованию комитетов нейронных сетей, где каждая нейросеть будет соответствовать определенному алфавиту, т.е. обеспечивать собственное преобразование. Выбор той или иной сети на каждом шаге шифрования/дешифрования может осуществляться как последовательно, так и по определенному правилу.

В этом случае области шифробозначений у разных нейросетей будут накладываться друг на друга, что с одной стороны, способно повысить криптостойкость, а с другой существенно усложнить блок шифрования/дешифрования. Также открытым остается вопрос выбора количества сетей/алфавитов, которые способны обеспечить необходимую криптостойкость.
#11 слайд
Спасибо за внимание!
1/14
Made on
Tilda