
- •Методы защиты информации в компьютерных технологиях Москва 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-кодирования в коды Боуза-Чодхури-Хоквингема (бчх).
5.1.6. Вычисление точки [64]g , как результат удвоения точки [32]g:
- вычисление углового коэффициента касательной в точке [32]G = (X32; Y32) = (243; 3)
K = mod P = mod 293 = 177 mod 293 → 177.
- вычисление координат точки [64]G = (X64; Y64)
X64 = (K2 – 2X32) mod P = (1772 - 2*243) mod 293 = 78 mod 293 → 78;
Y64 = (K*(X32 – X64) – Y32) mod P = (177*(243 – 78) – 3) mod 293 =
= 195 mod 293 → 195.
Следовательно, [64]G = (X64; Y64) = (78; 195), координаты точки [64]G определены как X64 = 78; Y64 = 195.
5.1.7. Вычисление точки [128]g , как результат удвоения точки [64]g:
- вычисление углового коэффициента касательной в точке [64]G = (X64; Y64) = (78; 195)
K = mod P = mod 293 = 152 mod 293 → 152.
- вычисление координат точки [128]G = (X128; Y128)
X128 = (K2 – 2X64) mod P = (1522 - 2*78) mod 293 = 94 mod 293 → 94;
Y128 = (K*(X64 – X128) – Y64) mod P = (152*(78 – 94) – 195) mod 293 =
= 10 mod 293 → 10.
Следовательно, [128]G = (X128; Y128) = (94; 10), координаты точки [128]G определены как X128 = 94; Y128 = 10.
5.2. Вычисление композиций различных точек удвоения заданной эллиптической кривой ( [2]g; [4]g; [16]g; [32]g; [128]g ).
Для вычисления открытого ключа абонента В необходимо использовать пять следующих точек [2]G; [4]G; [16]G; [32]G; [128]G. Это подмножество точек определяется числовым значением секретного ключа абонента В КЗВ = 182. Число 182 определяется композицией точек подмножества 182 = 2 + 4 + 16 + 32 + 128. В свою очередь, [КЗВ]G = [182]G = [2]G + [4]G + [16]G + [32]G + [128]G.
5.2.1. Вычисление композиции точек [128]G и [32]G ( [128]G + [32]G = [160G] ):
( [128]G = (X128; Y128) = (94; 10); [32]G = (X32; Y32) = (243; 3)).
- Вычисление углового коэффициента прямой, проходящей через точки [128]G и [32]G заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 173 mod 293 → 173.
- Вычисляются координаты точки [160]G = (X160; Y160):
X160 = (K2 – X128 – X32) mod P = (1732 – 94 – 243) mod 293 = 292 mod 293 → 292.
Y160 = (K*(X128 – X160) – Y128) mod P = (173* (94 – 292) – 10) mod 293 =
= 17 mod 293 → 17.
Следовательно, [160]G = (X160; Y160) = (292; 17), координаты точки [160]G определены как X160 = 292; Y160 = 17.
5.2.2. Вычисление композиции точек [160]G и [16]G ( [160]G + [16]G = [176]G ):
( [160]G = (X160; Y160) = (292; 17); [16]G = (X16; Y16) = (28; 237)).
- Вычисление углового коэффициента прямой, проходящей через точки [160]G и [16]G заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 48 mod 293 → 48.
- Вычисляются координаты точки [176]G = (X176; Y176):
X176 = (K2 – X160 – X16) mod P = (482 – 292 – 28) mod 293 = 226 mod 293 → 226.
Y176 = (K*(X160 – X176) – Y160) mod P = (48* (292 – 226) – 17) mod 293 =
= 221 mod 293 → 221.
Следовательно, [176]G = (X176; Y176) = (226; 221), координаты точки [176]G определены как X176 = 226; Y176 = 221.
5.2.3. Вычисление композиции точек [176]G и [4]G ( [176]G + [4]G = [180]G ):
( [176]G = (X176; Y176) = (226; 221); [4]G = (X4; Y4) = (86; 71)).
- Вычисление углового коэффициента касательной прямой, проходящей через точки [176]G и [4]G заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 22 mod 293 → 22.
- Вычисляются координаты точки [180]G = (X180; Y180):
X180 = (K2 – X176 – X4) mod P = (222 – 226 – 86) mod 293 = 172 mod 293 → 172.
Y180 = (K*(X176 – X180) – Y176) mod P = (22* (226 – 172) – 221) mod 293 =
= 88 mod 293 → 88.
Следовательно, [180]G = (X180; Y180) = (172; 88), координаты точки [180]G определены как X180 = 172; Y180 = 88.
5.2.4. Вычисление композиции точек [180]G и [2]G ( [180]G + [2]G = [182]G ):
[180]G = (X180; Y180) = (172; 88); [2]G = (X2; Y2) = (292; 276).
- Вычисление углового коэффициента касательной прямой, проходящей через точки [180]G и [2]G заданной эллиптической кривой:
K
=
mod
P =
mod
293 = 109 mod 293 → 109.
- Вычисляются координаты точки [182]G = (X182; Y182):
X182 = (K2 – X180 – X2) mod P = (1092 – 172 – 292) mod 293 = 283 mod 293 → 283.
Y182 = (K*(X180 – X182) – Y180) mod P = (109* (172 – 283) – 88) mod 293 =
= 119 mod 293 → 119.
Следовательно, [182]G = (X182; Y182) = (283; 119), координаты точки [182]G определены как X182 = 283; Y182 = 119.
Таким образом, значение открытого ключа абонента В определится как КОВ = [КЗВ]G = [182]G = (X182; Y182) = (283; 119) при значении закрытого (секретного) ключа абонента В равного КЗВ = 182.