
- •Методы защиты информации в компьютерных технологиях Москва 2011
- •1. Основные направления криптологии.
- •2. Методы криптографических преобразований с открытым ключом.
- •2.1. Алгоритм нахождения числа по модулю.
- •2.2. Вычисление обратных величин в модулярной алгебре.
- •2.3. Алгоритм операции возведения числа в степень по модулю.
- •2.4. Определение односторонней функции.
- •3. Алгоритмы формирования и функционирования криптографических систем с открытым ключом.
- •3.1. Алгоритм криптографической системы rsa (Райвест-Шамир-Адлеман).
- •3.2. Алгоритм криптографической системы на основе вычисления дискретных логарифмов в конечном поле – алгоритм Эль Гамаля.
- •3.3. Алгоритм функционирования криптографической системы на основе дискретного логарифмирования в метрике эллиптических кривых.
- •3.3.1. Основные операции криптографических преобразований в метрике эллиптических кривых.
- •3.4. Преобразование Диффи-Хеллмана в системах криптографии с открытым ключом.
- •XcxпШифратор
- •3.5. Формирование криптограмм открытых сообщений и их дешифрование с использованием методов дискретного логарифмирования в метрике эллиптических кривых.
- •4.1. Вычисление множества точек удвоения заданной эллиптической кривой.
- •4.1.3. Вычисление координат точки [8]g, как результат удвоения точки [4]g:
- •4.1.4. Вычисление координат точки [16]g , как результат удвоения точки [8]g:
- •4.1.5. Вычисление координат точки [32]g , как результат удвоения точки [16]g:
- •4.1.6. Вычисление координат точки [64]g , как результат удвоения точки [32]g:
- •4.1.7. Вычисление координат точки [128]g , как результат удвоения точки [64]g:
- •4.2. Вычисление композиций точек удвоения [4]g; [8]g; [32]g; [64]g; [128]g заданной эллиптической кривой.
- •5. Алгоритм формирования открытого ключа абонента в.
- •5.1. Вычисление множеств точек удвоения заданной эллиптической кривой.
- •5.1.3. Вычисление точки [8]g, как результат удвоения точки [4]g:
- •5.1.4. Вычисление точки [16]g , как результат удвоения точки [8]g:
- •5.1.5. Вычисление точки [32]g , как результат удвоения точки [16]g:
- •5.1.6. Вычисление точки [64]g , как результат удвоения точки [32]g:
- •5.1.7. Вычисление точки [128]g , как результат удвоения точки [64]g:
- •5.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой ( [2]g; [4]g; [16]g; [32]g; [128]g ).
- •6. Вычисление парного сеансового ключа шифрования-дешифрования для абонентов а и в на основе преобразований Диффи-Хеллмана.
- •6.1. Действие абонента в.
- •6.1.1. Вычисление точки [2]коа , как результат удвоения точки коа:
- •6.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой: [2]коа; [4] коа; [16] коа; [32] коа; [128]коа).
- •7. Дешифрование абонентом а криптограммы, полученной от абонента в с использованием парного секретного симметричного ключа, сформированного по методу Диффи-Хеллмана в метрике эллиптических кривых.
- •7.1. Вычисление удвоений множества точек заданной эллиптической кривой на стороне абонента «а» по значению точки ков, характеризующей открытый ключ абонента «в».
- •7.1.1. Вычисление значения удвоения точки ков – [2]ков:
- •7.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой: [4]ков; [8]ков; [32]ков; [64]коа; [128]ков).
- •7. 3. Дешифрование абонентом «а» криптограммы с, полученной от абонента «в».
- •4. Алгоритмы электронной цифровой подписи.
- •4.1. Алгоритм электронной цифровой подписи rsa (Райвест-Шамир-Адлеман).
- •4.2. Алгоритм электронной цифровой подписи Эль Гамаля (egsa). Egsa (el Gamal Signature Algorithm).
- •4. 3. Алгоритм электронной цифровой подписи dsa (Digital Signature Algorithm).
- •4.4. Алгоритм электронной цифровой подписи гост р34.10-94. (Отечественный стандарт электронной цифровой подписи).
- •4.5. Алгоритм электронной цифровой подписи гост р34.10-2001. (Отечественный стандарт электронной цифровой подписи).
- •3.1. Вычисление множества точек удвоения заданной эллиптической кривой.
- •3.1.3. Вычисление координат точки [8]g, как результат удвоения точки [4]g:
- •3.1.4. Вычисление координат точки [16]g , как результат удвоения точки [8]g:
- •3.1.5. Вычисление координат точки [32]g , как результат удвоения точки [16]g:
- •3.1.6. Вычисление точки [64]g , как результат удвоения точки [32]g:
- •3.1.7. Вычисление точки [128]g , как результат удвоения точки [64]g:
- •3.2. Вычисление композиций точек удвоения [4]g; [8]g; [32]g; [64]g; [128]g заданной эллиптической кривой.
- •4. Действие абонента-отправителя (абонента «а») по формированию электронной цифровой подписи электронного сообщения «м».
- •4.3.2. Вычисление композиций точек удвоения [256]g; [64]g; [16]g; [8]g; [2]g; g заданной эллиптической кривой.
- •4.3.2.3. Вычисление композиции точек [336]g и [8]g;
- •4.3.2.4. Вычисление композиции точек [344]g и [2]g;
- •4.3.2.5. Вычисление композиции точек [346]g и g;
- •4.5. Вычисление параметра электронной цифровой подписи Si .
- •5. Действия абонента «в» по приему и аутентификации подписанного электронного сообщения «м».
- •5.5.2. Вычисление композиции точек [32]g и [8]g;
- •5.5.3. Вычисление композиции точек [40]g и [4]g;
- •5.5.5. Вычисление композиций точек удвоения
- •5.5.5.1. Вычисление композиции точек [128]коа и [64]коа;
- •5.5.5.2. Вычисление композиции точек [192]коа и [32]коа;
- •5.5.5.3. Вычисление композиции точек [224]коа и [2]коа;
- •5.5.5.4. Вычисление композиции точек [u1]g и [u2]коа;
- •5.5.5.5. Сравниваются вычисленные значения параметра «r», принятого в составе эцп от абонента-отправителя и значения абсциссы точки «q» → «xq», вычисленное абонентом получателем.
- •6. Элементы симметричных криптографических преобразований.
- •6.2. Табличное шифрование методом перестановки по ключевому слову или фразе, задающими перестановку.
- •6.3. Табличное шифрование методом двойной перестановки.
- •6.5. Шифры сложной замены.
- •7. Корректирующие коды.
- •6. 1. Блочные коды.
- •6.1.1. Систематические коды.
- •6.1.2. Корректирующие коды с обнаружением искажений, применяемые в системах передачи и обработки информации.
- •7. Windows-кодирование.
- •7.1. Преобразование Windows-кодирования - коды Грея.
- •7.2. Преобразование Windows-кодирования в систематические коды.
- •7.3. Преобразование Windows-кодирования в коды Хэмминга.
- •7.5. Преобразование Windows-кодирования в коды Боуза-Чодхури-Хоквингема (бчх).
Дешифратор
Шифрование
абонентом «А»
Дешифрование
абонентом «В»XcxпШифратор
Дешифратор
Шифратор
Шифрование
абонентом «В»
Дешифрование
абонентом «В»
MВ МВ
Рис. 4. Структурная схема обмена зашифрованными сообщениями с использованием преобразований Диффи-Хеллмана.
Алгоритм автоматического формирования парных симметричных ключей шифрования-дешифрования открытых сообщений на рабочих станциях абонентов корпоративной системы.
1. Абонент А выбирает с помощью генератора случайных чисел случайное число, например, КЗА = 529, которое определяется как секретный ключ абонента А асимметричной криптографической системы и хранится под секретом у абонента А, на защищенном съемном носителе и никому никогда не передается.
2.
После формирования секретного ключа
КЗА
абонент А
на своем компьютере вычисляет значение
открытого ключа КОА
по сформированному секретному ключу
КЗА,
значению модуля «Р» и выбранного целого
числа «а»: КОА
=
mod
P.
В случае примера, рассмотренного в
разделе 3.2. «Алгоритм криптографической
системы Эль Гамаля», эти параметры
определены как: значение модуля как
большого простого числа Р = 977; значение
целого числа а = 378; значение закрытого
(секретного) ключа КЗА
= 529. Исходя из определенных параметров,
значение открытого ключа абонента А
определяется как: КОА
=
mod
Р = 378529
mod
977 = 402 mod
977 → 402.
3. Значения параметров Р = 977; а = 378; КОА = 402 открыто по открытому канала связи передаются абоненту корпоративной системы - абоненту В.
4. Абонент В на своем компьютере, получив открытые параметры
Р = 977; а = 378; КОА = 402, с помощью генератора случайных чисел формирует свой секретный ключ КЗВ, который также никогда никому не передается и хранится у абонента В под секретом на съемном носителе, принимается КЗВ = 484.
5. По сформированному закрытому (секретному) ключу КЗВ = 484 абонент В на основании полученных от абонента А значений чисел
«Р»
= 977 (модуля системы); и «а» = 378
вычисляет значение своего открытого
ключа: КОВ
=
mod
Р = 378484
mod
977 = 820 mod
977 → 820.
6. Абоненты А и В по открытым каналам обмениваются сформированными открытыми ключами КОА = 402 и КОВ = 820.
7. После получения открытого ключа КОВ = 820 от абонента В абонент А на своем компьютере производит вычисление числа:
NA
=
mod
Р . Заменяя в полученной зависимости
формулу вычисления открытого ключа
абонента В -
КОВ
=
mod
Р , получают:
NA
=
mod
Р =
mod
P
В
этом случае, число NA
определяется следующим образом: принятый
от абонента В его открытый ключ
возводится в степень закрытого
(секретного) ключа абонента А
-
КЗА,
и полученное степенное значение
вычисляется по общему модулю Р.
8. После получения открытого ключа от абонента А - КОА = 402 абонент В на своем компьютере производит вычисление числа
NВ
=
mod Р
=
mod P
9. Сравнивая формулы вычислений значений NA и NB, делается вывод об их идентичности, следовательно, NA = NB т.е. на компьютерах обоих абонентов сформировано одно и тоже значение числового выражения, это значение и является парным симметричным ключом шифрования открытых сообщений и дешифрования криптограмм в сеансах передачи конфиденциальных сообщений между абонентами А и В. Этот ключ называется ключом парной связи.
Аналогичным образом поступают все члены корпоративной системы формирования и обмена зашифрованными сообщениями. Такой метод позволил создать симметричные секретные ключи парной связи без передачи абонентам связи по специальным закрытым каналам. Эти парные ключи и используются для шифрования открытых сообщений и дешифрования получаемых криптограмм по сетевым каналам компьютерных технологий. В настоящее время этот метод нашел достаточно широкое применение и в отечественных криптографических системах защиты информации. В, частности, одной из самых распространенных систем защиты электронных документов, использующей для процессов шифрования-дешифрования парные секретные симметричные ключи, сформированные по методу Диффи-Хеллмана, является система «КРИПТО ПРО», имеющая сертификаты ФСБ России. Эта система заняла ведущее место в системах криптографической защиты и аутентификации электронных сообщений во всех государственных и частнопредпринимательских структурах, ее удельный вес по отношению к иным криптографическим системам составляет порядка 90%.
Дополнительно, необходимо отметить, что при такой организации защищенного документооборота резко снимается нагрузка с Центра распределения ключей, т.к. в этом случае парные ключи шифрования-дешифрования автоматически формируются на каждом рабочем месте за счет общих открытых параметров криптографической системы, открытых ключей санкционированных пользователей и собственных секретных ключей каждого пользователя.
Рассмотрим пример формирования парного ключа шифрования-дешифрования между абонентами А и В при заданных открытых параметрах криптографической системы: модуль вычислений Р = 977, параметр
а = 378.
1. Абонент А случайным образом задает значение своего закрытого (секретного) ключа – КЗА = 529.
2. По заданному значению секретного ключа абонент А вычисляет значение своего открытого ключа КОА по принятым для данного временного интервала открытым параметрам, задаваемым администратором безопасности Р = 977 и а = 378 при а < Р.
КОА = mod P = 378 529 mod 977 = 402 mod 977 → 402.
3. Значения параметров Р = 977; а = 378; КОА = 402 открыто передаются абоненту В.
4. Абонент В случайным образом задает значение своего закрытого (секретного) ключа – КЗВ = 484 и вычисляет значение своего открытого ключа – КОВ = mod P = 378484 mod 977 = 820 mod 977 → 820.
Абонент В передает по открытому каналу значение своего открытого ключа КОВ = 820 абоненту А.
Таким образом, абоненты связи обменялись своими открытыми ключами КОА и КОВ асимметричной криптографической системы преобразования открытых сообщений.
5. Далее абонент А после получения открытого ключа КОВ от абонента В вычисляет число NА.
NA = mod Р = 820529 mod 977 = 723 mod 977 → 723.
6. Такое же вычисление производит абонент В на своем компьютере
NВ = mod Р = 402484 mod 977 = 723 mod 977 → 723.
Как видно из полученных результатов у абонентов закрытой связи сформировалось на компьютерах одно и то же число, которое и будет являться парным симметричным ключом шифрования-дешифрования. Причем необходимо отметить, что в случае организации многопользовательской системы обмена конфиденциальными сообщениями, такая методика позволяет формировать сеансы защищенной связи «каждый с каждым» именно за счет автоматического формирования ключей парной связи.
Эти же методические рекомендации из метрики дискретного логарифмирования в конечных полях однозначно переводятся и на криптографические системы, построенные на эллиптических кривых. Решающим правилом такого перехода является замена числа, отображающего ключ шифрования-дешифрования, на точку плоскости эллиптической кривой.
Последующие логико-математические преобразования аналогичны преобразованиям, представленным в разделе «3.3. Алгоритмы функционирования криптографической системы на основе дискретного логарифмирования в метрике эллиптических кривых».