Некоторые алгоритмы с открытым ключом могут быть использованы для подписи документов. Подписывающий генерирует подпись используя свой секретный ключ. А желающий проверить подпись, использует для этого открытый ключ подписавшего.
На практике, алгоритмы с открытым ключом непосредственно для подписи данных не используются, по тем же причинам, что и в случае с шифрованием данных. Вместо этого используется гибридная схема, т.е. алгоритм с открытым ключом используется совместно с хэш-функцией. Для подписи документа сначала вычисляется значение хэш-функции для документа, а затем это значение подписывается секретным ключом автора документа. Для проверки подлинности документа необходимо вычислить его хэш-значение и сравнить с подписанным хэш-значением. Если оба значения совпадают, то подпись верна, иначе документ был изменён.