Криптографический протокол защиты информации в радиоканалах сетевых спутниковых систем с использованием асимметричных алгоритмов

ЗАЩИТА ИНФОРМАЦИИ

УДК 621.396.96

КРИПТОГРАФИЧЕСКИЙ ПРОТОКОЛ ЗАЩИТЫ ИНФОРМАЦИИ В РАДИОКАНАЛАХ СЕТЕВЫХ СПУТНИКОВЫХ СИСТЕМ С ИСПОЛЬЗОВАНИЕМ АСИММЕТРИЧНЫХ АЛГОРИТМОВ

А. А. Корниенко,

доктор техн. наук, профессор

Санкт-Петербургский государственный университет путей сообщения С. В. Штанько,

канд. техн. наук

Военно-космическая академия им. А. Ф. Можайского

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

An approach to the construction of cryptographic protocols for secure information exchange in satellite radio channels using asymmetric algorithms on elliptic curves is described.

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

Среди множества угроз безопасности информации в сетевых спутниковых системах можно выделить:

- перехват в радиоканале (контроль трафика);

- воздействие преднамеренных помех;

- несанкционированное декодирование и дешифрование информации;

- информационную перегрузку за счет передачи большого количества фрагментов ложной информации;

- передачу ложной информации (в том числе ложной командно-программной информации), постановку имитирующих помех;

- физическое воздействие на оконечные устройства.

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

В сетевых спутниковых системах целесообразнее использовать асимметричные криптосистемы, которые обладают следующими преимуществами:

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

- использование для защиты информации в сетях с большим количеством абонентов только симметрич-

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

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

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

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

Для построения асимметричных криптоалгоритмов предпочтительнее использовать математические конструкции на эллиптических кривых, как обладающие наибольшей стойкостью и скоростью криптографических преобразований по сравнению с другими типами асимметричных алгоритмов защиты информации [3].

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

п ыл IdK

Пакет данных

Рис. 1. Структура пакета

рем два неотрицательных целых числа а и b, меньшие p и удовлетворяющие условию

4а3 + 27b2(modp) Ф 0.

Эллиптическую кривую (ЭК) над конечным полем Галуа GFp можно представить в виде

Ep(a, b): у2 = x3 + ax + b (modp),

где Ep(a, b) - эллиптическая группа по модулюр, элементами которой (x, у) являются пары неотрицательных чисел, меньших p и удовлетворяющих уравнению кривой, а также точка в бесконечности O.

Операция обращения точки для кривой записывается следующим образом: -(x, у) = (x, -у).

Групповой закон сложения точек P11 вид Pi © P2 = (x3, уз), где

>P2 имеет

ґ \2

у 2 - Уі

-xi;

Уз =

f \ У 2 - Уі

(xi - x3) - Уі.

При Pi = P2 = (xi, Уі) получаем 2Pi = (x2, У2): x _ (3x2 + a)2 ;

Л9 — 0

4y2

У2 -----"(xi - x2) "

2yi

Уі.

Непосредственно из формул видно, что точка в бесконечности получается при удвоении точки Р1 с нулевой координатой у либо при сложении двух различных точек с одинаковой координатой х.

Чтобы построить криптографическую систему, используя ЭК, нужно найти «вычислительную проблему», которую можно использовать в качестве односторонней функции с секретом.

Пусть р - простое число, а О - примитивный элемент или генератор аддитивной циклической подгруппы группы точек ЭК; Р - произвольная точка, принадлежащая данной кривой. Тогда любую точку Р кривой Е(О¥р) можно представить как кратную генератору подгруппы в виде

Р = п х О = (9ФОФ...ФО,

п раз

где п - кратность данной точки генератору подгруппы; «©» - знак групповой операции в группе точек кривой.

Групповой закон сложения точек аддитивной абелевой группы ЭК обладает следующим криптографическим свойством: нахождение числа п по двум заданным элементам группы Р и О при п является вычислительно сложной задачей [2]. Таким образом, групповой закон сложения точек ЭК рассматривается в качестве функции криптографического преобразования.

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

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

На основе примитива генерации общего сеанс-ного ключа Диффи - Хеллмана с использованием конструкций на ЭК был разработан комбинированный алгоритм генерации общего сеансного ключа и поточного шифрования, который сочетает в себе преимущества симметричных и асимметричных криптосистем. В качестве симметричной части предлагается использовать поточное шифрование, обладающее высоким быстродействием. Алгоритм (рис. 2) определяет порядок выработки общего се-ансного ключа на основе протокола Диффи - Хел-лмана [4] с использованием ЭК (асимметричная часть) с последующим шифрованием потока информации методом гаммирования (симметричная часть). Начальные состояния обоих генераторов определяются ключом, полученным в результате алгоритма генерации сеансного ключа. Данный алгоритма позволяет двум абонентам вырабатывать общий сеансный ключ и работать в дальнейшем с использованием быстрого поточного шифра.

Параметры алгоритма:

О¥р - конечное поле простой характеристики р;

Ер(а, Ь) - ЭК над полем О¥р в форме Вейрштрас-са (кривая может быть задана простым О¥р или расширенным О¥^ полем в аффинных либо проективных координатах);

#Е(О¥р) - порядок группы точек кривой;

О - базовая точка - генератор подгруппы;

q - порядок циклической подгруппы;

Н - односторонняя хеш-функция, принимающая значения в множестве двоичных векторов длины 256, определенная стандартом Р 34.11-94.

Указанные параметры должны быть известны всем абонентам КРС, участвующим в информационном обмене.

Алгоритм выработки общего секретного ключа.

1. Абонент А генерирует закрытый ключ - целое число й^1 е [1, q -1] и вычисляет открытый ключ -точку ъА = йА хО, которую передает абоненту В.

2. Абонент В генерирует закрытый ключ - целое число Ъз е [1, q -1] и вычисляет открытый ключ -точку йВ = йВ*. О, которую передает абоненту А.

3. Абонент А вычисляет общий ключ ЪА = ЙВ * К. а абонент В вычисляет общий ключ ЙВ = йВ х йА1.

Выход алгоритма: й - точка, секретный ключ, такая, что

й=Ъа=ЙВ = йВ X ЪА = ЪВ X ЪА =

= йА X (йзВ х О) = йВ X (йзА х О) = йА X йА X О.

Таким образом, оба абонента получают общий секретный ключ й, который определяет начальные состояния генераторов гаммы аппаратуры криптозащиты абонентов. Теперь оба генератора будут вырабатывать одинаковую двоичную псевдослучайную последовательность у = /(й).

Рассмотрим работу непосредственно алгоритма шифрования при передаче информации абонентом А абоненту В.

Вход алгоритма шифрования: М-сообщение.

Выход алгоритма шифрования: С-криптограмма.

Преобразование шифрования:

1) абонент А представляет сообщение М длиной I в виде последовательности бит т£ = {0, 1}, I = 1, ..., I;

2) абонент А складывает биты сообщения по модулю два с битами полученной гаммы: с£ = т;@у;, I = = 1, ..., I.

Вход алгоритма расшифровывания: С-крип-тограмма.

Выход алгоритма расшифровывания: М-сооб-щение.

Преобразование расшифровывания:

1) абонент В складывает биты криптограммы по модулю два с битами гаммы: т1 = с1 + у£, I = 1, ..., I;

2) последовательность т1 преобразуется в сообщение М.

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

Для построения генератора криптографически стойкой ПСП необходима необратимая функция [5]. В качестве такой функции можно использовать умножение точки на число либо сложение в группе точек ЭК. Для получения очередного состояния генератора такая функция использует в качестве аргумента его текущее состояние.

Пусть даны ЭК в форме Вейерштрасса Ер(а, Ь) и базовая точка О. Генератор находится в состоянии, определяемом точкой Р(х, у). Получить следующее состояние генератора можно двумя способами:

Абонент А

Абонент В

Рис. 2. Комбинированный алгоритм генерации общего сеансного ключа и поточного шифрования

Рис. 3. Схемы построения генераторов на ЭК: a - по формуле

Р+1 = Рі + О;

Рі+1 = * X Рг.

Схемы соответствующих генераторов представлены на рис. 3.

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

Рі+і

Рі+і

Р і+1(Хі+1, Уі+1, Zi+1) =

= Рі

Рі+1(Хі+1, Уі+1, %і+1) =

= * х Рі

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

Рг.+1(хг+1’ Уі+1) = (хі X і)mod q х рь(х^ уi),

у = Ф

Рі+і(хі+^ Уі+1) = (хі + і) х Рі(х^ yi), у = Ф(Рі+1). (8) Функция Ф(Рі) преобразует текущее состояние генератора, заданное точкой Рі(хі, уі), в выходную последовательность бит. В качестве такой функции можно использовать хеш-функцию, одну из координат точки либо некоторые их разряды, а также конкатенацию координат:

Ф

Ф

где Н(х) - хеш-функция, принимающая значения в множестве двоичных векторов длины 256 (в соответствии с ГОСТ Р34.11-94).

Комбинируя функции, определяющие выходы и переходы между состояниями генераторов (3)-(12), получаем 32 варианта построения генераторов ПСП. Исследования показывают, что статис-

тические свойства некоторых вариантов построения генераторов на ЭК превосходят статистические свойства классического генератора BBS (Блюма - Блюма-Шуба), основанного на возведении в степень в конечном поле.

Для защиты информации, передаваемой по каналам сетевой спутниковой системы, предлагается использовать протокол аутентификации абонентов и направленного шифрования на основе рассмотренного алгоритма.

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

Протокол предназначен для аутентификации абонентов и организации защищенного информационного обмена между абонентами. Суть данного протокола состоит в том, что информация шифруется первым абонентом А на ключе, полученном с помощью открытого ключа второго абонента B, и криптограмму может расшифровать только абонент, которому она предназначается. Таким образом, при реализации протокола направленного шифрования одновременно происходит аутентификация абонента-получателя. Аутентификация абонента-отправителя осуществляется с помощью процедуры формирования аутентифицирующего информационного блока формируемого им запросного пакета при инициализации протокола направленного шифрования (рис. 4). На рисунке приняты следующие обозначения: ks и йо - пара долговременных ключей криптозащиты (закрытый и открытый соответственно); da и йо - пара сеансных ключей криптозащиты (закрытый и открытый соответственно); r, s - числа, составляющие аутентифицирующий информационный блок; G - точка, примитивный элемент группы точек эллиптической кривой; ПРД - передающее устройство, ПРМ - приемное устройство; ГПСП-1 - генератор псевдослучайной последовательности, предназначенный для генерации сеансных закрытых ключей; ГПСП-2 - генератор псевдослучайной последовательности - гаммы поточного шифрования; Sign и Unsign - блоки выработки и проверки аутентифицирующего информационного блока соответственно.

Основные операции протокола направленного шифрования.

1. Абонент А генерирует с помощью ГПСП-1 пару сеансных ключей df и df = df х G.

2. Абонент А вырабатывает аутентифицирующий блок открытого ключа (RA, SA) = kf(df).

3. Абонент А формирует сообщение (df, RA, SA) и передает его абоненту В.

4. Абонент В, получив сообщение, проверяет правильность аутентифицирующего блока; если

Рис. 4. Схема протокола аутентификации абонентов и направленного шифрования

проверка дала положительный результат, то открытый сеансный ключ абонента А признается

истинным, в противном случае шаги 2-4 повторяются.

5. Абонент В генерирует пару сеансных ключей йВ и йВ = йВ х О.

6. Абонент В вычисляет общий секретный ключ -точку й = йВ х й^А.

7. Абонент В вырабатывает аутентифицирующий блок открытого ключа (ИВ, БВ) = йВ (йВ).

8. Абонент В формирует сообщение (йВ, ИВ, вВ) и передает его абоненту А.

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

10. Абонент А вычисляет общий секретный ключ - точку й = йВ х йА.

11. Абонент А вырабатывает гамму шифра у с помощью генератора ГПСП-2, используя в качестве начального состояния точку й.

12. Абонент А складывает биты сообщения по модулю два с битами полученной гаммы: с£ = т;@у;,

I = 1, ..., I, и передает полученную криптограмму абоненту В.

13. Абонент В, получив криптограмму, складывает биты криптограммы по модулю два с битами гаммы: т\ = с\ + у£, I = 1, ..., I.

Шаги 12 и 13 могут повторяться необходимое число раз для передачи всего запланированного объема информации. Аналогичным образом абонент В может передавать информацию в закрытом режиме работы абоненту А.

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

1. Многоспутниковые сетевые системы: принципы построения, управления и передачи информации: Сб. науч. тр. / ВИККА. СПб., 1998. 166 с.

2. Столлингс В. Криптография и защита сетей: принципы и практика: Пер. с англ. 2-е изд. М.: Издательский дом «Вильямс», 2001. 672 с.

3. Ростовцев А. Г., Маховенко Е. Б. Введение в криптографию с открытым ключом СПб.: Мир и Семья, 2001. 336 с.

4. Иванов М. А. Криптографические методы защиты информации в компьютерных системах и сетях. М.: КУДИЦ-ОБРАЗ, 2001. 368 с.

5. Криптографические методы защиты информации в локальных вычислительных сетях / Под ред. А. В. Дружинина, А. И. Замарина, Ю. Н. Максимова; ВИККА. СПб., 1998. 194 с.

6. ГОСТ Р 34.10 - 2001. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи. М.: Изд-во стандартов, 2001. 24 с.