- •Глава 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 противник может располагать парами – блок шифртекста и соответствующий ему блок открытого текста, то есть . Тогда построив сообщение такое, что , он сможет получить правильную подпись под сообщением , т.е. . Однако по свойствам хэш-функции считается, что это сделать трудно.
Принципиальным моментом в системе ЭЦП является невозможность подделки ЭЦП пользователя без знания его секретного ключа подписывания.
В качестве подписываемого документа может быть использован любой файл. Подписанный файл создается из неподписанного путем добавления в него одной или более электронных подписей.
Каждая подпись, как правило, содержит следующую информацию:
-
дату подписи;
-
срок окончания действия ключа данной подписи;
-
информацию о лице, подписавшем файл (Ф.И.О., должность, краткое наименование фирмы);
-
идентификатор подписавшего (имя открытого ключа);
-
собственно цифровую подпись.
-