
- •Модулярная арифметика
- •Электронная подпись и хэш функция Однонаправленные хэш-функции
- •Основы построения хэш-функций
- •Однонаправленные хэш-функции на основе симметричных блочных алгоритмов
- •Гост р 34.11-2012. Информационная технология. Криптографическая защита информации. Функция хэширования
- •Гост р 34.10-2012
- •Область применения
- •История
- •Описание
- •Общие положения
- •Назначение и применение эп
- •История возникновения
- •Алгоритмы
- •Требования к электроннойой подписи
- •1. Проблема аутентификации данных и электронная цифровая подпись
- •Использование хэш-функций
- •Симметричная схема
- •Асимметричная схема
- •Виды асимметричных алгоритмов
- •Перечень алгоритмов эп
- •Цифровые подписи на основе шифрсистем с открытыми ключами
- •Цифровая подпись Фиата — Шамира
- •Подписи eiGamal
- •Подпись документа с помощью криптографии с открытыми ключами
- •Метки времени
- •Подпись документа с помощью криптографии с открытыми ключами и однонаправленных хэш-функций
- •Федеральный закон Российской Федерации от 6 апреля 2011 г. N 63-фз
- •6. Владелец квалифицированного сертификата обязан:
Подпись документа с помощью криптографии с открытыми ключами
Существуют алгоритмы с открытыми ключами, которые можно
использовать для цифровых подписей. В некоторых алгоритмах - примером
является RSA - для шифрования может быть использован или открытый, или
закрытый ключ. Зашифруйте документ своим закрытым ключом, и вы
получите надежную цифровую подпись. В других случаях - примером
является DSA - для цифровых подписей используется отдельный алгоритм,
который невозможно использовать для шифрования. Эта идея впервые была
изобретена Диффи и Хеллманом и в дальнейшем была расширена и
углублена в других работах. Основной протокол прост:
(1) Отправитель шифрует документ своим закрытым ключом, таким образом, подписывая его.
(2) Отправитель посылает подписанный документ получателю.
(3) Получатель расшифровывает документ, используя открытый ключ
отправителя, таким образом проверяя подпись.
Такая подпись соответствует всем требованиям:
1. Эта подпись достоверна. Когда получатель расшифровывает
сообщение с помощью открытого ключа отправителя, происходит проверка авторства сообщения.
2. Эта подпись неподдельна. Только отправитель знает свой закрытый ключ.
3. Эту подпись нельзя использовать повторно. Подпись является функцией документа и не может быть перенесена на другой документ.
4. Подписанный документ нельзя изменить. После любого изменения
документа подпись не сможет больше подтверждаться открытым ключом
отправителя.
5. От подписи невозможно отказаться.
Метки времени
На самом деле, при определенных условиях получатель может повторно использовать документ и подпись совместно.
Поэтому в цифровые подписи часто включают метки времени. Дата и
время подписания документа добавляются к документу и подписываются
вместе со всем содержанием сообщения. Таким образом, использовать
документ повторно становится невозможно.
Подпись документа с помощью криптографии с открытыми ключами и однонаправленных хэш-функций
На практике алгоритмы с открытыми ключами часто недостаточно
эффективны для подписи больших документов. Для экономии времени протоколы цифровой подписи нередко используют вместе с однонаправленными хэш-функциями. Отправитель подписывает не документ, а значение хэш-функции для данного документа. В этом протоколе однонаправленная хэш-функция и алгоритм цифровой подписи согласовываются заранее .
(1) Отправитель получает значение однонаправленной хэш-функции для документа.
(2) Отправитель шифрует это значение своим закрытым ключом, таким
образом подписывая документ.
(3) Отправитель посылает получателю документ и подписанное значение хэш-функции.
(4) Получатель получает значение однонаправленной хэш-функции для
документа, присланного отправителем. Затем, используя алгоритм цифровой
подписи, он расшифровывает подписанное значение хэш-функции с
помощью открытого ключа отправителя. Если подписанное значение хэш-
функции совпадает с рассчитанным, подпись правильна.
Скорость заметно возрастает и, так как вероятность получить для двух
различных документов одинаковое 160-битное значение хэш-функции
cоставляет только один шанс из 2160, можно безопасно приравнять подпись
значения хэш-функции и подпись документа. Должна использоваться только
однонаправленная хэш-функция, иначе создать разные документы с одним и
тем же значением хэш-функции нетрудно, и подпись одного документа
приведет к ошибочной подписи сразу многих документов.
У протокола есть и другие выгоды. Во-первых, подпись может быть отделена от документа. Во-вторых, значительно уменьшаются требования к объему памяти получателя, в котором хранятся документы и подписи. Архивная система может использовать этот протокол для подтверждения существования документов, не храня их содержания. В центральной базе данных могут храниться лишь значения хэш-функции для файлов. Вовсе не нужно просматривать файлы, пользователи помещают свои значения хэш-функции в базу данных, а база данных хранит эти значения, помечая их временем получения документа. Если в будущем возникнет какое-нибудь разногласие по поводу автора и времени создания документа, база данных сможет разрешить его при помощи хранящегося в ней значения хэш-функции.