- Описание api
- — linux
- Запуск примера на чистом JavaScript (только в Chrome)
- Сборка проекта на примере веб-компонентов (Angular, TypeScript)
- Bower
- License
- Доступные методы
- Зачем это нужно
- Криптопро эцп browser plug-in
- Настройка плагина для firefox (до версии 52):
- Поддерживаемые браузеры
- Установка
- Установка криптопро csp в linux / osx
- Установка криптопро эцп browser plug-in в linux
- Установка сертификатов в linux
Описание api
Для проверки открепленной подписи шлем пост запрос на /vsignf.phpС двума параметрами:
- hash — Хеш документа по GOST`у
- sign — подпись
В ответ прилетит json:Если ошибка до проверки сертификата:
Если проверка прошла:
{
"status":0, // 0 - все хорошо
"data":{
"verify":0, // Проверка 1 - пройдена подпись валидна, 0 - не пройдена подпсись не валидна
"verifyMessage":"сообщение об рошибки с кодом (0x800B010A)",
"signers":[ // подписанты
{
"signingTime":"", //дата подписания
"cert":{ // данные сертификата подписи
"validToDate":"16.05.2022 11:56:29", // Валиден до
"validFromDate":"16.02.2022 11:46:29", // Валиден от
"subjectName":{ // Данные подписанта
"C":"RU",
"CN":"Test"
},
"issuerName":{// Данные УЦ выдавшего сертификат
"CN":"CRYPTO-PRO Test Center 2",
"O":"CRYPTO-PRO LLC",
"L":"Moscow",
"C":"RU",
"E":"support@cryptopro.ru"
},
"certSerial":"120025DA...00025DAA0" // Серийный сертификата
}
}
]
}
}
— linux
Данный пакет проверен на Ubuntu 16.04 x64, до установки необходимо убедиться, что установлены пакеты:
lsb lsb-core alien unzip libssl-devДля установки запустить
Запуск примера на чистом JavaScript (только в Chrome)
- Необходимо запустить локальный веб-сервер (на python или nodejs, etc)
Сборка проекта на примере веб-компонентов (Angular, TypeScript)
в разработке…
Bower
Для корректной работы используйте:
- КриптоПРО CSP (v3.6 ) рекомендуется использование только сертифицированных версий. Инструкция по установке:
- КриптоПРО ЭЦП browser plug-in (v1.5 ). Инструкция по установке:
Затем установите необходимые сертификаты в систему. Инструкция для Linux / OSX.
License
Licensed as MIT. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.
Доступные методы
Список доступных методов можно посмотреть в файле src/apiAsync.js.
Зачем это нужно
Данный контейнер не претендует на истину в последней инстанции.Является больше пособием для развертывания CryptoPro CSP 4 в среде Linux:UbuntuДля продакшена его можно и нужно допиливать.
Криптопро эцп browser plug-in
КриптоПро ЭЦП Browser plug-in предназначен для создания и проверки электронной подписи (ЭП)
на веб-страницах с использованием СКЗИ «КриптоПро CSP».
КриптоПро ЭЦП Browser plug-in позволяет подписывать различные типы данных:
электронный документ;
данные веб-формы;
файл, загруженный с компьютера пользователя;
текстовое сообщение и т.п.
С точки зрения бизнес-функций, плагин позволяет использовать ЭП:
на клиентских порталах;
в системах интернет-банкинга;
в электронных офисах с доступом через web и т.п.
Например: В онлайн-банке подтверждение операции по переводу средств усовершенствованной электронной цифровой подписью обеспечит гарантию того, что счетом распорядился владелец в конкретный (подтвержденный) момент времени и сертификат ключа подписи на момент совершения транзакции был действителен.
КриптоПро ЭЦП Browser plug-in позволяет создавать и проверять как обычную электронную подпись, так и усовершенствованную электронную подпись. Поскольку плагин является частью стандарта применения усовершенствованной электронной цифровой подписи, автоматически решаются задачи:
доказательство момента подписи документа и действительности сертификата ключа подписи на этот момент;
отсутствие необходимости сетевых (онлайн) обращений при проверке подписи;
архивное хранение электронных документов.
Создание и проверка подписи происходят на стороне пользователя.
КриптоПро ЭЦП Browser plug-in распространяется бесплатно.
Настройка плагина для firefox (до версии 52):
После настройки плагина на страницах, запрашивающих работу с ЭП в панели навигации, рядом с url будет кнопка,
позволяющая «разрешить и запомнить» использование установленного плагина.
Перезапустите Firefox, и убедитесь в наличии CryptoPRO Cades plugin (см. Menu -> Addons).
Поддерживаемые браузеры
Список необходимых полифиллов (подключаются самостоятельно):
- Promise
- EventTarget.addEventListener
- Array.prototype.forEach
- Array.prototype.map
Установка
Предполагается что у вас установлен Docker.
Установка криптопро csp в linux / osx
Процесс установки в OSX незначительно отличается от Linux, поэтому описание приведено на примере дистрибутива семейства Debian (x64).
Некоторые команды могут потребовать запуска с sudo.
Названия файлов и директорий могут отличаться из-за различий в версиях.
После загрузки КриптоПРО CSP для нужной платформы, распакуйте архив:
tar -xzvf linux-amd64_deb.tgz
chmod 777 -R linux-amd64_deb/
Запустите скрипт установки:
linux-amd64_deb/install.sh
Проверьте отсутствиеcprocsp-rdr-gui:
Установите дополнительно cprocsp-rdr-gui-gtk:
dpkg -i linux-amd64_deb/cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb
Дополнительная информация по установке
Установка криптопро эцп browser plug-in в linux
Загрузите КриптоПРО ЭЦП browser plug-in и распакуйте его:
mkdir cades_linux_amd64
tar -xzvf cades_linux_amd64.tar.gz -C cades_linux_amd64
Сконвертируйте rpm в deb пакеты при помощи утилиты alien:
Установите пакеты:
dpkg -i cprocsp-pki-cades_2.0.0-2_amd64.deb
dpkg -i cprocsp-pki-plugin_2.0.0-2_amd64.deb
Проверьте наличие файлов плагина:
Установка сертификатов в linux
В OSX процесс схож с Linux.
Подключите USB носитель с ключевыми контейнерами и проверьте результат команды:
Скопируйте ключевой контейнер \.FLASH.sidorov на жесткий диск:
Наличие [ErrorCode: 0x00000000] в завершении каждой команды КриптоПРО говорит о ее успешном выполнении.
Проверьте наличие нового контейнера \.HDIMAGEsidor:
Установите личный сертификат:
Возможно в выводе вы ссылку на сертификат УЦ
При необходимости загрузите сертификат удостоверяющего центра и установите его командой:
После чего, при проверке установленного личного сертификата вы увидите PrivateKey Link: Yes:
/opt/cprocsp/bin/amd64/certmgr -list -store uMy