- •1. Методы шифрования
- •1.1 Моноалфавитная замена
- •1.1.1. Шифрование с автоключом
- •1.2. Гомофоническая замена
- •1.3. Полиалфавитная замена
- •1.4. Полиграммная замена
- •1.5. Шифрование перестановкой
- •1.6. Гост 28147-89 - отечественный стандарт на шифрование данных
- •1.7. Кодирование информации на основе дерева Хаффмена
- •2. Безопасная передача информации по незащищенным каналам связи
- •2.1. Протокол передачи сообщений на основе шифра Эль-Гамаля
- •2.2. Протокол передачи сообщений на основе технологии Ральфа с. Меркля
- •2.3. Алгоритм шифрования с асимметричными ключами - rsa
- •2.3.1 Описание алгоритма.
- •2.3.2 Операция возведения в степень по модулю.
- •3. Аппаратура защиты информации
- •3.1. Механизмы защиты карты cp8 scot-60
- •4. Вскрытие шифров
- •4.1. Поиск значений p и q шифра rsa(для малых размеров ключа)
- •4.2. Вскрытие шифра перестановки
- •5. Модели защиты доступа к информационным системам
- •5.1. Матричная модель доступа
- •5.2. Модель Белла-Лападулы
- •6. Задания на лабораторные (самостоятельные) работы
- •Содержание отчета
- •Приложения Логарифмы вероятности биграмм в русском тексте
- •Пояснения
- •Библиографический список
- •Дополнительная литература
2.2. Протокол передачи сообщений на основе технологии Ральфа с. Меркля
[32 c.67]
Имеются абоненты X и Y и противник Z.
Предположим, что используется DES алгоритм шифрации с 56 битовым ключом.
Канал связи, по которому отправляются сообщения общедоступен и ничем не защищен.
Абонент X случайным образом выбирает ключ Kx размерностью L<56.
Абонент X отправляет Y значение L и некий параметр CONST.
Абонент X формирует n=2 56-L шифровок Si.
S1=DES(Kx, (ID1, Kxy1, const)),
S2=DES(Kx, (ID2, Kxy2, const)),
.................
Si=DES(Kx, (IDi, Kxyi, const)),
.................
Sn=DES(Kx, (IDn, Kxyn, const)).
Абонент X отправляет Y n шифровок S.
Абонент Y случайным образом выбирает шифровку S и производит взлом шифра имеющимися у него техническими средствами. Шифр считаeтся вскрытым при обнаружении параметра const. Абоненту Y cтановятся известны ID и Kxy.
Абонент Y отправляет параметр ID абоненту X, по которому X определяет ключ шифрования Kxy .
ty=f(L) - среднее время, необходимое абоненту X для взлома ключа,
tz=n/2*f(L) - среднее время, необходимое противнику Z для взлома ключа.
Задача №12. Каким должен быть размер ключа Kx, чтобы противник Z потратил время на взлом ключа Kxy в 32768 (=216)раз больше, чем абонент Y.
|
Номер ответа |
1 |
2 |
3 |
4 |
5 |
|
Результат |
32 |
39 |
40 |
41 |
52 |
Задача №13. Каким должен быть размер ключа Kx, чтобы противник Z потратил время на взлом ключа Kxy в 8 (=23)раз больше, чем абонент Y.
|
Номер ответа |
1 |
2 |
3 |
4 |
5 |
|
Результат |
39 |
40 |
41 |
52 |
53 |
2.3. Алгоритм шифрования с асимметричными ключами - rsa
[26, с. 39; 27, с. 40]
2.3.1 Описание алгоритма.
1. Выбираем два очень больших простых числа p и q.
2. Определяем M=(p-1)*(q-1) и N=p*q.
3. Определяем D взаимопростое с M. (DM). (Расширенный алгоритм Евклида)
4. Определяем E такое, что (E*D)modM=1
5. Назовем (D, N)-открытым ключом, (E,N)-закрытым ключом.
Процедура шифрования/расшифрования выполняется по формуле, где ti и si блоки открытого и шифртекста соответственно.
Пример. Выполним последовательно п. 1-5 генерации ключей.
1. Выберем p=3, q=11.
2. Определим M=20, N=33.
3. Определим D=7.
4. Определим E=3
5. (7,33)-открытый ключ, (3,33)-закрытый ключ.
Пусть открытый текст представлен последовательностью цифр T= 1, 2, 3. Тогда процесс шифрования выглядит следующим образом:
2.3.2 Операция возведения в степень по модулю.
Основная операция этого алгоритма - возведение в степень по модулю, для реализации которой предлагается рекурсивный алгоритм:
ae mod n==f(a, e, n),
f
(a,
e, n)==f(k, a, e, n), где
k=1.
e=0 k mod n, exit; 1
k<n f(k*a, a, e-1, n); 2
f(k-n, a, e , n) 3
Пример: 27 mod 33=f(1, 2, 7, 33)
|
Номер итерации |
Функция |
Правило |
|
1 |
f( 1, 2, 7, 33) |
2 |
|
2 |
f( 2, 2, 6, 33) |
2 |
|
3 |
f( 4, 2, 5, 33) |
2 |
|
4 |
f( 8, 2, 4, 33) |
2 |
|
5 |
f(16, 2, 3, 33) |
2 |
|
6 |
f(32, 2, 2, 33) |
2 |
|
7 |
f(64, 2, 1, 33) |
3 |
|
8 |
f(31, 2, 1, 33) |
2 |
|
9 |
f(62, 2, 0, 33) |
1 |
|
10 |
62 mod 33=29 |
Результат |
При реализации необходимо установить размер стэка.
Задача №14. Известен открытый ключ (e, n)=(23, 143), где n=p*q и предложены несколько вариантов закрытого ключа (d, n), где d взаимно-простое с результатом умножения (p-1)*(q-1):
|
Номер варианта |
Значения ключа |
|
1 |
( 47, 143) |
|
2 |
(167, 143) |
|
3 |
(287, 143) |
|
4 |
(407, 143) |
|
5 |
(527, 143) |
Какие значения закрытого ключа (d, n) допустимы
-
Номер ответа
Результат
все
только первый ключ
только пятый ключ
ни один
только первый и пятый ключ
