Цифровая подпись

Для решения задачи аутентификации информации используется концепция цифровой, или электронной, подписи. Согласно терминологии, утвержденной Международной организацией по стандартизации (ISO), под термином «цифровая подпись» понимаются методы, позволяющие устанавливать подлинность автора сообщения (документа) при возникновении спора относительно авторства. Основная область применения цифровой подписи — это финансовые документы, сопровождающие электронные сделки, документы, фиксирующие международные договоренности и т. п.

До настоящего времени чаще всего для построения схемы цифровой подписи использовался алгоритм RSA. Как уже отмечалось (см. раздел «Алгоритм RSA»), в основе этого алгоритма лежит концепция Диффи—Хеллмана. Она заключается в том, что каждый пользователь сети имеет свой закрытый ключ, необходимый для формирования подписи, а соответствующий этому секретному ключу открытый ключ, предназначенный для проверки подписи, известе^рвсем другим пользователям сети.

На рис. 1 показана схема формирования цифровой подписи по алгоритму RSA. Подписанное сообщение состоит из двух частей: незашифрованной части, в которой содержится исходный текст T, и зашифрованной части, представляющей собой цифровую подпись. Цифровая подпись S вычисляется с использованием закрытого ключа (D, n) по формуле: S=TDmodn.

Рис. 1. Схема формирования цифровой подписи по алгоритму RSA

Сообщение посылается в виде пары (T, S). Каждый пользователь, имеющий соответствующий открытый ключ (Е, n), получив сообщение, отделяет открытую часть T, расшифровывает цифровую подпись S и проверяет равенство: Т= SEmodn.

Если результат расшифровки цифровой подписи совпадает с открытой частью сообщения, считается, что документ подлинный, не претерпел никаких изменений в процессе передачи, а автором его является именно тот человек, который передал свой открытый ключ получателю. Если сообщение снабжено цифровой подписью, то получатель может быть уверен, что оно не было изменено или подделано по пути. Такие схемы аутентификации называются асимметричными. К недостаткам данного алгоритма можно отнести то, что длина подписи в этом случае равна длине сообщения, что не всегда удобно.

Если помимо проверки целостности документа, обеспечиваемой цифровой подписью, надо обеспечить его конфиденциальность, то после применения к тексту цифровой подписи выполняют шифрование и исходного текста, и цифровой подписи (рис. 2).

Рис. 2. Обеспечение конфиденциальности документа с цифровой подписью

Другие методы цифровой подписи основаны на формировании соответствующей сообщению контрольной комбинации с помощью симметричных алгоритмов типа DES. Учитывая более высокую производительность алгоритма DES по сравнению с RSA, он более эффективен для подтверждения аутентичности больших объемов информации. А для коротких сообщений типа платежных поручений или квитанций подтверждения приема, наверное, лучше подходит алгоритм RSА.