async-cadesplugin-onb
v0.2.0
Published
Поддерживаемая версия async-cadesplugin (fork)
Maintainers
Readme
async-cadesplugin-onb
Форк пакета async-cadesplugin (MIT). Цель — поддержка и развитие, совместимый API и актуальная версия файла cadesplugin_api.js.
- Оригинальный пакет: async-cadesplugin на npm
- Домашняя страница оригинала: github.com/mrr000/cadesplugin-crypto-pro-api
Установка
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 и атрибуция оригинального проекта.
Быстрый старт
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 (совместимый с оригиналом)
Основные функции
about()— выводит информацию о версии плагина и т. д.getCertsList()— получает массив активных сертификатовgetValidCertificates()— получает массив активных и валидных сертификатовgetFirstValidCertificate()— получает первый активный и валидный сертификатcurrentCadesCert(thumbprint)— получает сертификат по thumbprintgetHash(base64)— получает хэш по ГОСТ 34.11-2012 512signHash512(thumbprint, hash, signOption)— подписывает хэш ГОСТ 34.11-2012 512coSignHash512(thumbprint, hash, signature, signOption)— параллельная подпись ГОСТ 34.11-2012 512signHash256(thumbprint, hash, signOption)— подписывает хэш ГОСТ 34.11-2012 256coSignHash256(thumbprint, hash, signature, signOption)— параллельная подпись ГОСТ 34.11-2012 256getCert(thumbprint)— получает сертификат по thumbprint с методами парсингаsignBase64(thumbprint, base64, type)— подписать строку в формате base64signXml(thumbprint, xml, cadescomXmlSignatureType)— подписать строку в формате XMLverifyBase64(signedMessage, base64)— проверить подпись строки в формате base64
Дополнительно (присутствует в данном форке)
signFile(thumbprint, base64, type, signOption)— подпись файла в base64getSignatureInfo(signedMessage, hash)— извлечение информации о подписи
Custom certs format API
friendlySubjectInfo()— распаршенная информация оsubjectInfofriendlyIssuerInfo()— распаршенная информация оissuerInfofriendlyValidPeriod()— распаршенные датыvalidPeriodpossibleInfo(subjectIssuer)— формирует ключи/значения дляsubjectInfoилиissuerInfofriendlyDate(date)— формирует датуisValid()— проверяет валидность сертификата
Custom signers format API
parseSubject()— распарсить subjectparseIssuer()— распарсить issuer
Списки и описания API основаны на оригинальном README async-cadesplugin.
Лицензия
MIT — лицензия сохранена от оригинального проекта. См. файл LICENSE.
