Несмотря на то что почти все применяемые сегодня шифры могут быть раскрыты [1], существует абсолютно стойкий шифр — одноразовая система шифрования, предложенная Г. Вернамом еще в 1926 году [2]. Для ее реализации применяется одноразовый блокнот, который состоит из нескольких таблиц со случайными числами (ключами). Блокнот имеется в двух экземплярах: один — для отправителя, другой — для получателя. Для каждого символа сообщения применяется свой ключ из таблицы, причем только один раз — после передачи сообщения таблица уничтожается, а шифрование нового осуществляется с помощью новой таблицы. Ясно, что количество одноразовых ключей у каждой пары абонентов должно быть достаточным для передачи всех сообщений и такой шифр абсолютно надежен, если набор ключей таблицы случаен и непредсказуем.
Теоретически доказано, что одноразовые системы шифрования дешифровать невозможно, поскольку зашифрованный текст не содержит достаточной информации для восстановления открытого текста [2], однако одноразовые системы шифрования применяются для связи только между двумя абонентами. В сетях, где необходима зашифрованная связь между всеми абонентами, практически одноразовые системы использовать невозможно — для этого понадобилось бы хранить множество одноразовых блокнотов и по мере применения заменять эти блокноты у каждой пары пользователей.
В сетевой одноразовой системе, где каждый абонент имеет только один комплект асимметричных одноразовых ключей, можно установить зашифрованную связь между абонентами с помощью процедуры перекодирования. Данная процедура заключается в замене ключевой последовательности, используемой для шифрования сообщения отправителя на ключевую последовательность получателя без раскрытия содержания зашифрованного сообщения [3], благодаря чему сохраняется абсолютная стойкость шифра. В состав системы (см. рисунок) входят Центр сертификации, формирования и распределения ключей (ЦСФРК), серверы распределенной обработки и пользовательские устройства (абонентские комплекты) [3]. Через ЦСФРК осуществляется подключение абонентских комплектов к системе защиты, их сертификация, формирование и распределение ключей, а также организация засекреченной связи между любыми абонентами сети в одноразовом режиме с применением перекодеров. Последние обеспечивают перевод информации, зашифрованной одноразовым ключом одного абонента, в информацию, зашифрованную ключом другого абонента.
В ЦСФРК с использованием датчика случайных чисел для каждого из M абонентов сети формируется заданное множество N одноразовых, случайных и независимых ключей, каждый из которых представляет собой таблицу размером n*n (где n — число символов), заполненную кодами длиной m. Полученные таблицы являются асимметричными одноразовыми ключами (ключевыми таблицами) для каждого из M абонентов сети. Вместе с тем для каждого абонента формируются одноразовые сетевые блокноты, каждый из которых содержит N ключевых таблиц. Каждой произвольной ключевой таблице с номером i присваивается уникальный стохастический индекс Iξi(k), формируемый с помощью специальной хеш-функции, который однозначно определяет данную таблицу. В результате получают одноразовый сетевой блокнот для каждого из М абонентов, содержащий N одноразовых ключевых таблиц. При необходимости этот ряд ключей засекречивается с помощью шифратора, например, стохастического кодера [4]. Таким образом в ЦСФРК образуется M * N одноразовых ключевых таблиц. Полученные блокноты из N одноразовых ключевых таблиц записываются в М комплектов флэш-памяти — для каждого из М абонентов сети. Флэш-память со множеством одноразовых (зашифрованных) сетевых блокнотов выдается очередному абоненту при его сертификации в ЦСФРК вместе со смарт-картой, содержащей пароль и PIN-код данного пользователя. Полученные флэш-память и смарт-карта устанавливаются в абонентские комплекты каждого абонента для организации сетевой засекреченной связи. Таким образом, для организации сетевой связи между M абонентами используются лишь K=M одноразовых блокнотов.
Именно благодаря перекодированию в ЦСФРК обеспечивается засекреченная связь абонента с любым из Mi абонентов, хотя их одноразовые ключевые таблицы случайны, независимы и асимметричны. Указанная функция реализуется в ЦСФРК при обращении к нему пары абонентов для организации зашифрованной связи. В общем случае ключевые таблицы записываются во флэш-память и применяются в исходном незашифрованном виде. Перед началом сеанса связи с помощью ЦСФРК выполняются идентификация и аутентификация абонентов, например, с использованием алгоритмов, приведенных в работе [3]. Затем происходит выборка из флэш-памяти комплектов абонентов зашифрованных одноразовых блокнотов, которые указаны в значениях хеш-функций Iξi(k), Iξi(k). Эти значения передаются из ЦСФРК абонентам и записываются в блок управления каждого из них. Если заявлен продолжительный сеанс, то ЦСФРК передает столько значений хеш-функций ключевых таблиц различных карт, сколько потребуется для засекречивания в одноразовом режиме всего сеанса связи. Далее по специальной команде ЦСФРК происходит поочередная расшифровка данных таблиц в абонентских комплектах. Если таблицы во флэш-памяти не зашифрованы, то они применяются в исходном виде. После использования выделенных ЦСФРК ключевых таблиц одноразовых блокнотов таблицы стираются.
За счет создания соответствующей схемы перекодеров ЦСФРК возможна также одновременная связь одного абонента с заданным множеством других пользователей.
На основе перекодеров ЦСФРК, представленных в виде «коммутаторов» шифров, можно создавать сложные сетевые системы шифрованной связи. Каждый узел коммутации, соединенный с другими перекодерами сети, обеспечивает связь абонентов своей подсети с абонентами любого другого узла коммутации с использованием одноразовых ключей. При этом между любыми абонентами подсети поддерживается связь с абсолютной стойкостью шифрования с применением нескольких перекодеров — по числу задействованных в организации связей в ЦСФРК. Именно такая система легла в основу тестовой сети засекреченной мобильной связи.
Важнейшей областью применения системы с абсолютной стойкостью шифрования могут быть компьютерные стохастические системы [4], обеспечивающие комплексную защиту компьютеров и сетей от программных закладок и вирусов с гарантированным уровнем стойкости. Для достижения такого уровня стойкости в каждый компьютер вводится локальный ЦСФРК, взаимодействующий с системным ЦСФРК для обеспечения функций шифрования передачи, хранения и обработки программ и данных в зашифрованном виде с абсолютной стойкостью. При этом системный и локальный ЦСФРК решают задачи взаимодействия зашифрованных различными одноразовыми ключами программ и данных без раскрытия их содержания, поэтому выполнение программ, информационно-логическая обработка данных и арифметические вычисления могут быть реализованы в зашифрованном виде с абсолютной стойкостью в созданном контуре защиты. Этот контур не имеет точек, уязвимых для информационных атак хакеров, программных закладок и вирусов.
В настоящее время ведутся работы над использованием системы в робототехнике с целью создания «интеллектуальных» роботизированных установок, «общающихся» на естественном языке с абсолютным уровнем защищенности.
Литература
- Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях. Под ред. В. Ф. Шаньгина. - М.: Радио и связь, 1999.
- Введение в криптографию. Под ред. В.В. Ященко. - М.: «ЧеРо», 1999.
- Насыпный В.В. Способ комплексной защиты процесса обработки информации в компьютерных системах и система для осуществления этого способа. Международная заявка на изобретение № PCT/RU 01/00272 от 05.07.2001.
- Владимир Насыпный, Защищенные стохастические системы. «Открытые системы», 2004, № 3.
Владимир Насыпный (nasypny-v@yandex.ru), научный директор НПФ «Стокона» (Москва).