
- •Глава 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. Протокол электронной цифровой подписи
Глава 40.
Электронная цифровая подпись
Ниже использованы материалы следующих работ.
-
Ю.В. Романец, П.А. Тимофеев, В.Ф. Шульгин. Защита информации в компьютерных системах и сетях. М., «Радио и связь»,1999;
-
ГОСТ Р 34.10-94. Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асимметричного криптографического алгоритма.
-
ГОСТ Р 34.11-94. Информационная технология. Криптографическая защита информации. Функция хэширования.
-
Лебедев А. Нужны ли «шифровальные средства» // Банковские технологии. – 1997. –Январь.– С. 60–66.
-
Лебедев А. Платежные карточки. Новые возможности, проблемы и тенденции // Банки и технологии. – 1997. – № 6. – С. 36-41.
-
Boyar J., Chaum D., Damgard I. Convertible Undeniable Signature // Advances in Cryptology – CRYPTO'90 Proceedings. Springer-Verlag. – 1991. – p. 189-205.
-
Chaum D., van Antwerpen H. Undeniable Signatures // Advances in Cryptology – CRYPTO'89 Proceedings. Springer-Verlag. – 1990. – p. 212-216.
-
Chaum D. Blind Signature Systems // U.S.Patent # 4.759063, 19 Jul 1998.
-
Menezes A.J., van Oorschot P.C., Vanstone S.A. Handbook of Applied Cryptography. CRC Press, 1999. – 816 p.
-
Menezes A.J., van Oorschot P.C., Vanstone S.A. Handbook of Applied Cryptography. CRC Press, 1999. – 816 p.
-
Seberry J., Pieprzyk J. Cryptography. An Introduction to Computer Security. Advances in Computer Science Series. – Prentice Hall of Australia Pty Ltd., 1989.– 375 p.
40.1. Электронная цифровая подпись для аутентификации данных
При обмене электронными документами по сети связи существенно снижаются затраты на обработку и хранение документов, убыстряется их поиск. Но при этом возникает проблема аутентификации автора документа и самого документа, т.е. установления подлинности автора и отсутствия изменений в полученном документе. В обычной (бумажной) информатике эти проблемы решаются за счет того, что информация в документе и рукописная подпись автора жестко связаны с физическим носителем (бумагой). В электронных документах на машинных носителях такой связи нет.
После того как соединение в компьютерной сети (КС) установлено, обеспечивается выполнение следующих требований защиты:
(а) получатель должен быть уверен в подлинности источника данных;
(б) получатель должен быть уверен в подлинности передаваемых данных;
(в) отправитель должен быть уверен в доставке данных получателю;
(г) отправитель должен быть уверен в подлинности доставленных данных.
Для выполнения требований (а) и (б) средством защиты является электронно-цифровая подпись (ЭЦП). Для выполнения требований (в) и (г) отправитель должен получить уведомление о вручении с помощью удостоверяющей почты (certified mail). Средством защиты в такой процедуре является цифровая подпись подтверждающего ответного сообщения, которое в свою очередь является доказательством пересылки исходного сообщения.
Если эти четыре требования реализованы в КС, то гарантируется защита данных при их передаче по каналу связи и обеспечивается функция защиты, называемая функцией подтверждения (неоспоримости) передачи. В этом случае отправитель не может отрицать ни факта посылки сообщения, ни его содержания, а получатель не может отрицать ни факта получения сообщения, ни подлинности его содержания.
Целью аутентификации электронных документов является их защита от всех возможных видов злоумышленных действий, к которым относятся:
-
активный перехват – нарушитель, подключившийся к сети, перехватывает документы (файлы) и изменяет их;
-
маскарад – абонент С посылает документ абоненту В от имени абонента А;
-
ренегатство – абонент А заявляет, что не посылал сообщения абоненту В, хотя на самом деле послал;
-
подмена – абонент В изменяет или формирует новый документ и заявляет, что получил его от абонента А;
-
повтор – абонент С повторяет ранее переданный документ, который абонент А посылал абоненту В.
Указанные виды злоумышленных действий могут нанести существенный ущерб банковским и коммерческим структурам, государственным предприятиям и организациям, частным лицам, применяющим в своей деятельности компьютерные информационные технологии. Естественно потребовать, чтобы электронная подпись обладала свойствами обычной подписи. Их шесть:
-
подписанный документ нельзя изменить,
-
подпись достоверна, она убеждает, что подписавший сознательно подписал документ,
-
подпись неподдельна, она доказывает, что именно подписавший и никто иной сознательно подписал документ,
-
от подписи невозможно отказаться,
-
подпись нельзя использовать повторно, ее нельзя перенести на другой документ,
-
подпись достоверна неограниченное время.
-
Цифровая подпись представляет собой относительно небольшое количество дополнительной цифровой информации, передаваемой вместе с подписываемым текстом.
Система ЭЦП включает две процедуры: 1) процедуру постановки подписи; 2) процедуру проверки подписи. В процедуре постановки подписи используется секретный ключ отправителя сообщения, в процедуре проверки подписи – открытый ключ отправителя.
Напомним
подробнее основную идею создания ЭЦП
с помощью систем открытого шифрования.
Пусть
– открытый алгоритм шифрования
отправителя сообщения А, а
его секретный алгоритм расшифрования.
Для подписи сообщения
А вычисляет
и формирует подписанное сообщение
(m,c).
Для проверки подписи получатель сообщения
Б вычисляет
и сравнивает это значение с m.
Если имеется равенство, то подпись
принимается, в противном случае она
отвергается.
Пусть
– конечное множество сообщений, на
котором определены подписи
на сообщениях
.
Подпись зависит от секретного ключа
.
Например, если
секретный ключ системы RSA,
то
и
.
Однако на практике надо подписывать
сообщения
,
длина которых может быть значительно
больше
в случае RSA
или
в общем случае. Сообщение
может быть разбито на блоки
,
где
.
Каждый из блоков может быть подписан
независимо. Тогда подписанное сообщение
имеет вид
.
Этот способ имеет два существенных
недостатка.
-
Добавление подписи значительно увеличивает длину передаваемого сообщения. В случае RSA длина сообщения увеличивается в два раза.
-
Переставляя блоки
и соответствующие подписи
,
, противник может получить
новых сообщений с правильными подписями.
Поэтому
на практике используют другой способ,
основанный на предварительном сжатии
(хэшировании) того сообщения, которое
должно быть подписано. Значение подписи
вычисляют от полученного хэш-значения
сообщения. Если задана хэш-функция
,
то подпись под сообщением
вычисляется по формуле
.
Задача
противника заключается в подделке
подписи под каким-либо сообщением,
правильная подпись которого ему
неизвестна. Пусть он располагает
подписанным сообщением
,
где
.
Если противник сможет построить сообщение
,
,
для которого
,
то он получает правильную подпись под
сообщением
,
т.е.
.
Однако согласно свойствам хэш-функции
это сделать трудно.
При
анализе ряда систем подписи естественно
предполагать, что противник располагает
некоторым числом пар
при
.
Например, в RSA
противник может располагать парами –
блок шифртекста и соответствующий ему
блок открытого текста, то есть
.
Тогда построив сообщение
такое, что
,
он сможет получить правильную подпись
под сообщением
,
т.е.
.
Однако по свойствам хэш-функции считается,
что это сделать трудно.
Принципиальным моментом в системе ЭЦП является невозможность подделки ЭЦП пользователя без знания его секретного ключа подписывания.
В качестве подписываемого документа может быть использован любой файл. Подписанный файл создается из неподписанного путем добавления в него одной или более электронных подписей.
Каждая подпись, как правило, содержит следующую информацию:
-
дату подписи;
-
срок окончания действия ключа данной подписи;
-
информацию о лице, подписавшем файл (Ф.И.О., должность, краткое наименование фирмы);
-
идентификатор подписавшего (имя открытого ключа);
-
собственно цифровую подпись.
-