Поддерживаемая версия async-cadesplugin (fork)
npm install async-cadesplugin-onbasync-cadesplugin (MIT). Цель — поддержка и развитие, совместимый API и актуальная версия файла cadesplugin_api.js.
bash
npm i async-cadesplugin-onb
или
yarn add async-cadesplugin-onb
`
Требования: установленный плагин КриптоПро (cadesplugin) и соответствующая среда (браузер/Windows).
Что изменено по сравнению с оригиналом
- Исправлены имена файлов с кириллической «с» → латинская c (src/certificatesApi.js, src/certificateAdjuster.js) и все импорты.
- Заменён src/lib/cadesplugin_api.js на актуальную версию, предоставленную КриптоПро.
- Упорядочены точки входа и состав публикуемых файлов.
- Сохранена лицензия MIT и атрибуция оригинального проекта.
Быстрый старт
`js
import getCadespluginAPI from 'async-cadesplugin-onb';
/**
* @async
* @function sign
* @description пример создания подписи
*/
async function sign() {
try {
const base64DataToSign = btoa('Hello world');
const api = await getCadespluginAPI();
const certificate = await api.getFirstValidCertificate();
const signature = await api.signBase64(certificate.thumbprint, base64DataToSign);
console.log(signature);
} catch (error) {
console.log(error.message);
}
}
`
Источник примера: оригинальный пакет async-cadesplugin.
API (совместимый с оригиналом)
$3
- about() — выводит информацию о версии плагина и т. д.
- getCertsList() — получает массив активных сертификатов
- getValidCertificates() — получает массив активных и валидных сертификатов
- getFirstValidCertificate() — получает первый активный и валидный сертификат
- currentCadesCert(thumbprint) — получает сертификат по thumbprint
- getHash(base64) — получает хэш по ГОСТ 34.11-2012 512
- signHash512(thumbprint, hash, signOption) — подписывает хэш ГОСТ 34.11-2012 512
- coSignHash512(thumbprint, hash, signature, signOption) — параллельная подпись ГОСТ 34.11-2012 512
- signHash256(thumbprint, hash, signOption) — подписывает хэш ГОСТ 34.11-2012 256
- coSignHash256(thumbprint, hash, signature, signOption) — параллельная подпись ГОСТ 34.11-2012 256
- getCert(thumbprint) — получает сертификат по thumbprint с методами парсинга
- signBase64(thumbprint, base64, type) — подписать строку в формате base64
- signXml(thumbprint, xml, cadescomXmlSignatureType) — подписать строку в формате XML
- verifyBase64(signedMessage, base64) — проверить подпись строки в формате base64
$3
- signFile(thumbprint, base64, type, signOption) — подпись файла в base64
- getSignatureInfo(signedMessage, hash) — извлечение информации о подписи
$3
- friendlySubjectInfo() — распаршенная информация о subjectInfo
- friendlyIssuerInfo() — распаршенная информация о issuerInfo
- friendlyValidPeriod() — распаршенные даты validPeriod
- possibleInfo(subjectIssuer) — формирует ключи/значения для subjectInfo или issuerInfo
- friendlyDate(date) — формирует дату
- isValid() — проверяет валидность сертификата
$3
- parseSubject() — распарсить subject
- parseIssuer() — распарсить issuer
Списки и описания API основаны на оригинальном README async-cadesplugin.
Лицензия
MIT — лицензия сохранена от оригинального проекта. См. файл LICENSE`.