
- •Методы защиты информации в компьютерных технологиях Москва 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-кодирования в коды Боуза-Чодхури-Хоквингема (бчх).
4.3.2. Вычисление композиций точек удвоения [256]g; [64]g; [16]g; [8]g; [2]g; g заданной эллиптической кривой.
Для вычисления параметра «N» ( N = [К]G = [347]G = G + [2]G + [8]G + [16]G + [64]G + [256]G) при формировании ЭЦП абонент «А» выполняет ряд последовательных операций с полученным множеством точек удвоения генераторной точки G.
4.3.2.1. Вычисление композиции точек [256]G и [64]G; [256]G + [64]G = [320]G = (X320; Y320) . ([256]G = (X256; Y256) = (X256 =3; Y256 =39); [64]G = (X64; Y64) = (X64 =94; Y64 =10)).
- Вычисляется угловой коэффициент «к» прямой, проходящей через точки [256]G и [64]G заданной эллиптической кривой:
к
=
mod
P =
mod
293 = 156 * 75-1
mod 293 =
= 156 * 75291 mod 293 = 156 * 168 mod 293 = 26208 mod 293 = 131 mod 293 → 131, т.е. к = 131.
- Вычисляются координаты точки [320]G = (X320; Y320):
X320 = (к2 – X64 – X256) mod P = (1312 – 195 – 39) mod 293 = (17161 – 195 – 39) mod 293 = 16927 mod 293 = 226 mod 293 → 226.
Y320 = (к * (X256 – X320) – Y256) mod P = (131* (3 – 226) – 39) =
- 29252 mod 293 = -245 mod 293 = (293 – 245) mod 293 = 48 mod 293 → 48.
Следовательно, [320]G = (X320; Y320) = (226; 48), координаты точки [320]G определены как X320 = 226; Y320 = 48.
4.3.2.2. Вычисление композиции точек [320]G и [16]G; [320]G + [16]G = [336]G = (X336; Y336) . ([320]G = (X320; Y320) = (X320 =226; Y320 =48); [16]G = (X16; Y16) = (X16 =28; Y16 =237)).
- Вычисляется угловой коэффициент «к» прямой, проходящей через точки [320]G и [16]G заданной эллиптической кривой:
к
=
mod
P =
mod
293 = - 189 * 198-1
mod 293 =
= -189 * 198291 mod 293 = -189 * 37 mod 293 = - 6993 mod 293 =
-254 mod 293 = (293-254) mod 293 = 39 mod 293 → 39, т.е. к = 39.
- Вычисляются координаты точки [336]G = (X336; Y336):
X336 = (к2 – X16 – X320) mod P = (392 – 28 – 228) mod 293 = 1265 mod 293 =
93 mod 293 → 93.
Y336 = (к * (X320 – X336) – Y320) mod P = (39 * (226 – 93) – 48) mod 293 =
5139 mod 293 = 158 mod 293 → 158.
Следовательно, [336]G = (X336; Y336) = (93; 158), координаты точки [336]G определены как X336 = 93; Y336 = 158.
4.3.2.3. Вычисление композиции точек [336]g и [8]g;
[336]G + [8]G = [344]G = (X344; Y344) . ([336]G = (X336; Y36) = (X336 =93; Y336 =158); [8]G = (X8; Y8) = (X8 =84; Y8 =254)).
- Вычисляется угловой коэффициент «к» прямой, проходящей через точки [336]G и [8]G заданной эллиптической кривой:
к
=
mod
P =
mod
293 =
mod
293 = - 96 * 9-1
mod 293 =
= -96 * 9291 mod 293 = -96 * 228 mod 293 = - 21888 mod 293 =
= -206 mod 293 = (293-206) mod 293 = 87 mod 293 → 87, т.е. к = 87.
- Вычисляются координаты точки [344]G = (X344; Y344):
X344 = (к2 – X8 – X336) mod P = (872 – 84 – 93) mod 293 = 7392 mod 293 =
= 67 mod 293 → 67.
Y344 = (к * (X336 – X344) – Y336) mod P = (87 * (93 – 67) – 158) mod 293 =
= 2104 mod 293 = 53 mod 293 → 53.
Следовательно, [344]G = (X344; Y344) = (67; 53), координаты точки [344]G определены как X344 = 67; Y344 = 53.
4.3.2.4. Вычисление композиции точек [344]g и [2]g;
[344]G + [2]G = [346]G = (X346; Y346) .
([344]G = (X344; Y344) = (X344 =67; Y344 =53); [2]G = (X2; Y2) = (X2 =292;
Y2 =276)).
- Вычисляется угловой коэффициент «к» прямой, проходящей через точки [344]G и [2]G заданной эллиптической кривой:
к
=
mod
P =
mod
293 =
mod
293 =
= 223 * 225-1 mod 293 = 223 * 225291 mod 293 = 223 * 56 mod 293 =
= 12488 mod 293 = 182 mod 293 → 182, т.е. к = 182.
- Вычисляются координаты точки [346]G = (X346; Y346):
X346 = (к2 – X2 – X344) mod P = (1822 – 292 – 67) mod 293 = 32765 mod 293 =
= 242 mod 293 → 242.
Y346 = (к * (X344 – X346) – Y344) mod P = (182 * (67 – 242) – 53) mod 293 =
= -31903 mod 293 = - 259 mod 293 = (293-259) mod 293 = 34 mod 293 → 34.
Следовательно, [346]G = (X346; Y346) = (242; 34), координаты точки [346]G определены как X346 = 242; Y346 = 34.