
Из нашей статьи вы узнаете:
К сожалению, довольно часто операционная система Windows и «КриптоПро» конфликтуют между собой, что ведет к невозможности «увидеть» ключ ЭЦП и подписать документ. Источники проблем могут быть разные, но их вполне реально оперативно решить.
- Возможные причины с определением контейнера
- Описание окружения
- Основные причины невозможности доступа к ключу JaCarta
- Версия ПО: КриптоПро 4.0.хххх , КриптоПро 5.0.хххх, Linux
- Токены: Любые
- Решение:
- Проверить подпись на документе
- Установка единого клиента JaCarta PKI
- Как решить проблему, что криптопро не видит USB ключ?
- Подпись файлов в macOS
- 1. Выясняем хэш сертификата КЭП
- 2. Подпись файла командой из terminal
- 3. Установка Apple Automator Script
- Не возможно подключиться к службе управления смарт-картами
- Смена PIN-кода контейнера
- 1. Выясняем название контейнера КЭП
- 2. Смена PIN командой из terminal
- Установка и настройка считывателя «КриптоПро»
- Как установить ключ JaCarta
- Что нужно для работы с КЭП под macOS
- Устанавливаем и настраиваем КЭП под macOS
- 1. Устанавливаем КриптоПро CSP
- 2. Устанавливаем драйверы Рутокен
- 3. Устанавливаем сертификаты
- 3.1. Удаляем все старые ГОСТовские сертификаты
- 3.2. Устанавливаем корневые сертификаты
- 3.3. Скачиваем сертификаты удостоверяющего центра
- 3.4. Устанавливаем сертификат с Рутокен
- 3.5. Конфигурируем CryptoPro для работы ссертификатами ГОСТ Р 34.10-2012
- 4. Устанавливаем специальный браузер Chromium-GOST
- 5. Устанавливаем расширения для браузера
- 5.1 КриптоПро ЭЦП Browser plug-in
- 5.2. Плагин для Госуслуг
- 5.3. Настраиваем плагин для Госуслуг
- 5.4. Активируем расширения
- CryptoPro Extension for CAdES Browser Plug-in Расширение для плагина Госуслуг 5.5. Настраиваем расширение КриптоПро ЭЦП Browser plug-in В адресной строке Chromium-Gost набираем: На появившейся странице в список доверенных узлов по-очереди добавляем сайты:
- 6. Проверяем что все работает
- 6.1. Заходим на тестовую страницу КриптоПро
- https://lkipgost.nalog.ru/lk
- Руководство по настройке
- Установка драйверов и ПО для работы с JaCarta PKI
- При установке КриптоПро CSP по умолчанию нужные пакеты для работы с токенами и смарт-картами отсутствуют. /opt/cprocsp/bin/csptest -card -enum Выполняем установку в CSP компонента поддержки JaCarta components for CryptoPro CSP Некоторые компоненты имеют зависимости. Так, например, если попытаться выполнить установку пакета поддержки SafeNet eToken PRO cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm — EMV/Gemalto support module , то получим сообщение о необходимости сначала установить базовый компонент CSP поддержки считывателей cprocsp-rdr-pcsc-64-4.0.9944-5.x86_64.rpm — PC/SC components for CryptoPro CSP readers : zypper install cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm Loading repository data... Reading installed packages... Resolving package dependencies... Problem: nothing provides cprocsp-rdr-pcsc-64 >= 4.0 needed by cprocsp-rdr-emv-64-4.0.9944-5.x86_64 Solution 1: do not install cprocsp-rdr-emv-64-4.0.9944-5.x86_64 Solution 2: break cprocsp-rdr-emv-64-4.0.9944-5.x86_64 by ignoring some of its dependencies Choose from above solutions by number or cancel [1/2/c] (c): c Устанавливаем базовые пакеты поддержки считывателей и ключевых носителей: zypper install cprocsp-rdr-pcsc-64-4.0.9944-5.x86_64.rpm zypper install lsb-cprocsp-pkcs11-64-4.0.9944-5.x86_64.rpm Теперь можно установить модули для работы с остальными видами носителей и компонент GUI: zypper install cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm zypper install cprocsp-rdr-novacard-64-4.0.9944-5.x86_64.rpm zypper install cprocsp-rdr-mskey-64-4.0.9944-5.x86_64.rpm zypper install cprocsp-rdr-gui-gtk-64-4.0.9944-5.x86_64.rpm Проверяем итоговую конфигурацию КриптоПро CSP: zypper search cprocsp Loading repository data... Reading installed packages... Чтобы применить изменения, выполняем перезапуск службы криптографического провайдера и проверяем ее статус: /etc/init.d/cprocsp restart /etc/init.d/cprocsp status Настройка и диагностика КриптоПро CSP Проверим, видит ли криптографический провайдер наш токен и другие доступные типы носителей следующими командами: /opt/cprocsp/bin/amd64/csptest -card -enum -v –v /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -view -f cp1251 Следуя инструкции КриптоПро CSP для Linux. Настройка , выполняем его регистрацию в криптографическом провайдере: /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add "Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00" Чтобы выполнить требования Формуляра, Правил пользования и Руководства администратора безопасности КриптоПро CSP: Использование СКЗИ «КриптоПро CSP» версии 4.0 с выключенным режимом усиленного контроля использования ключей не допускается. Включение данного режима описано в документах ЖТЯИ.00087-01 91 02. Руководство администратора безопасности. Необходимо включить режим усиленного контроля использования ключей: /opt/cprocsp/sbin/amd64/cpconfig -ini '\config\parameters' -add long StrengthenedKeyUsageControl 1 Проверяем, что режим включен: Выполняем перезапуск службы криптографического провайдера: /etc/init.d/cprocsp restart /etc/init.d/cprocsp status После перезапуска проверяем, что ошибок в работе провайдера с ключевыми носителями нет: /opt/cprocsp/bin/amd64/csptest -keyset –verifycontext /opt/cprocsp/bin/amd64/csptest -keyset -verifycontext -enum –unique CSP (Type:80) v4.0.9017 KC2 Release Ver:4.0.9944 OS:Linux CPU:AMD64 FastCode:REA AcquireContext: OK. HCRYPTPROV: 16052291 alfa_shark1 |SCARD\JACARTA_4E3900154029304C\CC00\E9F6 OK. Total: SYS: 0.000 sec USR: 0.000 sec UTC: 4.560 sec [ErrorCode: 0x00000000] Работа с токеном JaCarta PKI Запустим программу Xming (X11 forwarding) на своей станции, чтобы по SSH иметь возможность открывать и работать с графическими интерфейсами нужных утилит. Это ярлыки, в которых можно посмотреть параметры запуска утилит Exec=/usr/bin/SACTools Запустим утилиту IDProtectPINTool . С помощью нее задаются и меняются PIN-коды доступа к токену. При первой инициализации токена будет полезна ссылка, содержащая PIN-коды (пароли) ключевых носителей по умолчанию Программа IDProtect_Manager позволяет просматривать информацию о токене и контейнере с ключами и сертификатом: Для доступа к контейнеру с ключами нужно ввести пароль: Для работы с SafeNet Authentication Client eToken PRO существуют аналогичные программы — SafeNet Authentication Client Monitor и SafeNet Authentication Client Tools , которые запускаются так: /usr/bin/SACMonitor /usr/bin/SACTools Выполнять операции непосредственно с ключевыми контейнерами удобнее в интерфейсе криптографического провайдера КриптоПро JavaCSP: Для отображения информации о содержимом контейнера с ключами можно выполнить команду: /opt/cprocsp/bin/amd64/csptest -keyset -cont '\.\Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00\alfa_shark1' -info Для диагностики контейнера используется эта же команда с ключом –check /opt/cprocsp/bin/amd64/csptest -keyset -cont '\.\Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00\alfa_shark' –check Потребуется ввести пароль от контейнера: Программное извлечение ключей В общем виде пример извлечения закрытого ключа и сертификата открытого ключа из контейнера на токене с помощью КриптоПро Java CSP следующий: import ru.CryptoPro.JCP.KeyStore.JCPPrivateKeyEntry; import ru.CryptoPro.JCP.params.JCPProtectionParameter; KeyStore keyStore = KeyStore.getInstance("Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00", "JCSP"); keyStore.load(null, null); JCPPrivateKeyEntry entry = null; X509Certificate certificate = null; PrivateKey privateKey = null; try { entry = (JCPPrivateKeyEntry) keyStore.getEntry(keyAlias, new JCPProtectionParameter(pwd)); certificate = (X509Certificate) entry.getCertificate(); privateKey = entry.getPrivateKey(); } catch (UnrecoverableEntryException | NullPointerException e) { LOGGER.log(Level.WARNING, PRIVATE_KEY_NOT_FOUND + keyAlias + ExceptionUtils.getFullStackTrace(e)); } Если действовать так: Key key = keyStore.getKey(keyAlias, pwd); то криптографический провайдер будет пытаться в системе отобразить через консоль или GUI окно запрос на ввод пароля к контейнеру. Результаты Отторгаемый ключевой носитель-токен установлен во внутренний USB-порт сервера. Само серверное оборудование опломбировано и размещается в помещении с ограниченным доступом. Такие меры позволяют повысить уровень защиты наших информационных систем от кражи и компрометации ключей электронной подписи или шифрования, как удаленно по сети, так и физически. Полезные ссылки Документация Aladdin-RD JaCarta wiki.astralinux.ru — Работа с КриптоПро CSP Перечень кодов ошибок объектной модели компонентов Microsoft COM Error Codes (Security and Setup) СКЗИ КриптоПро CSP 4.0 ФКН (Gemalto) Утилита диагностики считывателей pcsc-tools из проекта security:chipcard (software.opensuse.org) КриптоПро CSP для Linux. Настройка. Aladdin-RD PIN-коды (пароли) ключевых носителей по умолчанию Установка КриптоПРО После установки JaCarta PKI, нужно установить КриптоПРО, для этого заходите на официальный сайт. На текущий момент самая последняя версия КриптоПро CSP 4.0.9944. Запускаем установщик, оставляем галку "Установить корневые сертификаты" и нажимаем "Установить (Рекомендуется)" Инсталляция КриптоПРО будет выполнена в фоновом режиме, после которой вы увидите предложение, о перезагрузке браузера, но я вам советую полностью перезагрузиться. После перезагрузки подключайте ваш USB токен JaCarta. У меня подключение идет по сети, с устройства DIGI, через клиента Anywhere View . В клиенте Anywhere View, мой USB носитель Jacarta, успешно определен, но как Microsoft Usbccid (WUDF), а в идеале должен определиться как JaCarta Usbccid Smartcard, но нужно в любом случае проверить, так как все может работать и так. Открыв утилиту "Единый клиент Jacarta PKI", подключенного токена обнаружено не было, значит, что-то с драйверами. Microsoft Usbccid (WUDF) - это стандартный драйвер Microsoft, который по умолчанию устанавливается на различные токены, и бывает, что все работает, но не всегда. Операционная система Windows по умолчанию, ставит их в виду своей архитектуры и настройки, мне вот лично в данный момент такое не нужно. Что делаем, нам нужно удалить драйвера Microsoft Usbccid (WUDF) и установить драйвера для носителя Jacarta. Откройте диспетчер устройств Windows, найдите пункт "Считыватели устройств смарт-карт (Smart card readers)" щелкните по Microsoft Usbccid (WUDF) и выберите пункт "Свойства". Перейдите на вкладку "Драйвера" и нажмите удалить (Uninstall) Согласитесь с удалением драйвера Microsoft Usbccid (WUDF). Вас уведомят, что для вступления изменений в силу, необходима перезагрузка системы, обязательно соглашаемся. После перезагрузки системы, вы можете увидеть установку устройства и драйверов ARDS Jacarta. Откройте диспетчер устройств, вы должны увидеть, что теперь ваше устройство определено, как JaCarta Usbccid Smartcar и если зайти в его свойства, то вы увидите, что смарт карта jacarta, теперь использует драйвер версии 6.1.7601 от ALADDIN R. D. ZAO, так и должно быть. Если открыть единый клиент Jacarta, то вы увидите свою электронную подпись, это означает, что смарт карта нормально определилась. Открываем CryptoPRO, и видим, что криптопро не видит сертификат в контейнере, хотя все драйвера определились как нужно. Есть еще одна фишка. В RDP сессии вы не увидите свой токен, только локально, уж такая работа токена, либо я не нашел как это поправить. Вы можете попробовать выполнить рекомендации по устранению ошибки "Не возможно подключиться к службе управления смарт-картами". Нужно снять одну галку в CryptoPRO ОБЯЗАТЕЛЬНО снимите галку "Не использовать устаревшие cipher suite-ы" и перезагрузитесь . После этих манипуляций у меня КриптоПРО увидел сертификат и смарт карта jacarta стала рабочей, можно подписывать документы. Еще можете в устройствах и принтерах, увидеть ваше устройство JaCarta, Если у вас как и у меня, токен jacarta установлен в виртуальной машине, то вам придется устанавливать сертификат, через console виртуальной машины, и так же дать на нее права ответственному человеку. Если это физический сервер, то там придется давать права на порт управления , в котором так же есть виртуальная консоль. Алгоритм решения проблем с JaCarta КриптоПРО очень часто вызывает различные ошибки в Windows, простой пример ( Windows installer service could not be accessed ). Вот так вот выглядит ситуация, когда утилита КриптоПРО не видит сертификат в контейнере. Как видно в утилите UTN Manager ключ подключен, он видится в системе в смарт картах в виде Microsoft Usbccid (WUDF) устройства, но вот CryptoPRO, этот контейнер не определяет и у вас нет возможности установить сертификат. Локально токен подключали, все было то же самое. Стали думать что сделать.
- Настройка и диагностика КриптоПро CSP
- Работа с токеном JaCarta PKI
- Программное извлечение ключей
- Результаты
- Полезные ссылки
- Установка КриптоПРО
- Алгоритм решения проблем с JaCarta
Возможные причины с определением контейнера
- Во первых, это проблема с драйверами, например, в Windows Server 2012 R2, JaCarta в идеале должна определяться в списке смарт карт как JaCarta Usbccid Smartcard, а не Microsoft Usbccid (WUDF)
- Во вторых если устройство видится как Microsoft Usbccid (WUDF), то версия драйверов может быть устаревшей, и из-за чего ваши утилиты будут не определять защищенный USB носитель.
- Устарелая версия CryptoPRO

Добрый день! Уважаемые читатели и подписчики IT блога Pyatilistnik.org. Последние два дня у меня была интересная задача по поиску решения на вот такую ситуацию, есть физический или виртуальный сервер, на нем установлена наверняка многим известная КриптоПРО. На сервер подключен USB ключ JaCarta
, который используется для подписи документов для ВТБ24 ДБО
. Локально на Windows 10
все работает, а вот на серверной платформе Windows Server 2016 и 2012 R2, Криптопро не видит ключ JaCarta
. Давайте разбираться в чем проблема и как ее поправить.
Описание окружения
Есть виртуальная машина
на Vmware ESXi 6.5, в качестве операционной системы установлена Windows Server 2012 R2
. На сервере стоит КриптоПРО 4.0.9944, последней версии на текущий момент. С сетевого USB хаба, по технологии USB over ip
, подключен ключ JaCarta. Ключ в системе видится
, а вот в КриптоПРО нет.
Основные причины невозможности доступа к ключу JaCarta
- Пользователь перепутал носители с ключами. Здесь «Единый клиент JaCarta» находит накопитель USB, но не видит токен, поэтому делает вывод об использовании неправильного носителя. Еще одним способом идентификации выступает установленный сертификат, где должен быть указан соответствующий тип с номером серии.
- Отсутствие драйвера, что актуально для первого запуска. Для предотвращения проблемы после подключения носителя JaCarta к компьютеру важно дождаться завершения установки программного обеспечения. Процесс идет в автоматическом режиме и занимает обычно несколько минут.
- Отсутствие в системе «Единого клиента JaCarta».
- Неисправность конкретного USB-порта, что случается довольно редко и обычно известно пользователю. Для исключения причины достаточно включить другую флешку, которая при проблемах также будет невидна компьютеру.
- Появление на мониторе сообщения Rutoken web authentication library, что свидетельствует об отключенной надстройке Рутокена. Для избавления от проблемы достаточно запустить программу, разрешить изменения и войти в систему повторно.

Компании » Аладдин Р. Д.
» и «КриптоПро» завершили тестовые испытания на совместимость своих продуктов. Сертификаты совместимости, выданные по результатам тестирования, подтверждают корректность работы электронных ключей линейки JaCarta
и средства криптографической защиты информации (СКЗИ) » КриптоПро JCP
» версии 2.0 R4.
Корректность совместного использования доказана для USB-токенов и смарт-карт JaCarta PKI
, JaCarta PRO
, JaCarta-2 ГОСТ
, JaCarta-2 PKI/ГОСТ
, JaCarta-2 PRO/ГОСТ
и JaCarta LT
. В качестве дополнительного программного обеспечения, необходимого для корректного функционирования, использовались программное средство «Библиотека поддержки СКЗИ «КриптоПро JCP» версии 2.0.1.245. Тестирование проводилось в среде исполнения Java Runtime Environment версий 7, 8.
Тестирование проводилось в операционных системах Windows 7 (32/64-bit), Windows 8 (32/64-bit), Windows 8.1 (32/64-bit), Windows 10 (32/64-bit), Windows 2003 Server (32/64-bit), Windows 2008 Server R2, Windows 2012 Server, Windows 2012 Server R2, Windows 2016 Server, дистрибутивах Linux, удовлетворяющих стандарту Linux Standard Base ISO/IEC 23360 версии LSB 4.x и MacOS 10.14/10.15/11.
Версия ПО:
КриптоПро 4.0.хххх , КриптоПро 5.0.хххх, Linux
Токены:
Любые
Как правильно настроить корректную работу ключевых носителей JaCarta в КриптоПро на Linux.
Решение:
Устанавливаем необходимые пакеты для работы службы PC/SC с помощью команды:
sudo apt-get install libccid pcscd
Скачиваем с сайта КРИПТО-ПРО необходимую версию КриптоПро и распаковываем архив с помощью команды:
tar -xf linux-amd64_deb.tgz
Переходим в папку с дистрибутивом КриптоПро с помощью команды:
Устанавливаем КриптоПро с помощью команды:
Устанавливаем GUI элементы для работы с сертификатами с помощью команды:
sudo dpkg -i cprocsp-rdr-gui-gtk-64_*_amd64.deb
Где
версия компонентов, согласно версии КриптоПро .
Устанавливаем поддержку считывателей PCSC с помощью команды:
sudo dpkg -i cprocsp-rdr-pcsc-64_*_amd64.deb
Устанавливаем модуль поддержки JaCarta
с помощью команды:
sudo dpkg -i cprocsp-rdr-jacarta-64_*_amd64.deb
Подключаем ключевой носитель JaCarta и проверяем доступные считыватели в системе с помощью команды:
/opt/cprocsp/bin/amd64/csptest -card -enum -verbose
Выводим список доступных контейнеров
с помощью команды:
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcn

Компании «Аладдин Р. Д.»
и «КРИПТО-ПРО» завершили тестовые испытания на совместимость смарт-карт и USB-токенов продуктовых линеек JaCarta
и eToken
с криптопровайдерами «КриптоПро CSP»
и «КриптоПро JCP»
.
По результатам тестирования был подписан ряд сертификатов совместимости, свидетельствующих о корректности работы электронных ключей JaCarta и eToken с СКЗИ «КриптоПро CSP» версий 3.6 R4, 3.8, 3.9 и «КриптоПро JCP» версии 2.0.
Согласно документам, с криптопровайдером «КриптоПро JCP» версии 2.0
могут применяться смарт-карты и USB-токены JaCarta ГОСТ
, JaCarta PKI
, eToken PRO (Java)
и eToken ГОСТ
, а также электронные ключи JaCarta ГОСТ/Flash
, JaCarta PKI/Flash
, JaCarta PKI/ГОСТ
, JaCarta PKI/ГОСТ/Flash
, JaCarta LT
, eToken NG-Flash
и eToken NG-OTP
.
Криптопровайдер «КриптоПро CSP» версий 3.6 R4, 3.8, 3.9
также совместим со всеми перечисленными выше моделями ключей. Кроме того, в рамках тестовых испытаний была подтверждена корректная работа криптопровайдера со смарт-картами и USB-ключами новой линейки JaCarta, имеющими дополнительную опцию поддержки биометрии
, которая позволяет обеспечить доступ к криптоконтейнеру, записанному на токен, не только по PIN-коду, но и по отпечатку пальца. К данным моделям ключей относятся JaCarta PKI/BIO
, JaCarta PKI/BIO/ГОСТ, JaCarta PKI/BIO/Flash и JaCarta PKI/BIO/ГОСТ/Flash. Отметим, что для использования электронных ключей JaCarta BIO с криптопровайдером «КриптоПро CSP» необходим модуль поддержки версии 3.6.405.501, а также USB карт-ридер со считывателем отпечатков пальцев (рекомендуемые модели ASEDrive IIIe Bio Combo
или ASEDrive IIIe Bio Combo Swipe
).
Компании «Аладдин Р. Д.» и «КРИПТО-ПРО» завершили тестовые испытания на совместимость своих продуктов.
Москва, 29 июля 2021 года.
— Компания » Аладдин Р. Д.
«, ведущий российский разработчик и поставщик решений для обеспечения информационной безопасности, и » КРИПТО-ПРО
«, лидер в сфере разработки средств криптографической защиты информации и развития Инфраструктуры Открытых Ключей на территории РФ, сообщают о завершении тестовых испытаний на совместимость своих продуктов.
Сертификаты совместимости, выданные по результатам тестирования, подтверждают корректность работы электронных ключей линейки JaCarta
и средства криптографической защиты информации (СКЗИ) » КриптоПро JCP
» версии 2.0 R4.
Совместимость и корректность совместного использования доказана для USB-токенов и смарт-карт JaCarta PKI
, JaCarta PRO
, JaCarta-2 ГОСТ
, JaCarta-2 PKI/ГОСТ
, JaCarta-2 PRO/ГОСТ
и JaCarta LT
. В качестве дополнительного программного обеспечения, необходимого для корректного функционирования, использовались программное средство «Библиотека поддержки СКЗИ «КриптоПро JCP» версии 2.0.1.245. Тестирование проводилось в среде исполнения Java Runtime Environment версий 7, 8.
Тестирование проводилось в операционных системах Windows 7 (32/64-bit), Windows 8 (32/64-bit), Windows 8.1 (32/64-bit), Windows 10 (32/64-bit), Windows 2003 Server (32/64-bit), Windows 2008 Server R2, Windows 2012 Server, Windows 2012 Server R2, Windows 2016 Server, дистрибутивах Linux, удовлетворяющих стандарту Linux Standard Base ISO/IEC 23360 версии LSB 4.x и MacOS 10.14/10.15/11.

FYI.
Статья написана в далеком 2019 году, делайте поправку на изменения.
Благодаря сертификату КЭП на USB-токене можно удаленно заключить договор с контрагентом или дистанционным сотрудником, направить документы в суд; зарегистрировать онлайн-кассу, урегулировать задолженность по налогам и подать декларацию в личном кабинете на nalog.ru; узнать о задолженностях и предстоящих проверках на Госуслугах.
Представленный ниже мануал поможет работать с КЭП под macOS
– без изучения форумов КриптоПро и установки виртуальной машины с Windows.
Что нужно для работы с КЭП под macOS:
Устанавливаем и настраиваем КЭП под macOS
- Устанавливаем КриптоПро CSP
- Устанавливаем драйверы Рутокен
- Устанавливаем сертификаты
3.1. Удаляем все старые ГОСТовские сертификаты
3.2. Устанавливаем корневые сертификаты
3.3. Скачиваем сертификаты удостоверяющего центра
3.4. Устанавливаем сертификат с Рутокен
- Устанавливаем специальный браузер Chromium-GOST
- Устанавливаем расширения для браузера
5.1 КриптоПро ЭЦП Browser plug-in
5.2. Плагин для Госуслуг
5.3. Настраиваем плагин для Госуслуг
5.4. Активируем расширения
5.5. Настраиваем расширение КриптоПро ЭЦП Browser plug-in
- Проверяем что все работает
6.1. Заходим на тестовую страницу КриптоПро
6.2. Заходим в Личный Кабинет на nalog.ru
6.3. Заходим на Госуслуги
- Что делать если перестало работать
Смена PIN-кода контейнера
- Выясняем название контейнера КЭП
- Смена PIN командой из terminal
Подпись файлов в macOS
- Выясняем хэш сертификата КЭП
- Подпись файла командой из terminal
- Установка Apple Automator Script
Проверить подпись на документе
Вся информация ниже получена из авторитетных источников (КриптоПро #1
, #2
и #3
, Рутокен
, Корус-Консалтинг
, УФО Минкомсвязи
), а скачивать ПО предлагается с доверенных сайтов. Автор является независимым консультантом и не связан ни с одной из упомянутых компаний. Следуя данной инструкции, всю ответственность за любые действия и последствия вы принимаете на себя.
Компании «Аладдин Р. Д.» и «КРИПТО-ПРО» подтверждают работоспособность и корректность совместного функционирования электронных ключей JaCarta и средства криптографической защиты информации «КриптоПро CSP» версии 5.0. R2
Москва, 6 мая 2021 года.
— Компании » Аладдин Р. Д.
«, ведущий российский разработчик и поставщик средств аутентификации и решений для обеспечения информационной безопасности и защиты конфиденциальных данных, и » КРИПТО-ПРО
«, ведущий российский разработчик средств криптографической защиты информации, завершили тестовые испытания на совместимость смарт-карт и USB-токенов JaCarta
с криптопровайдером » КриптоПро CSP
» версии 5.0 R2.
Работоспособность и корректность совместного использования подтверждены для USB-токенов и смарт-карт JaCarta ГОСТ, JaCarta PKI, JaCarta PRO, JaCarta PKI/ГОСТ, JaCarta PRO/ГОСТ, JaCarta PKI/BIO, JaCarta PKI/BIO/ГОСТ, JaCarta-2 ГОСТ, JaCarta-2 PKI/ГОСТ, JaCarta-2 PRO/ГОСТ, JaCarta-2 PKI/PRO/ГОСТ, JaCarta LT и USB-токенов JaCarta ГОСТ/Flash, JaCarta PKI/Flash, JaCarta PKI/ГОСТ/Flash, JaCarta SF/ГОСТ.
В «КриптоПро CSP» версии 5.0 R2 реализовано взаимодействие с ключевыми носителями, поддерживающими режим ФКН
, через интерфейс PKCS#11. Это даёт возможность использовать ключевую информацию в решениях, работающих через интерфейс PKCS#11.
Режим ФКН поддерживают JaCarta-2 ГОСТ *
, JaCarta-2 PKI/ГОСТ *
, JaCarta-2 PRO/ГОСТ *
, JaCarta-2 PKI/PRO/ГОСТ *
и JaCarta SF/ГОСТ *
.
Продукты линейки JaCarta разработаны для организации усиленной или строгой аутентификации в информационных системах и сервисах, обеспечения юридической значимости документов и действий пользователей с помощью электронной подписи и безопасного хранения контейнеров программных СКЗИ, пользовательских данных, сертификатов, паролей и др.
*
Для корректного функционирования необходимо программное обеспечение «Единый Клиент JaCarta» версии 2.13 или выше (для обеспечения взаимодействия со встроенным СКЗИ «Криптотокен 2 ЭП» через интерфейс PKCS#11).

«КРИПТО-ПРО» и «Аладдин Р. Д.»
, разработчик и поставщик решений для обеспечения информационной безопасности, получили положительное заключение ФСБ России на совместный продукт
«КриптоПро ФКН CSP» версии 3.9, использующий в своём составе USB-токены и смарт-карты JaCarta CryptoPro.
Полученная выписка из заключения ФСБ России свидетельствует о соответствии средства криптографической защиты информации «КриптоПро ФКН CSP» версии 3.9 (исполнения 1 и 2) «Требованиям к шифровальным (криптографическим) средствам, предназначенным для защиты информации, не содержащей сведений, составляющих государственную тайну» и «Требованиям к средствам электронной подписи» по классам КС1 и КС2.
Продукт «КриптоПро ФКН CSP» версии 3.9
(ранее известный на рынке под названием «КриптоПро eToken CSP») предназначен для формирования электронной подписи в системах юридически значимого электронного документооборота и других информационных системах, где требуются технологии ЭП (системы дистанционного банковского обслуживания (ДБО), электронные торговые площадки, системы сдачи электронной отчётности, электронное декларирование грузов, перемещаемых через границу, системы корпоративного/ведомственного электронного документооборота (СЭД) и др.).
«КриптоПро ФКН CSP» версии 3.9 состоит из двух основных компонент – криптопровайдера (CSP) разработки компании «КРИПТО-ПРО» и нового токена JaCarta CryptoPro от «Аладдин Р. Д.». В «КриптоПро ФКН CSP» основные криптографические функции выполняются внутри токена JaCarta CryptoPro, а главной особенностью созданного решения является возможность формирования и хранения закрытых ключей и ключей ЭП на токене в неизвлекаемом виде (срок действия закрытого ключа увеличивается до трёх лет). Канал передачи данных между токеном JaCarta CryptoPro и программной частью «КриптоПро ФКН CSP» защищён с использованием технологии ФКН.
Функциональный ключевой носитель (ФКН)
– это технология, позволяющая существенно повысить безопасность систем, использующих электронную подпись и поддерживающая архитектуру программно-аппаратных продуктов со смарт-картой или USB-ключом, аппаратно реализующих российские криптоалгоритмы ЭП и шифрования (ГОСТ Р 34.10-2001/ГОСТ Р 34.11-94, ГОСТ 28147-89), позволяющая безопасно хранить и использовать закрытые ключи в защищённой памяти смарт-карты или USB-ключа.
«Ключевыми для пользователя в истории с «КриптоПро ФКН CSP» версии 3.9 являются два исключительно практических момента: защита секретного ключа пользователя выведена на качественно новый уровень и срок действия секретных ключей увеличен до 3х лет»
, – отмечает Игорь Курепкин, заместитель генерального директора ООО «КРИПТО-ПРО».
По словам Сергея Груздева, генерального директора компании «Аладдин Р. Д.»: «Отличительной особенностью нового токена является принцип Secure b
y design – сконструирован как безопасный и для целей обеспечения безопасности. Он имеет встроенную защиту как на аппаратном, так и на программном уровнях от клонирования, взлома и прочих атак, известных на сегодняшний день, а также является самым быстрым среди других ФКН-устройств. Продукт давно ждут на рынке, основными потребителями станут компании различных сегментов рынка, имеющие дело с большими объёмами подписываемых документов».
Проверить подпись на документе
Если содержимое документа не содержит секретов и тайн, то проще всего воспользоваться web-сервисом на портале Госуслуг – https://www.gosuslugi.ru/pgu/eds
. Так можно сделать скриншот с авторитетного ресурса и быть уверенным что с подписью все ок.


Установка единого клиента JaCarta PKI
Единый Клиент JaCarta
— это специальная утилита от компании «Аладдин», для правильной работы с токенами JaCarta. Загрузить последнюю версию, данного программного продукта, вы можете с официального сайта, или у меня с облака, если вдруг, не получиться с сайта производителя.

Далее полученный архив вы распаковываете
и запускаете установочный файл, под свою архитектуру Windows
, у меня это 64-х битная. Приступаем к установке Jacarta драйвера. Единый клиент Jacarta, ставится очень просто (НАПОМИНАЮ ваш токен в момент инсталляции, должен быть отключен). На первом окне мастера установки, просто нажимаем далее.

Принимаем лицензионное соглашение и нажимаем «Далее»

Чтобы драйвера токенов JaCarta у вас работали корректно, достаточно выполнить стандартную установку.

Если выберете «Выборочную установку», то обязательно установите галки:
- Драйверы JaCarta
- Модули поддержки
- Модуль поддержки для КриптоПРО

Далее нажимаем «Установить».

Через пару секунд, Единый клиент Jacarta, успешно установлен.

Обязательно произведите перезагрузку сервера или компьютера, чтобы система увидела свежие драйвера.

Как решить проблему, что криптопро не видит USB ключ?
Создали новую виртуальную машину
и стали ставить софт все последовательно.
Перед установкой любого программного обеспечения работающего с USB носителями на которых находятся сертификаты и закрытые ключи. Нужно ОБЯЗАТЕЛЬНО
отключить токен, если воткнут локально, то отключаем его, если по сети, разрываем сессию
- Первым делом обновляем вашу операционную систему
, всеми доступными обновлениями, так как Microsoft исправляет много ошибок и багов, в том числе и драйверами. - Вторым пунктом является, в случае с физическим сервером, установить все свежие драйвера на материнскую плату
и все периферийное оборудование. - Далее устанавливаете Единый Клиент JaCarta.
- Устанавливаете свежую версию КриптоПРО
Подпись файлов в macOS
В macOS файлы можно подписывать в ПО КриптоАрм
(стоимость лицензии 2500= руб.), или несложной командой через terminal – бесплатно.
1. Выясняем хэш сертификата КЭП
На токене и в других хранилищах может быть несколько сертификатов. Нужно однозначно идентифицировать тот, которым будем впредь подписывать документы. Делается один раз.
Токен должен быть вставлен. Получаем список сертификатов в хранилищах командой из terminal:
/opt/cprocsp/bin/certmgr -list
Команда должна вывести минимум 1 сертификат вида:
Certmgr 1.1 © «Crypto-Pro», 2007-2018.
program for managing certificates, CRLs and stores
= = = = = = = = = = = = = = = = = = = =
1——-
Issuer: E=help@esphere.ru,… CN=ООО КОРУС Консалтинг СНГ…
Subject: E=sergzah@gmail.com,… CN=Захаров Сергей Анатольевич…
Serial: 0x0000000000000000000000000000000000
SHA1 Hash: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
.
Container: SCARD\rutoken_lt_00000000\0000\0000
…
= = = = = = = = = = = = = = = = = = = =
[ErrorCode: 0x00000000]
2. Подпись файла командой из terminal
В terminal переходим в каталог с файлом для подписания и выполняем команду:
/opt/cprocsp/bin/cryptcp -signf -detach -cert -der -strict -thumbprint ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ FILE
Команда должна вернуть:
Signed message is created.
[ErrorCode: 0x00000000]
Будет создан файл электронной подписи с расширением *.sgn – это отсоединенная подпись в формате CMS с кодировкой DER.
3. Установка Apple Automator Script
- Распаковываем архив ‘Sign with CryptoPro.zip’
- Запускаем Automator
- Находим и открываем распакованный файл ‘Sign with CryptoPro.workflow’
- В блоке Run Shell Script
меняем текст ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ
на значение параметра SHA1 Hash
сертификата КЭП, полученное выше. - Сохраняем скрипт: ⌘Command + S
- Запускаем файл ‘Sign with CryptoPro.workflow’
и подтверждаем установку. - Идем в System Preferences —> Extensions —> Finder
и проверяем, что Sign with CryptoPro
quick action отмечено. - В Finder вызываем контекстное меню любого файла, и в разделе Quick Actions
и/или Services
выбрать пункт Sign with CryptoPro - В появившемся диалоге КриптоПро ввести PIN-код пользователя от КЭП
- В текущем каталоге появится файл с расширением *.sgn – отсоединенная подпись в формате CMS с кодировкой DER.
Окно Apple Automator:

Контекстное меню Finder:

Не возможно подключиться к службе управления смарт-картами
Когда вы установили все драйвера для токенов Jacarta, вы можете увидеть при подключении по RDP и открытии утилиты «Единый клиент Jacarta PKI» вот такое сообщение с ошибкой:
Не возможно подключиться к службе управления смарт-картами

- Не запущена служба смарт-карт на локальной машине. Архитектурой RDP-сессии, разработанной Microsoft, не предусмотрено использование ключевых носителей, подключенных к удалённому компьютеру, поэтому в RDP-сессии удалённый компьютер использует службу смарт-карт локального компьютера. Из этого следует что, запуска службы смарт-карт внутри RDP-сессии недостаточно для нормальной работы.
- Служба управления смарт-картами на локальном компьютере запущена, но недоступна для программы внутри RDP-сессии из-за настроек Windows и/или RDP-клиента.\
Как исправить ошибку «Не возможно подключиться к службе управления смарт-картами».
- Запустите службу смарт-карт на локальной машине, с которой вы инициируете сеанс удалённого доступа. Настройте её автоматический запуск при старте компьютера.
- Разрешите использование локальных устройств и ресурсов во время удалённого сеанса (в частности, смарт-карт). Для этого, в диалоге «Подключение к удалённому рабочему столу» в параметрах выберите вкладку «Локальные ресурсы», далее в группе «Локальные устройства и ресурсы» нажмите кнопку «Подробнее…», а в открывшемся диалоге выберите пункт «Смарт-карты» и нажмите «ОК», затем «Подключить».

- Убедитесь в сохранности настроек RDP-подключения. По умолчанию они сохраняются в файле Default.rdp в каталоге «Мои Документы» Проследите, чтобы в данном файле присутствовала строчка «redirectsmartcards:i:1».
- Убедитесь в том, что на удалённом компьютере, к которому вы осуществляете RDP-подключение, не активирована групповая политика
[Computer Configuration\Administrative Templates\Windows Components\Terminal Services\Client\Server data redirection\Do not allow smart card device redirection] -[Конфигурация компьютера\административные шаблоны\компоненты windows\службы удалённых рабочих столов\узел сеансов удалённых рабочих столов\перенаправление устройств и ресурсов\Не разрешать перенаправление устройства чтения смарт-карт]. Если она включена (Enabled), то отключите её, и перегрузите компьютер. - Если у вас установлена Windows 7 SP1 или Windows 2008 R2 SP1 и вы используете RDC 8.1 для соединения с компьютерами под управлением Windows 8 и выше, то вам необходимо установить обновление для операционной системы https://support.microsoft.com/en-us/kb/2913751
Вот такой вот был траблшутинг по настройке токена Jacarta, КриптоПРО на терминальном сервере, для подписи документов в ВТБ24 ДБО. Если есть замечания или поправки, то пишите их в комментариях.
Смена PIN-кода контейнера
Пользовательский PIN-код на Рутокен по-умолчанию 12345678
, и оставлять его в таком виде никак нельзя. Требования к PIN-коду Рутокен: 16 символов max., может содержать латинские буквы и цифры.
1. Выясняем название контейнера КЭП
На usb-токене и в других хранилищах может храниться несколько сертификатов, и нужно выбрать правильный. При вставленном usb-токене получаем список всех контейнеров в системе командой в terminal:
/opt/cprocsp/bin/csptest -keyset -enum_cont -fqcn -verifycontext
Команда должна вывести минимум 1 контейнер и вернуть
[ErrorCode: 0x00000000]
Нужный нам контейнер имеет вид
\.\Aktiv Rutoken lite\XXXXXXXX
Если таких контейнеров выводится несколько – значит значит на токене записано несколько сертификатов, и вы в курсе какой именно вам нужен. Значение XXXXXXXX
после слэша нужно скопировать и подставить в команду ниже.
2. Смена PIN командой из terminal
/opt/cprocsp/bin/csptest -passwd -qchange -container "XXXXXXXX"
где XXXXXXXX
– название контейнера, полученное на шаге 1 (обязательно в кавычках).
Появится диалог КриптоПро с запросом старого PIN-кода для доступа к сертификату, затем еще один диалог для ввода нового PIN-кода. Готово.

Установка и настройка считывателя «КриптоПро»
Следующим этапом становится установка драйвера CCID с обязательной перезагрузкой, а также настройка считывателей в «КриптоПро». Делают это следующим образом:
- скачайте и разархивируйте комплект модулей для поддержки считывателей;
- найдите через панель управления и запустите программу «КриптоПро CSP»;
- перейдите на вкладку «Оборудование» и активируйте кнопку «Настроить считыватели»;
- выберите конкретный считыватель и мастер установки последнего (для запуска библиотек выберите кнопку «Установить с диска»);
- выберите в окне «Указать размещение» через «Обзор» конкретную папку, где находится reader, нажав затем «Далее»;
- выберите «Считыватель PC/SC» и нажмите кнопку «Далее».
После завершения установки нажмите кнопку «Готово». Теперь нужно выбрать из перечня доступных считывателей AKS ifdh 0 и нажать кнопку «Далее» (в последующем данную процедуру нужно будет повторить и для других типов считывателей). После завершения вновь надо перезагрузить компьютер.
Теперь в диалоговом окне «Управление считывателями» будет доступен весь перечень считывателей. Для дальнейшей настройки необходимо настроить носители. Для этого выполните следующие действия:
- перейдите во вкладку «Оборудование»;
- нажмите кнопку «Настроить носители»;
- нажмите кнопку «Добавить» и запустите мастер установки, перейдя «Далее»;
- нажмите на кнопку «Установить с диска»;
- выберите через кнопку «Обзор» расположение папки reader;
- выберите тип «Смарт-карты eToken…» и нажмите опять кнопку «Далее».
После завершения установки необходимо опять перезагрузить компьютер для подключения уже непосредственно носителя JaCarta, который должен быть виден в «КриптоПро», что позволит подписывать ЭЦП документы и отчеты для государственных органов.
При наличии вопросов и необходимости генерации сертификатов ЭП любого типа обращайтесь в компанию «Астрал». Мы предлагаем подобные услуги на выгодных условиях и с максимальной оперативностью. Дополнительно мы готовы проконсультировать по вопросам установки, выбора конкретного тарифного плана и типа электронных подписей с учетом специфики вашей компании.
Как установить ключ JaCarta
Для предотвращения проблем, когда «КриптоПро» не видит JaCarta, важно правильно настроить программное обеспечение для работы с токеном. Ниже вы найдете подробный алгоритм, но мы сразу отметим, что подключать JaCarta к компьютеру можно только после завершения установки всего объема ПО, идущего следующим образом:
- скачайте дистрибутив eToken PKI Client1 (сделать это можно с сайта или диска, который предоставил удостоверяющий центр, где оформлена ЭЦП);
- запустите соответствующий файл-установщик, в зависимости от версии вашей операционной системы;
- выберите из перечня русский язык интерфейса ПО;
- ознакомьтесь с условиями лицензионного соглашения (приведено на английском языке) и согласитесь с ними, установив флаг в поле I accept the license agreement;
- выберите папку, куда будет установлен клиент eToken (можно выбрать вариант пути по умолчанию) и нажмите кнопку «Далее» (Next);
- дождитесь завершения процесса установки, которая сопровождается соответствующими комментариями;
- после завершения процесса появится сообщение про успешное завершение процесса;
- теперь достаточно для завершения установки клиента выполнить перезагрузку.
Что нужно для работы с КЭП под macOS
- КЭП на USB-токене Рутокен Lite
или Рутокен ЭЦП - криптоконтейнер в формате КриптоПро
- со встроенной лицензией на КриптоПро CSP
- открытый сертификат должен храниться в контейнере закрытого ключа
Поддержка eToken и JaCarta в связке с КриптоПро под macOS под вопросом. Носитель Рутокен Lite – оптимальный выбор, стоит недорого, шустро работает и позволяет хранить до 15 ключей.
Криптопровайдеры VipNet, Signal-COM и ЛИССИ в macOS не поддерживаются. Преобразовать контейнеры никак не получится. КриптоПро – оптимальный выбор, стоимость сертификата в себестоимости от 500= руб. Можно выпустить сертификат с встроенной лицензией на КриптоПро CSP, это удобно и выгодно. Если лицензия не зашита, то необходимо купить и активировать полноценную лицензию на КриптоПро CSP.
Обычно открытый сертификат хранится в контейнере закрытого ключа, но это нужно уточнить при выпуске КЭП и попросить сделать как нужно. Если не получается, то импортировать открытый ключ в закрытый контейнер можно самостоятельно средствами КриптоПро CSP под Windows.
Устанавливаем и настраиваем КЭП под macOS
- все загружаемые файлы скачиваются в каталог по-умолчанию: ~/Downloads/;
- во всех установщиках ничего не меняем, все оставляем по-умолчанию;
- если macOS выводит предупреждение, что запускаемое ПО от неустановленного разработчика – нужно подтвердить запуск в системных настройках: System Preferences —> Security & Privacy —> Open Anyway
; - если macOS запрашивает пароль пользователя и разрешение на управление компьютером – нужно ввести пароль и со всем согласиться.
1. Устанавливаем КриптоПро CSP
2. Устанавливаем драйверы Рутокен
Далее подключаем usb-токен, запускаем terminal и выполняем команду:
/opt/cprocsp/bin/csptest -card -enum
В ответе должно быть:
Aktiv Rutoken…
Card present…
[ErrorCode: 0x00000000]
3. Устанавливаем сертификаты
3.1. Удаляем все старые ГОСТовские сертификаты
Если ранее были попытки запустить КЭП под macOS, то необходимо почистить все ранее установленные сертификаты. Данные команды в terminal удалят только сертификаты КриптоПро и не затронут обычные сертификаты из Keychain в macOS.
sudo /opt/cprocsp/bin/certmgr -delete -all -store mroot
sudo /opt/cprocsp/bin/certmgr -delete -all -store uroot
/opt/cprocsp/bin/certmgr -delete -all
В ответе каждой команды должно быть:
No certificate matching the criteria
Deleting complete
3.2. Устанавливаем корневые сертификаты
Корневые сертификаты являются общими для всех КЭП, выданных любым удостоверяющим центром. Скачиваем со страницы загрузок
УФО Минкомсвязи:
Устанавливаем командами в terminal:
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/4BC6DC14D97010C41A26E058AD851F81C842415A.cer
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/8CAE88BBFD404A7A53630864F9033606E1DC45E2.cer
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/0408435EB90E5C8796A160E69E4BFAC453435D1D.cer
Каждая команда должна возвращать:
Installing:
…
[ErrorCode: 0x00000000]
3.3. Скачиваем сертификаты удостоверяющего центра
Далее нужно установить сертификаты удостоверяющего центра, в котором вы выпускали КЭП. Обычно корневые сертификаты каждого УЦ находятся на его сайте в разделе загрузок.


Скачанные сертификаты УЦ устанавливаем командами из terminal:
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/B9F1D3F78971D48C34AA73786CDCD138477FEE3F.cer
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/A0D19D700E2A5F1CAFCE82D3EFE49A0D882559DF.cer
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/55EC48193B6716D38E80BD9D1D2D827BC8A07DE3.cer
sudo /opt/cprocsp/bin/certmgr -inst -store mroot -f ~/Downloads/15EB064ABCB96C5AFCE22B9FEA52A1964637D101.cer
где после ~/Downloads/
идут имена скачанных файлов, для каждого УЦ они будут свои.
Каждая команда должна возвращать:
Installing:
…
[ErrorCode: 0x00000000]
3.4. Устанавливаем сертификат с Рутокен
Команда в terminal:
/opt/cprocsp/bin/csptestf -absorb -certs
Команда должна вернуть:
OK.
[ErrorCode: 0x00000000]
3.5. Конфигурируем CryptoPro для работы ссертификатами ГОСТ Р 34.10-2012
Для корректной работы на nalog.ru с сертификатами, выдаваемыми с 2019 года, инструкция
на сайте CryptoPro рекомендует:
Команды в terminal:
sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.1!3' -add string 'Name' 'GOST R 34.10-2012 256 bit'
sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.2!3' -add string 'Name' 'GOST R 34.10-2012 512 bit'
Команды ничего не возвращают.
4. Устанавливаем специальный браузер Chromium-GOST
Скачиваем, устанавливаем копированием или drag&drop в каталог Applications. После установки принудительно закрываем Chromium-Gost командой из terminal и пока не открываем (работаем из Safari):
killall Chromium-Gost
5. Устанавливаем расширения для браузера
5.1 КриптоПро ЭЦП Browser plug-in
5.2. Плагин для Госуслуг
5.3. Настраиваем плагин для Госуслуг
Выполняем команды в terminal:
sudo rm /Library/Internet\ Plug-Ins/IFCPlugin.plugin/Contents/ifc.cfg
sudo cp ~/Downloads/ifc.cfg /Library/Internet\ Plug-Ins/IFCPlugin.plugin/Contents
sudo cp /Library/Google/Chrome/NativeMessagingHosts/ru.rtlabs.ifcplugin.json /Library/Application\ Support/Chromium/NativeMessagingHosts
5.4. Активируем расширения
Запускаем браузер Chromium-Gost и в адресной строке набираем:
chrome://extensions/
Включаем оба установленных расширения:
CryptoPro Extension for CAdES Browser Plug-in
Расширение для плагина Госуслуг
5.5. Настраиваем расширение КриптоПро ЭЦП Browser plug-in
На появившейся странице в список доверенных узлов по-очереди добавляем сайты:
Жмем “Сохранить”. Должна появиться зеленая плашка:
6. Проверяем что все работает
6.1. Заходим на тестовую страницу КриптоПро
В адресной строке Chromium-Gost набираем:
/opt/cprocsp/bin/csptest -card -enum
Должно выводиться “Плагин загружен”, а в списке ниже присутствовать ваш сертификат.
Выбираем сертификат из списка и жмем “Подписать”. Будет запрошен PIN-код сертификата. В итоге должно отобразиться
Подпись сформирована успешно
Личный кабинет
ИП
:
https://lkipgost.nalog.ru/lk
Личный кабинет
ЮЛ
https://lkul.nalog.ru
7. Что делать, если перестало работать Переподключаем usb-токен и проверяем что он виден с помощью команды в terminal: Очищаем кеш браузера за все время, для чего в адресной строке Chromium-Gost набираем: Переустанавливаем сертификат КЭП с помощью команды в terminal: Если команды Cryptopro не отрабатывают (csptest и csptestf превратились в corrupted) – нужно переустановить Cryptopro. После установки токена JaCarta PKI в USB порт сервера и запуска системы проверяем, что новое устройство обнаружено и появилось в списке: В нашем случае это Bus 004 Device 003: ID 24dc:0101 Для диагностики считывателей можно воспользоваться утилитой pcsc-tools из проекта security:chipcard (software.opensuse.org) Пока не установлены все необходимые пакеты, информация о токене не отобразится. На странице Поддержки сайта «Аладдин Р. Д.» загружаем Документацию и программное обеспечение для работы только с JaCarta PKI Согласно Руководству по внедрению «JaCarta для Linux» пункт 4.2., первым делом требуется установить пакеты pcsc-lite Для работы утилиты управления JaCarta необходимо установить следующие компоненты: Выполняем проверку наличия этих пакетов и установку: В итоге пакет pcsc-lite был обновлен, CCID установлен, libusb никаких действия не требовалось. Следующими двумя командами выполняем установку пакета с драйверами и программным обеспечением непосредственно для работы с JaCarta PKI: Проверяем, что драйверы и ПО для JaCarta PKI установились:
sudo /opt/cprocsp/bin/csptest -card -enum
chrome://settings/clearBrowserData
/opt/cprocsp/bin/csptestf -absorb -certs
Руководство по настройке

.
Установка драйверов и ПО для работы с JaCarta PKI
, ccid
и libusb
.zypper search pcsc-lite
zypper search libusb
zypper install pcsc-lite

zypper search CCID
zypper install pcsc-ccid
zypper search CCID
zypper install libusb
При попытках заставить работать SafeNet eToken PRO я нашел информацию, что предустановленный в SLES пакет openct — Library for Smart Card Readers
pcsc-lite — PCSC Smart Cards Library
, установку которого требует руководство Аладдин Р. Д.
Поэтому пакет openct удаляем:
Теперь все необходимые драйверы и ПО для работы с токеном установлены.
Выполняем диагностику с помощью утилиты pcsc-tools
Установка пакетов КриптоПро CSP
При установке КриптоПро CSP по умолчанию нужные пакеты для работы с токенами и смарт-картами отсутствуют.
/opt/cprocsp/bin/csptest -card -enum
zypper install cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Problem: nothing provides cprocsp-rdr-pcsc-64 >= 4.0 needed by cprocsp-rdr-emv-64-4.0.9944-5.x86_64
Solution 1: do not install cprocsp-rdr-emv-64-4.0.9944-5.x86_64
Solution 2: break cprocsp-rdr-emv-64-4.0.9944-5.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or cancel [1/2/c] (c): c
Устанавливаем базовые пакеты поддержки считывателей и ключевых носителей:
zypper install cprocsp-rdr-pcsc-64-4.0.9944-5.x86_64.rpm

zypper install lsb-cprocsp-pkcs11-64-4.0.9944-5.x86_64.rpm
Теперь можно установить модули для работы с остальными видами носителей и компонент GUI:
zypper install cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm

zypper install cprocsp-rdr-novacard-64-4.0.9944-5.x86_64.rpm
zypper install cprocsp-rdr-mskey-64-4.0.9944-5.x86_64.rpm
zypper install cprocsp-rdr-gui-gtk-64-4.0.9944-5.x86_64.rpm

Проверяем итоговую конфигурацию КриптоПро CSP:
zypper search cprocsp
Loading repository data...
Reading installed packages...

Чтобы применить изменения, выполняем перезапуск службы криптографического провайдера и проверяем ее статус:
/etc/init.d/cprocsp restart
/etc/init.d/cprocsp status

Настройка и диагностика КриптоПро CSP
Проверим, видит ли криптографический провайдер наш токен и другие доступные типы носителей следующими командами:
/opt/cprocsp/bin/amd64/csptest -card -enum -v –v


/opt/cprocsp/sbin/amd64/cpconfig -hardware reader -view -f cp1251

Следуя инструкции КриптоПро CSP для Linux. Настройка
, выполняем его регистрацию в криптографическом провайдере:
/opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add "Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00"

Чтобы выполнить требования Формуляра, Правил пользования и Руководства администратора безопасности КриптоПро CSP:
Использование СКЗИ «КриптоПро CSP» версии 4.0 с выключенным режимом усиленного контроля использования ключей не допускается. Включение данного режима описано в документах ЖТЯИ.00087-01 91 02. Руководство администратора безопасности.
Необходимо включить режим усиленного контроля использования ключей:
/opt/cprocsp/sbin/amd64/cpconfig -ini '\config\parameters' -add long StrengthenedKeyUsageControl 1
Проверяем, что режим включен:

Выполняем перезапуск службы криптографического провайдера:
/etc/init.d/cprocsp restart
/etc/init.d/cprocsp status
После перезапуска проверяем, что ошибок в работе провайдера с ключевыми носителями нет:
/opt/cprocsp/bin/amd64/csptest -keyset –verifycontext

/opt/cprocsp/bin/amd64/csptest -keyset -verifycontext -enum –unique
CSP (Type:80) v4.0.9017 KC2 Release Ver:4.0.9944 OS:Linux CPU:AMD64 FastCode:REA
AcquireContext: OK. HCRYPTPROV: 16052291
alfa_shark1 |SCARD\JACARTA_4E3900154029304C\CC00\E9F6
OK.
Total: SYS: 0.000 sec USR: 0.000 sec UTC: 4.560 sec
[ErrorCode: 0x00000000]
Работа с токеном JaCarta PKI
Запустим программу Xming (X11 forwarding) на своей станции, чтобы по SSH иметь возможность открывать и работать с графическими интерфейсами нужных утилит.

Это ярлыки, в которых можно посмотреть параметры запуска утилит Exec=/usr/bin/SACTools
Запустим утилиту IDProtectPINTool
.
С помощью нее задаются и меняются PIN-коды доступа к токену.

При первой инициализации токена будет полезна ссылка, содержащая PIN-коды (пароли) ключевых носителей по умолчанию
Программа IDProtect_Manager
позволяет просматривать информацию о токене и контейнере с ключами и сертификатом:

Для доступа к контейнеру с ключами нужно ввести пароль:


Для работы с SafeNet Authentication Client eToken PRO
существуют аналогичные программы — SafeNet Authentication Client Monitor
и SafeNet Authentication Client Tools
, которые запускаются так:
/usr/bin/SACMonitor
/usr/bin/SACTools

Выполнять операции непосредственно с ключевыми контейнерами удобнее в интерфейсе криптографического провайдера КриптоПро JavaCSP:

Для отображения информации о содержимом контейнера с ключами можно выполнить команду:
/opt/cprocsp/bin/amd64/csptest -keyset -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00\alfa_shark1' -info
Для диагностики контейнера используется эта же команда с ключом –check
/opt/cprocsp/bin/amd64/csptest -keyset -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00\alfa_shark' –check
Потребуется ввести пароль от контейнера:


Программное извлечение ключей
В общем виде пример извлечения закрытого ключа и сертификата открытого ключа из контейнера на токене с помощью КриптоПро Java CSP следующий:
import ru.CryptoPro.JCP.KeyStore.JCPPrivateKeyEntry;
import ru.CryptoPro.JCP.params.JCPProtectionParameter;
KeyStore keyStore = KeyStore.getInstance("Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00", "JCSP");
keyStore.load(null, null);
JCPPrivateKeyEntry entry = null;
X509Certificate certificate = null;
PrivateKey privateKey = null;
try {
entry = (JCPPrivateKeyEntry) keyStore.getEntry(keyAlias,
new JCPProtectionParameter(pwd));
certificate = (X509Certificate) entry.getCertificate();
privateKey = entry.getPrivateKey();
} catch (UnrecoverableEntryException | NullPointerException e) {
LOGGER.log(Level.WARNING, PRIVATE_KEY_NOT_FOUND + keyAlias + ExceptionUtils.getFullStackTrace(e));
}
Если действовать так:
Key key = keyStore.getKey(keyAlias, pwd);
то криптографический провайдер будет пытаться в системе отобразить через консоль или GUI окно запрос на ввод пароля к контейнеру.
Результаты
Отторгаемый ключевой носитель-токен установлен во внутренний USB-порт сервера.
Само серверное оборудование опломбировано и размещается в помещении с ограниченным доступом.
Такие меры позволяют повысить уровень защиты наших информационных систем от кражи и компрометации ключей электронной подписи или шифрования, как удаленно по сети, так и физически.
Полезные ссылки
- Документация Aladdin-RD JaCarta
- wiki.astralinux.ru — Работа с КриптоПро CSP
- Перечень кодов ошибок объектной модели компонентов Microsoft COM Error Codes (Security and Setup)
- СКЗИ КриптоПро CSP 4.0 ФКН (Gemalto)
- Утилита диагностики считывателей pcsc-tools из проекта security:chipcard (software.opensuse.org)
- КриптоПро CSP для Linux. Настройка.
- Aladdin-RD PIN-коды (пароли) ключевых носителей по умолчанию
Установка КриптоПРО
После установки JaCarta PKI, нужно установить КриптоПРО, для этого заходите на официальный сайт.

На текущий момент самая последняя версия КриптоПро CSP 4.0.9944. Запускаем установщик, оставляем галку "Установить корневые сертификаты" и нажимаем "Установить (Рекомендуется)"

Инсталляция КриптоПРО будет выполнена в фоновом режиме, после которой вы увидите предложение, о перезагрузке браузера, но я вам советую полностью перезагрузиться.

После перезагрузки подключайте ваш USB токен JaCarta. У меня подключение идет по сети, с устройства DIGI, через клиента Anywhere View
. В клиенте Anywhere View, мой USB носитель Jacarta, успешно определен, но как Microsoft Usbccid (WUDF), а в идеале должен определиться как JaCarta Usbccid Smartcard, но нужно в любом случае проверить, так как все может работать и так.

Открыв утилиту "Единый клиент Jacarta PKI", подключенного токена обнаружено не было, значит, что-то с драйверами.

Microsoft Usbccid (WUDF) - это стандартный драйвер Microsoft, который по умолчанию устанавливается на различные токены, и бывает, что все работает, но не всегда. Операционная система Windows по умолчанию, ставит их в виду своей архитектуры и настройки, мне вот лично в данный момент такое не нужно. Что делаем, нам нужно удалить драйвера Microsoft Usbccid (WUDF) и установить драйвера для носителя Jacarta.
Откройте диспетчер устройств Windows, найдите пункт "Считыватели устройств смарт-карт (Smart card readers)" щелкните по Microsoft Usbccid (WUDF) и выберите пункт "Свойства". Перейдите на вкладку "Драйвера" и нажмите удалить (Uninstall)

Согласитесь с удалением драйвера Microsoft Usbccid (WUDF).

Вас уведомят, что для вступления изменений в силу, необходима перезагрузка системы, обязательно соглашаемся.

После перезагрузки системы, вы можете увидеть установку устройства и драйверов ARDS Jacarta.

Откройте диспетчер устройств, вы должны увидеть, что теперь ваше устройство определено, как JaCarta Usbccid Smartcar и если зайти в его свойства, то вы увидите, что смарт карта jacarta, теперь использует драйвер версии 6.1.7601 от ALADDIN R. D. ZAO, так и должно быть.

Если открыть единый клиент Jacarta, то вы увидите свою электронную подпись, это означает, что смарт карта нормально определилась.

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

ОБЯЗАТЕЛЬНО снимите галку "Не использовать устаревшие cipher suite-ы" и перезагрузитесь
.

После этих манипуляций у меня КриптоПРО увидел сертификат и смарт карта jacarta стала рабочей, можно подписывать документы.

Еще можете в устройствах и принтерах, увидеть ваше устройство JaCarta,

Если у вас как и у меня, токен jacarta установлен в виртуальной машине, то вам придется устанавливать сертификат, через console виртуальной машины, и так же дать на нее права
ответственному человеку. Если это физический сервер, то там придется давать права на порт управления
, в котором так же есть виртуальная консоль.
Алгоритм решения проблем с JaCarta
КриптоПРО очень часто вызывает различные ошибки в Windows, простой пример ( Windows installer service could not be accessed
). Вот так вот выглядит ситуация, когда утилита КриптоПРО не видит сертификат в контейнере.

Как видно в утилите UTN Manager ключ подключен, он видится в системе в смарт картах в виде Microsoft Usbccid (WUDF) устройства, но вот CryptoPRO, этот контейнер не определяет и у вас нет возможности установить сертификат. Локально токен подключали, все было то же самое. Стали думать что сделать.
