Jump to content

Нейронная криптография

Нейронная криптография — это раздел криптографии, посвященный анализу применения стохастических алгоритмов, особенно алгоритмов искусственных нейронных сетей , для использования в шифровании и криптоанализе .

Определение

[ редактировать ]

Искусственные нейронные сети хорошо известны своей способностью выборочно исследовать пространство решений данной проблемы. Эта особенность находит естественную нишу применения в области криптоанализа . В то же время нейронные сети предлагают новый подход к атаке на алгоритмы шифрования, основанный на том принципе, что любая функция может быть воспроизведена нейронной сетью, которая является мощным проверенным вычислительным инструментом, который можно использовать для поиска обратной функции любой криптографической системы. алгоритм.

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

Другая идея — способность нейронной сети разделять пространство на нелинейные части с помощью «смещения». Это дает разные вероятности активации нейронной сети или нет. Это очень полезно в случае криптоанализа.

Для обозначения одной и той же области исследований используются два названия: нейрокриптография и нейронная криптография.

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

Приложения

[ редактировать ]

В 1995 году Себастьен Дурленс применил нейронные сети для криптоанализа DES , позволив сетям научиться инвертировать S-таблицы DES. предвзятость в DES, изученная Ади Шамиром Подчеркивается с помощью дифференциального криптоанализа. Эксперимент показывает, что можно найти около 50% битов ключа, что позволяет найти полный ключ за короткое время. Аппаратное применение с несколькими микроконтроллерами было предложено из-за простой реализации многослойных нейронных сетей в аппаратном обеспечении.

Один из примеров протокола с открытым ключом приведен Халилом Шихабом. Он описывает схему дешифрования и создание открытого ключа, основанные на нейронной сети обратного распространения ошибки . Схема шифрования и процесс создания закрытого ключа основаны на булевой алгебре. Преимущество этого метода заключается в небольших сложностях по времени и памяти. Недостатком является свойство алгоритмов обратного распространения ошибки: из-за огромных обучающих выборок фаза обучения нейронной сети очень длительная. Поэтому использование этого протокола пока носит лишь теоретический характер.

Протокол обмена нейронными ключами

[ редактировать ]

Наиболее используемым протоколом обмена ключами между двумя сторонами A и B на практике является протокол обмена ключами Диффи-Хеллмана . Нейронный обмен ключами, основанный на синхронизации двух машин проверки четности дерева, должен стать безопасной заменой этому методу. Синхронизация этих двух машин аналогична синхронизации двух хаотических осцилляторов в хаотических коммуникациях .

Машина проверки четности деревьев

Машина проверки четности деревьев

[ редактировать ]

Машина проверки четности дерева — это особый тип многослойной нейронной сети прямого распространения .

Он состоит из одного выходного нейрона, K скрытых нейронов и K × N входных нейронов. Входные данные в сеть принимают три значения:

Веса между входными и скрытыми нейронами принимают значения:

Выходное значение каждого скрытого нейрона рассчитывается как сумма всех произведений входных нейронов и этих весов:

Signum — простая функция, возвращающая −1,0 или 1:

Если скалярное произведение равно 0, выход скрытого нейрона отображается в -1, чтобы обеспечить двоичное выходное значение. Выходные данные нейронной сети затем вычисляются как умножение всех значений, создаваемых скрытыми элементами:

Выход машины проверки четности дерева является двоичным.

Протокол

[ редактировать ]

Каждая сторона ( A и B ) использует свою собственную машину проверки четности дерева. Синхронизация машин проверки четности дерева достигается на этих этапах.

  1. Инициализировать случайные значения веса
  2. Выполняйте эти шаги до тех пор, пока не будет достигнута полная синхронизация.
    1. Сгенерируйте случайный входной вектор X
    2. Вычислить значения скрытых нейронов
    3. Вычислите значение выходного нейрона
    4. Сравните значения обеих машин проверки четности дерева.
      1. Выходные данные те же: к весам применяется одно из подходящих правил обучения.
      2. Выходы разные: перейдите к 2.1.

После достижения полной синхронизации (веса w ij обеих машин проверки четности дерева одинаковы) A и B могут использовать свои веса в качестве ключей.
Этот метод известен как двунаправленное обучение.
Одно из следующих правил обучения [ 1 ] можно использовать для синхронизации:

  • Правило обучения Хеббиана:
  • Антихеббианское правило обучения:
  • Случайное блуждание:

Где:

если в противном случае

И:

это функция , которая сохраняет в диапазоне

Атаки и безопасность этого протокола

[ редактировать ]

При каждой атаке считается, что злоумышленник Е может подслушивать сообщения между сторонами А и Б , но не имеет возможности изменить их.

Грубая сила

[ редактировать ]

Чтобы осуществить атаку методом перебора, злоумышленник должен проверить все возможные ключи (все возможные значения весов wij). С помощью K скрытых нейронов, K × N входных нейронов и границы весов L это дает (2L+1) КН возможности. Например, конфигурация K = 3, L = 3 и N = 100 дает нам 3*10. 253 ключевые возможности, делающие атаку невозможной при нынешних компьютерных возможностях.

Обучение с помощью собственной машины проверки четности деревьев

[ редактировать ]

Одну из базовых атак может осуществить злоумышленник, владеющий той же машиной проверки четности дерева, что и A и B. стороны Он хочет синхронизировать свою машину проверки четности деревьев с этими двумя сторонами. На каждом этапе возможны три ситуации:

  1. Выход(A) ≠ Выход(B): Ни одна из сторон не обновляет свои веса.
  2. Выход(A) = Выход(B) = Выход(E): все три стороны обновляют веса в своих машинах проверки четности дерева.
  3. Выход(A) = Выход(B) ≠ Выход(E): стороны A и B обновляют свои машины проверки четности дерева, но злоумышленник не может этого сделать. чем синхронизация сторон А и Б. Из-за этой ситуации его обучение происходит медленнее ,

Доказано, что синхронизация двух сторон происходит быстрее, чем изучение злоумышленника. Его можно улучшить за счет увеличения синаптической глубины L нейронной сети. Это обеспечивает этому протоколу достаточную безопасность, и злоумышленник может узнать ключ лишь с небольшой вероятностью.

Другие атаки

[ редактировать ]

Для традиционных криптографических систем мы можем повысить безопасность протокола, увеличив длину ключа. В случае нейронной криптографии мы улучшаем ее за счет увеличения синаптической глубины L нейронных сетей. Изменение этого параметра увеличивает стоимость успешной атаки в геометрической прогрессии, в то время как усилия пользователей растут полиномиально. Следовательно, взлом безопасности нейронного обмена ключами относится к классу сложности NP.

Александр Климов, Антон Митягин и Ади Шамир говорят, что исходную схему нейронной синхронизации можно взломать как минимум тремя различными атаками — геометрическим, вероятностным анализом и использованием генетических алгоритмов. Несмотря на то, что эта конкретная реализация небезопасна, идеи, лежащие в основе хаотической синхронизации, потенциально могут привести к безопасной реализации. [ 2 ]

Машина перестановочной четности

[ редактировать ]

Машина проверки четности перестановок представляет собой двоичный вариант машины проверки четности дерева. [ 3 ]

Он состоит из одного входного слоя, одного скрытого слоя и одного выходного слоя. Количество нейронов в выходном слое зависит от количества скрытых единиц K. Каждый скрытый нейрон имеет N двоичных входных нейронов:

Веса между входными и скрытыми нейронами также являются двоичными:

Выходное значение каждого скрытого нейрона рассчитывается как сумма всех исключающих дизъюнкций (исключающих или) входных нейронов и этих весов:

(⊕ означает исключающее ИЛИ).

Функция — пороговая функция, которая возвращает 0 или 1:

Выходные данные нейронной сети с двумя или более скрытыми нейронами могут быть вычислены как исключительные значения, созданные скрытыми элементами:

Возможны и другие конфигурации выходного слоя для K>2. [ 3 ]

Эта машина оказалась достаточно устойчивой к некоторым атакам. [ 4 ] поэтому его можно использовать в качестве криптографического средства, но было показано, что он уязвим для вероятностной атаки. [ 5 ]

Защита от квантовых компьютеров

[ редактировать ]

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

Протокол обмена нейронными ключами не основан на какой-либо теории чисел. Он основан на различии между однонаправленной и двунаправленной синхронизацией нейронных сетей. Следовательно, что-то вроде нейронного протокола обмена ключами может привести к созданию потенциально более быстрых схем обмена ключами. [ 2 ]

См. также

[ редактировать ]
  1. ^ Сингх, Аджит; Нандал, Аарти (май 2013 г.). «Нейронная криптография для обмена секретными ключами и шифрования с помощью AES» (PDF) . Международный журнал перспективных исследований в области компьютерных наук и разработки программного обеспечения . 3 (5): 376–381. ISSN   2277-128X .
  2. ^ Jump up to: а б Климов, Александр; Митягин Антон; Шамир, Ади (2002). «Анализ нейронной криптографии» (PDF) . Достижения криптологии . АЗИАКРИПТ 2002. LNCS . Том. 2501. С. 288–298. дои : 10.1007/3-540-36178-2_18 . ISSN   0302-9743 . Проверено 15 ноября 2017 г.
  3. ^ Jump up to: а б Рейес, ОМ; Копицке, И.; Циммерманн, К.-Х. (апрель 2009 г.). «Машины перестановочной четности для нейронной синхронизации». Физический журнал A: Математический и теоретический . 42 (19): 195002. Бибкод : 2009JPhA...42s5002R . дои : 10.1088/1751-8113/42/19/195002 . ISSN   1751-8113 . S2CID   122126162 .
  4. ^ Рейес, Оскар Маурисио; Циммерманн, Карл-Хайнц (июнь 2010 г.). «Машины перестановочной четности для нейронной криптографии». Физический обзор E . 81 (6): 066117. Бибкод : 2010PhRvE..81f6117R . дои : 10.1103/PhysRevE.81.066117 . ISSN   1539-3755 . ПМИД   20866488 .
  5. ^ Сеоан, Луис Ф.; Руттор, Андреас (февраль 2012 г.). «Успешная атака на нейронную криптографию на основе машинной перестановки и четности». Физический обзор E . 85 (2): 025101. arXiv : 1111.5792 . Бибкод : 2012PhRvE..85b5101S . дои : 10.1103/PhysRevE.85.025101 . ISSN   1539-3755 . ПМИД   22463268 . S2CID   17187463 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 532f1652b7d2d8f4c0c688e49aa87bee__1681714740
URL1:https://arc.ask3.ru/arc/aa/53/ee/532f1652b7d2d8f4c0c688e49aa87bee.html
Заголовок, (Title) документа по адресу, URL1:
Neural cryptography - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)