
- •Методы защиты информации в компьютерных технологиях Москва 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-кодирования в коды Боуза-Чодхури-Хоквингема (бчх).
7.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой: [4]ков; [8]ков; [32]ков; [64]коа; [128]ков).
Для вычисления парного сеансового симметричного ключа шифрования-дешифрования по методу Диффи-Хеллмана в метрике заданной эллиптической кривой со стороны абонента «А» необходимо вычислить композицию пяти точек: [4]КОВ; [8] КОВ; [32] КОВ; [64] КОВ; [128]КОВ).
Это подмножество точек заданной эллиптической кривой определяется числовым значением закрытого ключа абонента «А» (КЗА = 236). Число 236 образовано суммой чисел, значения которых образованы по степенным значениям 2n, 236 = 4 + 8 + 32 + 64 + 128.
7. 2. 1. Вычисление композиции точек заданной эллиптической кривой [128]KOВ и [64]KOВ, т.е. вычисление точки [192]КОВ= =[128]KOВ+[64]KOВ.
[128]KOВ = (X128; Y128) = (243; 290); [64]KOВ= (X64; Y64) = (28; 56).
- Вычисление углового коэффициента прямой, проходящей через точки [128]KOВ и [64]KOВ заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 290 mod 293 → 290.
- Вычисляются координаты точки [192]KOA = (X192; Y192):
X192 = (K2 – X128 – X64) mod P = (2902 – 243 – 28) mod 293 = 31 mod 293 → 31.
Y192 = (K*(X128 – X192) – Y128) mod P = (290* (243 – 31) – 290) mod 293 =
= 246 mod 293 → 246.
Следовательно, [192]КОВ = (X192; Y192) = (31; 246), координаты точки [192]КОА определены как X192 = 31; Y192 = 246.
7. 2. 2. Вычисление композиции точек заданной эллиптической кривой [192]KOВ и [32]KOВ, т.е. вычисление точки [224]КОВ= =[192]KOВ+[32]KOВ.
[192]KOВ = (X192; Y192) = (31; 246); [32]KOВ= (X32; Y32) = (84; 39).
- Вычисление углового коэффициента прямой, проходящей через точки [192]KOВ и [32]KOВ заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 173 mod 293 → 173.
- Вычисляются координаты точки [224]KOВ = (X224; Y224):
X224 = (K2 – X192 – X32) mod P = (1732 – 31 – 84) mod 293 = 221 mod 293 → 221.
Y224 = (K*(X192 – X224) – Y192) mod P = (173* (31 – 221) – 246) mod 293 =
= 286 mod 293 → 286.
Следовательно, [224]КОВ = (X224; Y224) = (221; 286), координаты точки [224]КОА определены как X224 = 221; Y224 = 286.
7. 2. 3. Вычисление композиции точек заданной эллиптической кривой [224]KOВ и [8]KOВ, т.е. вычисление точки [232]КОВ= =[224]KOВ+[8]KOВ.
[224]KOВ = (X224; Y224) = (221; 286); [8]KOВ= (X8; Y8) = (292; 17).
- Вычисление углового коэффициента прямой, проходящей через точки [224]KOВ и [8]KOВ заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 87 mod 293 → 87.
- Вычисляются координаты точки [232]KOВ = (X232; Y232):
X232 = (K2 – X224 – X8) mod P = (872 – 221 – 292) mod 293 = 24 mod 293 → 24.
Y232 = (K*(X224 – X232) – Y224) mod P = (87* (221 – 24) – 286) mod 293 =
= 152 mod 293 → 152.
Следовательно, [232]КОВ = (X232; Y232) = (24; 152), координаты точки [232]КОА определены как X232 = 24; Y232 = 152.
7. 2. 4. Вычисление композиции точек заданной эллиптической кривой [232]KOВ и [4]KOВ, т.е. вычисление точки [236]КОВ= =[232]KOВ+[4]KOВ.
[232]KOВ = (X232; Y232) = (24; 152); [4]KOВ= (X4; Y4) = (18; 282).
- Вычисление углового коэффициента прямой, проходящей через точки [232]KOВ и [4]KOВ В заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 76 mod 293 → 76.
- Вычисляются координаты точки [236]KOВ = (X236; Y236):
X236 = (K2 – X232 – X4) mod P = (762 – 24 – 18) mod 293 = 167 mod 293 → 167.
Y236 = (K*(X232 – X236) – Y232) mod P = (76* (24 – 167) – 152) mod 293 =
= 114 mod 293 → 114.
Следовательно, [236]КОВ = (X236; Y236) = (167; 114), координаты точки [236]КОА определены как X236 = 167; Y236 = 114.
В результате выполнения операций удвоения и композиции детерминированного множества точек заданной эллиптической кривой и использования метода Диффи-Хеллмана со стороны абонента «А» вычислен парный, симметричный, секретный ключ шифрования-дешифрования:
КАВ = [КЗА]КОВ mod P = [236]KOB = (X236; Y236) = (167; 114).
В качестве числового значения парного, симметричного, секретного ключа шифрования-дешифрования определяется значение абсциссы точки КАВ заданной эллиптической кривой, значение X236 = 167. Следовательно, для всех последующих расчетов используется значение ключа КАВ = 167, т.е. на стороне абонента «А» вычислен парный, симметричный, секретный ключ по значению своего закрытого ключа асимметричной криптосистемы - КЗА и открытого ключа асимметричной криптосистемы абонента «В» - КОВ, полученного от абонента «В» в открытом виде по открытым канала сетевой телекоммуникационной системы.
Сравнивая результаты вычислений пунктов 5.2.3 и 6.2.4 подтверждается достоверность выполненных операций по определению парного, симметричного, секретного ключа шифрования-дешифрования конфиденциальных сообщений при их обмене между абонентами «А» и «В» по открытым телекоммуникационным каналам в компьютерных технологиях:
КВА = КАВ = 167.
Значение этого открытого ключа было использовано абонентом «В» при шифровании сообщения для абонента «А» (в рассматриваемом примере шифрование сообщения «КРИПТОН» →{'ў# Лyч}). Криптограмма С сформированная на стороне абонента «В» была передана абоненту «А».