В основу криптографических методов положено понятие ключа. Каждый используемый ключ может производить различные зашифрованные сообщения, определяемые только этим ключом. Чтобы обмен зашифрованными сообщениями проходил успешно, как отправителю, так и получателю необходимо знать ключ и хранить его в тайне. Следовательно, стойкость любой криптографической системы определяется степенью секретности используемого в ней ключа. Однако тут возникает противоречие, т.к. этот ключ должен быть известен другим пользователям, для того чтобы они могли свободно обмениваться зашифрованной информацией. В данном контексте криптографические системы также помогают решить проблему аутентификации принятой информации, поскольку подслушивающее лицо, пассивным образом перехватывающее сообщение, будет иметь дело только с зашифрованным текстом. В то же время истинный получатель, приняв зашифрованную информацию, известным ему и отправителю ключом, будет надежно защищен от возможной дезинформации.
В настоящее время общепризнанным является подразделение криптографических алгоритмов на следующие основные категории [1-2]: алгоритмы шифрования с секретным ключом (симметричные), которые делятся на: блочные шифры; поточные шифры; алгоритмы шифрования с открытым ключом (асимметричные).
Симметричное шифрование основывается на использовании одного и того же секретного ключа для шифрования и дешифрования (рис. 1).

Рассмотрим блочные и поточные шифры.
Блочные шифры позволяют строить криптографически стойкие системы путем последовательного применения относительно простых криптографических преобразований. К основным алгоритмах блочных шифров относятся алгоритмы DES, Triple DES и AES [3-5].
Основная идея поточного шифрования состоит в том, что каждый из последовательных знаков открытого текста подвергается своему преобразованию. В идеале разные знаки открытого текста подвергаются разным преобразованиям, т.е. преобразование, которому подвергаются знаки открытого текста, должно изменяться с каждым следующим моментом времени.
Поточные шифры работают быстрее и обычно требуют для своей реализации меньше программного кода, чем блочные шифры. Наиболее известный поточный шифр был разработан Р. Ривестом [6-7]; это шифр RC4, который характеризуется переменным размером ключа и байт-ориентированными операциями.
Суть асимметричных криптосистем состоит в том, что ключ, используемый для шифрования, отличается от ключа дешифрования. Ключ шифрования не является секретным, но дешифрование с помощью известного ключа шифрования невозможно. Для дешифрования используется отдельный секретный ключ. Знание открытого ключа не позволяет определить ключ секретный для дешифрования информации. Т.е., дешифровать информацию может только получатель, владеющий секретным ключом (рис. 2).

В асимметричной криптографии для шифрования и дешифрования используются различные функции. Асимметричные алгоритмы основаны на ряде математических проблем, на которых и базируется их стойкость. Пока не найден полиномиальный алгоритм решения этих проблем, данные алгоритмы будут стойки. В этом заключается ещё одно отличие симметричного и асимметричного шифрования: стойкость первого является непосредственной и научно доказуемой, стойкость второго — предположительной.
Наиболее известные криптосистемы с открытым ключом [1-7]: Рюкзачная криптосистема; Криптосистема RSA; Криптосистема Эль-Гамаля; Криптосистема, основанная на свойствах эллиптических кривых.
До сих пор остается открытым вопрос «Какой тип шифрования лучше?». Основной недостаток симметричного шифрования — необходимость передачи ключей, что делает невозможным применение алгоритмов симметричного шифрования в системах с неограниченным числом участников. Однако в остальном симметричное шифрование имеет одни преимущества в сравнении с асимметричным шифрованием. Главным недостатком ассиметричного шифрования является низкая скорость выполнения операций шифрования и дешифрования, обусловленная наличием ресурсоемких операций. Другой недостаток ассиметричного шифрования «теоретический» — математически криптостойкость алгоритмов асимметричного шифрования не доказана.
Как было сказано ранее, основным недостатком симметричного шифрования является общий ключ для шифрования и дешифрования, что затрудняет использование симметричного шифрования в распределенных системах. Проблема вызвана тем, что ключ передается через общедоступный канал связи, через который злоумышленник может похитить как саму информацию, так и ключ для ее дешифрации. В классическом виде стандартный подход передачи ключа в симметричном шифровании выглядит, как показано на рисунке 3.

Рассмотрим предлагаемый новый подход передаче ключа шифрования на основе нейронной сети [8-10].
Пусть существует 2 пользователя:
- пользователь А — источник информации;
- пользователь В — получатель информации.
Между пользователями незащищенный канал передачи информации (например, ICQ). Пользователи находятся на значительном расстоянии друг от друга (например, в разных странах).
Пользователи хотят отправлять некоторую секретную информацию друг другу. Кроме того, они не могут использовать RSA-подобные асимметричные алгоритмы, т.к. они не могут встретиться, чтобы создать секретный ключ для своих сообщений, в случае, показанном в работе [11].
Решением проблемы передачи зашифрованной информации и ключа для шифрования/дешифрования является использование нейронных сетей, по одной для каждого из пользователей. Пользователи должны синхронизировать свои нейронные сети, вследствие чего на основании весовых коэффициентов нейронных сетей будет вычислен ключ для шифрования/дешифрования. Общая схема предлагаемого подхода представлена на рисунке 4.

Ключевым аспектом предлагаемого подхода является алгоритм генерации ключа шифрования/дешифрования на основе весовых коэффициентов нейронных сетей пользователей.
Таким образом, можно сделать вывод о том, что решение проблемы передачи секретного ключа в симметричных алгоритмах шифрования позволит использовать алгоритмы симметричного шифрования в гораздо более широком спектре систем безопасности, что в свою очередь повысит криптостойкость таких систем.