Как работает Электронно Цифровая Подпись

Много-много лет назад, работая админом на одном из градообразующих предприятий российской глубинки, мне пришлось впервые столкнуться с понятием «электронно-цифровая подпись» (далее ЭЦП).
В головах руководства, на тот момент, укоренилась мысль, что ЭЦП — это обычная подпись, отсканированная и добавляемая на все документы, которые должны быть «подписаны».

Давайте разбёрмся, что же такое ЭЦП и как она работает.

Для работы с ЭЦП нам, прежде всего, необходим цифровой сертификат и закрытый ключ.

Сначала, нам необходимо установить ЭЦП под документом.
Установка ЭЦП происходит в два шага:
1. Берём документ, который мы хотим подписать и вычисляем хэш от этого документа. (Упрощённо, хэш — это односторонняя математическая функция преобразования документа произвольной длинны, в документ фиксированной длинны).
2. Затем, этот полученный хэш шифруем нашим закрытым ключом.
Установка электронно-цифровой подписи

Теперь документ, с прикреплённой к нему ЭЦП и нашим сертификатом, отправляем получателям.
Отправляем подписанный документ

Получив подписанный документ, нам необходимо проверить подпись — действительна она или нет.
Проверка ЭЦП происходит несколько сложнее:
1. Берём документ, подпись под которым необходимо проверить, вычисляем хэш от этого документа.
2. Берём цифровой сертификат пользователя, который подписал документ и прикреплённую к документу ЭЦП (которая является зашифрованым на закрытом ключе подписсанда хэшом оригинального документа) и расшифровываем с помощью открытого ключа.
Таким образом, у нас есть два хэша — тот, который мы вычислили сами и тот, который мы получили вместе с документом и расшифровали открытым ключом подписанта.
3. Теперь сравниываем эти хэши. Если хэши совпадают, значит подпись действительна, если хэши различаются, значит подпись неделйствительна.
Проверка электронно-цифровой подписи

В заключении определим, что нам даёт использование цифровой подписи:
1. Неизменяемость в процессе передачи или хранения — если документ был изменён, то хэш, который мы вычислим, и который был прикрёплён к документу, буду разные, следовательно, подпись будет неделйстительная, из чего можно сделать вывод, что документ был изменён;
2. Неотказуемость от авторства — если подпись верна, значит подписант, сертификат (точнее открытый ключ из сертификата) которого используется для расшифрования хэша и является автором документа;

Для того, чтобы было невозможно подделать ЭЦП, закрытый ключ должен быть в единственном экземпляре и доступ к нему должен быть только у владельца. Это можно реализовать используя смарт-карты, но это уже совсем другая история.

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.