- •Глава 36. Схемы шифрования rsa, Эль Гамаля, Полига-Хеллмана
- •Часть 5. Шифры с открытым ключом шифрования
- •Глава 36.
- •36.1. Основные понятия модулярной арифметики
- •Основные способы нахождения обратных величин a–1 1 (mod n).
- •36.2. Криптосистема шифрования данных rsa
- •X((Pх)) y (modQ).
- •36.3. Схема шифрования Эль Гамаля
- •36.4. Схема шифрования Полига-Хеллмана
- •Глава 37.
- •Глава 38.
- •38.1. Основные принципы построения протоколов идентификации и аутентификации
- •Доказательство проверяемого a:
- •38.3. Типовые схемы идентификации и аутентификации пользователя информационной системы
- •38.4. Особенности применения пароля для аутентификации пользователя
- •38.5. Взаимная проверка подлинности пользователей
- •38.6. Протоколы идентификации с нулевой передачей знаний
- •38.7. Упрощенный вариант схемы идентификации с нулевой передачей знаний. Протокол Фиата-Шамира
- •38.8. Параллельная схема идентификации с нулевой передачей знаний (с нулевым раскрытием)
- •38.9. Модифицированный протокол Фиата-Шамира
- •38.10. Схема идентификации Шнорра
- •38.11. Схема идентификации Гиллоу-Куискуотера
- •38.12. Способ проверки подлинности, где не требуется предъявлять секретный пароль
- •38.13. Проверка подлинности с помощью систем шифрования с открытым ключом
- •38.14. Биометрическая идентификация и аутентификация пользователя
- •Глава 39.
- •39.1. Основные понятия
- •39.4. Однонаправленные хэш-функции
- •Схемы безопасного хэширования, у которых длина хэш-значения равна длине блока
- •39.5. Отечественный стандарт хэш-функции
- •Глава 40.
- •40.1. Электронная цифровая подпись для аутентификации данных
- •40.2. Алгоритмы электронной цифровой подписи
- •40.3. Алгоритм цифровой подписи rsa
- •Обобщенная схема цифровой подписи rsa
- •40.4. Недостатки алгоритма цифровой подписи rsa
- •40.5. Алгоритм цифровой подписи Эль – Гамаля
- •40.6. Цифровая подпись Эль-Гамаля
- •40.7. Особенности протокола Эль-Гамаля
- •40.8. Алгоритм цифровой подписи dsa
- •40.10. Цифровые подписи с дополнительными функциональными свойствами
- •40.11. Алгоритм неоспоримой цифровой подписи д.Чома
- •40.12. Протокол подписи, позволяющий отправителю сообщения не предоставлять право получателю доказывать справедливость своей подписи
- •Глава 41.
- •41.1. Генерация ключей
- •41.2. Концепция иерархии ключей
- •41.3. Распределение ключей
- •41.4. Протокол аутентификации и распределения ключей для симметричных криптосистем
- •41.5. Протокол для асимметричных криптосистем с использованием сертификатов открытых ключей
- •41.6. Использование криптосистемы с открытым ключом для шифрования и передачи секретного ключа симметричной криптосистемы
- •Длины ключей для симметричных и асимметричных криптосистем при одинаковой их криптостойкости
- •41.7. Использование системы открытого распределения ключей Диффи-Хеллмана
- •41.8. Протокол skip управления криптоключами
- •Глава 42.
- •42.1. Основные понятия конечных полей
- •42.2. Криптографические протоколы. Протокол Диффи-Хеллмана
- •42.3. Протокол электронной цифровой подписи
Доказательство проверяемого a:
АВ: y=Ek (tA|| id(B))
Проверка принятого сообщения y’ проверяющим B:
В: (t|| i))=Dk(y’), удостоверение, что t=t A T, и i=id(B).
Вследствие трудности синхронизации часов передающей и принимающей стороны интервал T не может быть очень малым. Поэтому технически оснащенный противник имеет возможность после перехвата сообщения y идентифицировать себя для другого участника C, изменив часть id(B) этого кода. Это можно сделать, если, например, шифрование осуществляется наложением гаммы.
Пример односторонней идентификация с использованием случайных чисел zВ.
Запрос проверяющего B (пересылка случайного числа):
В А: zВ.,
Доказательство проверяемого A (ответ):
АВ: y=Ek(zВ||id(B))
Проверка принятого сообщения y’ проверяющим B:
В: (z||i)=Dk(y’), удостоверение, что z = zВ и i=id(B).
Пример взаимной идентификации с использованием случайных чисел.
Запрос проверяющего B (пересылка случайного числа):
ВА: zВ.,
Доказательство проверяемого А (ответ-запрос):
АВ: y=Ek(zА||z'В|| id(B)),
Проверка y’ проверяющим B :
B:( z1||z2||i)= Dk(y'), удостоверение, что: z2= zВ., i=id(B).
Доказательство проверяемого В (ответ):
В А: y=Ek(z1||zВ),
Проверка проверяющим A :
A: (z1’||z2’)= Dk(y'), удостоверение, что z1’= zА, z2’=z'В.
Идентификация с использованием асимметричных криптосистем. Теперь опишем несколько примеров протоколов сильной идентификации в асимметричных криптосистемах
Пример
идентификации
расшифрованием запроса, зашифрованного
на открытом ключе
абонента
А.
Запрос от проверяющего В:
ВА:
h(zB),
id(B), y=
(zB
||id(B)).
Проверка запроса проверяемым A:
A:
h',
i’,
(z||i)=
(y’),
удостоверение, что h(z)=h',
i=i’,
Доказательство проверяемого А (ответ):
AB:z.
Проверка проверяющим B:
B: z’, удостоверение, что z'=zB.
Примечание:
проверяемый A
доказал проверяющему B,
что он владеет ключом расшифрования
.
При этом проверяемый имеет возможность
учитывать запросы и фиксировать случаи
их повторного поступления.
Пример
идентификации зашифрованием запроса
секретным ключом
.
Запрос от проверяющего B
BA: z B.
Доказательство проверяемого A:
A:
AB:
y=D
(z’B).
Проверка проверяющим B:
B:
z=
E
(y’),
удостоверение, что z= zA.
Недостаток:
C может получить от A
зашифрованное на ключе
выгодное
для С сообщение z С
(например, заархивированное долговое
обязательство A).
Устраняется использованием хэш-функции:
Запрос от проверяющего B
BA:
состоящий в том, что B намерен связаться с A.
Доказательство проверяемого A:
A:
AB:
y=D
((M||h(M))),
где М – любое сообщение.
Проверка проверяющим B:
B:
(m||h)=
Е
(y’)
, удостоверение, что h= h(m).
Напомним, что протокол аутентификации протокол, идентификации, гарантирующий целостность информации по источнику, содержанию и по времени создания.
Аутентификация с использованием симметричных криптосистем. Заметим, что при передаче зашифрованного сообщения с предварительно добавленным идентификатором источника, целостность данных не гарантируется. Аутентификация источника проводят с использованием ключевой хэш-функции и симметричного шифрования. Можно, например, использовать одну из следующих форм передаваемого сообщения:
,
,
.
При
этом ключи шифрования k1
и k2
должны быть независимыми, а алгоритмы
шифрования и вычисления хэш-функций
,
должны иметь существенные различия.
38.2. Аутентификация с использованием ассиметричной криптосистемы и кода аутентификации сообщения ( останов векчерники 08.09.11)
Рассмотрим
протокол передачи открытого ключа
по открытому каналу от В к А с целью
последующей передачи от A
к В ключа k
симметричной системы. Под Кодом
Аутентификации Сообщения
(КАС) понимается: (h(M||k)),
где М – сообщение h
– функция хэширования, k
– секретный ключ. При этом протокол,
защищенный от вмешательства постороннего
участника имеет вид:
Передача сертификата открытого ключа стороной B:
BA:
<сертификат
>,
y=D
(M||h(M)),
Проверка
стороной А: А: (m||h)=E
(y') , удостоверение, что h=h(m), удостоверение
подлинности сообщения <сертификат
>.
Теперь
А может передать для В сообщение x=k
на ключе
:
AB:
y=D
(k).
После получения этого сообщения стороной B как А, так и В имеют общий секрет х=k и могут использовать его в качестве ключа симметричной системы для проверки подлинности сообщений:
BA: y=Ek(M||(h(M||k)),
A: (m||h)=Dk(y), удостоверение, что h=h(m||k).
