Подпись документа через CryptoPro в JS

  • Перед тем, как подписывать документ, необходимо выполнить предыдущие шаги ("Создание/Установка сертификатов").
  • Для корректной работы необходимо подключить js файл в html документе:
<script language="javascript" src="cadesplugin_api.js"></script>

Пример простейшего html документа:

<!doctype html>
<html>
<script language="javascript" src="cadesplugin_api.js"></script>
</html>
  • Далее, после запуска html документа, достаточно вставить функцию (и переменные, которые в ней используются) SignCreate(certSubjectName, dataToSign) в консоль. В зависимости от браузера есть 2 версии функции: асинхронная (для Chrome, Safari и т.п.) и синхронная версия (для IE и т.п.). Параметры: certSubjectName - имя субъекта, dataToSign - данные для подписи.
  • Результатом выполнения функции будет подпись в виде строки (синхронная версия) или в виде объекта Promise (асинхронная версия). Для того, чтобы получить подпись в асинхронной версии, достаточно будет вызвать метод then и в рамках этого метода обработать подпись в виде строки (в данном примере подпись будет выведена в консоль браузера).
var thenable = SignCreate("certSubjectName", "Message");
thenable.then(res => console.log(res));