- •1.3. Понятие стационарных случайных процессов и цепей Маркова
- •1.4. Формирование последовательностей со случайной природой
- •1.5.1. Функция инверсии
- •1.5.2. Функция конъюнкции
- •1.5.3. Функция дизъюнкции
- •1.6. Мгновенная относительная частота и первый критерий равномерного распределения элементарных событий
- •1.7. Мгновенная эмпирическая АКФ и второй критерий равномерности для элементарных событий
- •1.8. Мгновенная эмпирическая дисперсия и доверительный интервал для вероятности наблюдения (0,1)-событий
- •2.2. Криптосистема c открытым ключом (RSA)
- •2.3. Электронная криптографическая подпись
- •2.4. Шифросистема Эль-Гамаля
- •2.5. Цифровая криптографическая подпись Эль-Гамаля
- •2.6. Криптографическая подпись Фиат-Шамира
- •2.8. Математическая модель шифра замены
- •2.9. Классификация шифров замены
- •2.11. Композиционный шифр в блочной системе шифрования (DES)
- •2.12. Векторно-матричный симметричный шифр замены
- •3.3. ГПСЧ в задачах инъективного отображения выборки. Алгебраическое преобразование данных
Абонент А решает секретно передать очень важное сообщение 17 абоненту В. Он шифрует сообщение своим первым ключом:
1 175 21 (mod23).
В процессе обмена выполняются действия
2 217 10 (mod23),
3 109 20 (mod23),
4 2019 17 (mod23).
Итак, 17, так как 0 17 23.
В целом, основу данного метода криптографии составляет сравнение ap ap 1 mod p 1 a (mod p), или ax 1 mod p 1 1 (mod p),
позволяющее, в принципе, произвольно выбирать число абонентов и число ключей у каждого абонента.
2.2. Криптосистема c открытым ключом (RSA)
Данный метод не является самостоятельным, так как базируется на пре-
дыдущем алгоритме. RSA – Rivest, Shamir, Adleman.
Пусть абоненты А и В хотят наладить между собой секретный обмен данными с открытым ключом. С этой целью каждый из них независимо друг от друга выбирает два больших простых числа 1, 2 и 1, 2 и находит их произведение, равное A 1 2 и B 1 2 соответственно. После этого определяется функция Эйлера от этих чисел:
|
|
|
A |
|
1 |
1 |
|
2 |
|
1 |
и |
|
|
B |
1 |
|
1 2 |
|
1 |
. |
|
|
|
|
|
|
|
|
|
|
|
Для шифрования сообщений абоненты выбирают свои случайные числа (открытые ключи) из условия
a, A 1, 0 a A 1 1 2 1 ,
b, B 1, 0 b B 1 1 2 1 .
Значения a и b, A и B носят открытый характер и |
размещаются в |
Интернете на заранее оговоренных сайтах. |
|
Далее каждый из абонентов находит свой секретный ключ из сравнений |
|
ax 1 mod A и by 1 mod B , |
(2.5) |
где 0 x A , а 0 y B – секретные ключи, известные только са-
мим пользователям.
При необходимости посылки информации от абонента А к абоненту В текст разделяется на блоки длиной 0 B . После чего каждый блок кодиру-
37
ется в соответствии с правилом
1 b mod B
и передается в сеть.
Абонент В расшифровывает это сообщение, используя свой секретный ключ :
2 1 mod B .
Учитывая, что
2 b mod B ,
имеем равенство 2 , так как b 1 mod ( B) с учетом формулы (2.5).
Отличительной особенностью данного алгоритма по отношению к криптосистеме без передачи ключей является наличие своих модулей ( A) и ( B) для передачи информации у каждого пользователя сети.
Другая особенность метода состоит в использовании больших простых чисел 1, 2 и 1, 2 для формирования произведения A 1 2 и B 1 2, что дает возможность выбирать ключи a и b в широком диапазоне значений и, следовательно, существенно затруднить процесс расшифрования.
2.3. Электронная криптографическая подпись
Криптосистемы c открытым ключом обладают существенным недостатком, а именно: получатель шифрованных данных не имеет информации об отправителе, если абонентов-источников A1,A2,...,An несколько. Этого недостатка лишена шифросистема с электронной криптографической подписью. Сущность данного метода шифрования заключается в следующем.
Пусть имеется сеть передачи информации (рис. 2.1).
Для организации секретной связи каждый из абонентов Аi и банк данных независимо друг от друга выбирают по два достаточно больших простых числа. Пусть 1 и 2 – простые числа банка, а 1,i, 2,i – простые числа абонентов Ai .
Для всех значений i определяются числа ri , i 1,n, как произведения
|
|
R 1 2, |
ri 1,i 2,i. |
|||||
|
|
|
|
|
|
|
|
|
Абонент A1 |
|
|
|
|
Банк (B) |
|
||
(s1,r1) |
|
|
|
|
данных |
|
||
|
|
|
|
|
|
(S,R) |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Абонент A2 |
|
|
|
|
|
|
|
|
(s2, r2) |
|
… |
|
Абонент An |
|||
|
|
|
|
|
(sn, rn) |
Рис. 2.1
38
При этом должно выполняться неравенство R ri.
На следующем этапе все участники связи выбирают случайные числа si из условия
0 S R , |
S, (R) 1, |
0 si ri , |
si, (ri) 1, |
после чего в Интернете размещается таблица открытых ключей
B: S,R
A1:s1,r1 A2 :s2,r2 ..., An :sn,rn,
которая доступна всем желающим.
Далее банк и каждый из абонентов Аi находят свои секретные ключи T и ti из условий
ST 1 mod (R) , |
0 T (R), |
siti 1 mod (ri) , |
0 ti ri . |
Теперь пусть абонент А1 хочет передать информацию абоненту B, при- |
|
чем будем считать, что в данном случае выполняется неравенство R r1, при |
этом используем значения r1,где ,r1 1. Абонент А1 |
шифрует сообщение |
||||||
своим первым секретным ключом, а потом открытым ключом банка: |
|||||||
|
|
t1 |
mod r , |
0 |
r , |
(2.6) |
|
1 |
S |
1 |
1 |
1 |
|||
|
2 |
mod R , |
0 |
2 |
R. |
|
|
|
1 |
|
|
|
|
||
Абонент B, получив шифрованное сообщение 2 , расшифровывает его, |
|||||||
пользуясь сначала своим секретным ключом T : |
|
||||||
|
|
|
3 2T modR , |
0 3 R, |
(2.7) |
а потом открытым ключом s1 абонента A1:
|
|
|
4 |
s1 |
mod r , |
0 |
4 |
r . |
|
|
|||||
|
|
|
|
|
|
3 |
|
|
1 |
|
1 |
|
|
||
Математическое доказательство тождеств (2.6)–(2.7) следует из ряда со- |
|||||||||||||||
отношений, так как |
|
3 2T 1S T 1ST |
|
|
|
|
|
||||||||
|
|
mod R . |
|
(2.8) |
|||||||||||
При 1,R 1 из (2.8) имеем |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
ST 1 mod R |
1 |
mod R . |
|
|
||||||||
|
|
|
1 |
|
|
|
|
|
|
|
|||||
Следовательно, 3 1 |
mod R . |
Учитывая же, |
|
что |
0 3 |
R, |
а также 0 3 |
r1, |
|||||||
окончательно имеем 3 1. |
|
|
|
|
s1 |
|
|
|
|
|
|
|
|
||
Из сравнений 4 |
s |
s |
|
|
t |
s t |
mod r1 при ,r1 1 имеем |
|
|||||||
31 |
11 |
1 |
|
11 |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
s t 1 |
mod r |
|
mod r |
. |
|
|
11 |
|
1 |
|
|
||
|
|
|
|
1 |
|
|
Опять же, при 0 R, а также |
0 r1 окончательно имеем |
4 . |
Причем если полученное сообщение принадлежит смысловым конструкциям используемого языка, то считается, что сообщение прислано абонентом A1.
Пример. Пусть банк данных выбрал свои простые числа 11 и 23, а абонент А значения 7 и 13. Таким образом, r 7 13 91 и R 11 23 253. Банк и абонент выбирают открытые ключи 31 и 5, а числа 71 и 29 – секретные ключи банка и абонента соответственно. Данный факт доказывается тождествами
5 29 1 mod72 , |
72 7 13 , |
31 71 1 mod220 , |
220 11 23 . |
Тогда публикуемая в Интернете таблица будет представлена в виде
Банк данных: S 31, |
R 253. |
Абонент: s 5, r 91.
Абонент A посылает запрос банку в виде сообщения 41. Замечая, что R r, инициатор запроса кодирует посылаемое слово своим секретным ключом 29, а затем открытым ключом банка 31:
1 4129 6 mod 91 ,2 631 39 mod 253 .
Банковская система доступа декодирует сообщение, используя сначала свой секретный ключ, а затем открытый ключ абонента:
3 3971 6 mod 253 ,4 65 41 mod 91 .
Итак, запрос абонента есть число 41.
2.4. Шифросистема Эль-Гамаля
Основу данного способа криптографии составляет малая теорема Ферма, которая используется следующим образом.
Очевидно, что любое сообщение может быть представлено в виде
xy xy 1 |
mod p . |
(2.9) |
Введем обозначения в сравнение (2.9) в соответствии с равенствами
|
x mod p , |
y mod p ,. |
|
(x, p 1) 1, |
(y, p 1) 1. |
Тогда y x 1 |
mod p . |
|
40