Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Оглавление
outlinetrue

КриптоПро CSP

...

Назначение

Криптопровайдер Криптопровайдер (Cryptography Service Provider, CSP) — независимый программный модуль, позволяющий осуществлять криптографические операции. Криптопровайдер КриптоПро CSP предназначен для:

...

https://www.cryptopro.ru/products/csp

Предупреждение

В При работе с Astra Linux в качестве СКЗИ разрешается использовать только следующие версии КриптоПро CSP следующих версий:

  • КриптоПро CSP версии 4.0 R4;
  • КриптоПро CSP версии 5.0;

Указанные СКЗИ должны использоваться в исполнениях 1-Base или 2-Base. 

СКЗИ КриптоПро CSP в исполнении 2-Base должно использоваться с аппаратно-программным модулем доверенной загрузки (АПМДЗ). 

При эксплуатации СКЗИ необходимо соблюдать требования и рекомендации эксплуатационной документации на СКЗИ, в частности требования по защите от несанкционированного доступа и по криптографической защите, а также требования по поддерживаемым СКЗИ аппаратно-программным платформам. В частности, при использовании СЭП со встроенным СКЗИ необходимо проведение проверки программного обеспечения BIOS ЭВМ, на которых предполагается функционирование СКЗИ и СЭП, на соответствие методическим документам ФСБ России в области исследований программного обеспечения BIOS. 

Контроль целостности СКЗИ и СЭП должен выполняться с использованием механизма замкнутой программной среды ОС или с использованием стандартных средств контроля целостности КриптоПро CSP.

...

Для написания настоящей статьи была использована сертифицированная версия ПО «КриптоПро» «4.0 R4». При этом был выполнен следующий алгоритм действийбыли выполнены следующие действия:

...

  1. Загрузить архив с сертифицированной версией ПО «КриптоПро». Название полученного файла: «linux-amd64_deb.tgz»;

...

  1. Открыть "Терминал Fly" (

...

  1. горячая клавиша Alt+T);

...

  1. Разархивировать полученный архив в терминале командой:

    Command
    tar -zxf linux-amd64_deb.tgz

...


  1. Перейти в каталог с ПО: 

    Command
    cd linux-amd64_deb

...


  1. Установить ПО с помощью запуска сценария "install.sh" или  "instal_gui.sh" командой:

    Command
    sudo ./install_gui.sh



* Выбрать необходимые модули, библиотеки.

...

Command
dpkg -l | grep cprocsp


...

Настройка путей к исполняемым файлам

Для того, чтобы не вводить каждый раз полный путь к утилитам КриптоПро CSP, в терминале FLY следует ввести команду:

...

Установка дополнительных пакетов с модулем поддержки  для токена

Предупреждение

...

Начиная с версии КриптоПро 4.0 R4 и выше, модули поддержки смарт-карт входят в состав пакета и отдельная их установка не требуется.

Для более ранних версий:


Раскрыть

Для корректной работы с токеном/смарт-картой обязательно требуется установить

...

дополнительные пакеты libccid, libgost-astra , пакеты pcscd. Команда для установки:

Command
sudo apt install libccid pcscd libgost-astra

Пакеты с модулем поддержки:

После установки пакетов с модулем поддержки токена следует перезагрузить службу pcscd:

Command
sudo service pcscd restart



Ключ КриптоПРО CSP для работы в режиме замкнутой программной среды Astra Linux SE.

Информация

Подробнее про режим замкнутой программной среды и про работу в этом режиме см. Astra Linux: Режим замкнутой программной среды

Предупреждение
Начиная с версии КриптоПро 4.0 R4 и выше, модули поддержки смарт-карт входят в состав пакета.

...

Ключ для обеспечения работы в режиме замкнутой программной среды Astra Linux SE

...

доступен по ссылке: https://cryptopro.ru/sites/default/files/private/csp/cryptopro_pub_key.gpg. Для загрузки ключа требуется регистрация.

Для регистрации ключа:

  • Установить пакет astra-digsig-oldkeys:

    Command
    sudo apt install

Перед импортом ключа, следует:

  • Установить пакет
    astra-digsig-oldkeys
    ;


  • Создать каталог /etc/digsig/keys/legacy/cryptopro:

    Command
    sudo mkdir -p /
    Ключ для работы в режиме замкнутой программной среды Astra Linux SE следует загрузить и поместить в предварительно созданный каталог /
    etc/digsig/keys/legacy/cryptopro
    ;

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


  • Выполнить команду:

    Command
    sudo update-initramfs -uk all


  • Перезагрузить компьютер.

...

...

см. Astra Linux: Режим замкнутой программной среды




Проверка Проверка срока истечения лицензии

Проверить срок истечения лицензии можно командой:

Command
/opt/cprocsp/sbin/amd64/cpconfig -license -view

Image Modified





Установка лицензии

Для установки другой лицензии следует выполнить команду :

Command
sudo /opt/cprocsp/sbin/amd64/cpconfig -license -set <ваш<номер_лицензионный_номер>лицензии>


Носители и контейнеры

...

Идентификация токена

...

Информация

При наличии кириллических символов в имени ключевого контейнера для дальнейшей работы с таким контейнером необходимо использовать его уникальный идентификатор. Чтобы получить уникальные идентификаторы ключевых контейнеров используйте команду:

Command
/opt/cprocsp/bin/amd64/csptest -keys -enum -verifyc -fqcn -un



Примечание

Следует учесть про Особенности применения PIN-коды кодов в контейнерах:

  • если аутентификацию осуществляет само устройство осуществляет аутентификацию (как, например, токен), то PIN при создании контейнера не создаётсясоздается, а предъявляется, так как он - свойство устройства. Как следствие: у всех контейнеров на токене одинаковый PIN.;
  • если устройство аутентификацию не осуществляет (как HDIMAGE), то при создании контейнера создаётся создается и PIN-код. Следствие: у всех контейнеров, PIN-код на HDIAMGE может быть разным.

...

Command
/opt/cprocsp/bin/amd64/csptestf -passwd -cont '\\.\Aktiv Rutoken ECP 00 00\TestContainer' -change 'новый<новый_пароль' пароль> -passwd 'старый<старый_парольпароль>


Примечание

В случае, если контейнеру с ключом не был задан PIN, следует воспользоваться командой: 

Command
/opt/cprocsp/bin/amd64/csptestf -passwd -cont '\\.\Aktiv Rutoken ECP 00 00\TestContainer' -change 'Ваш_новый_пароль'<новый_пароль>



Менеджер сертификатов КриптоПро в Linux

...

Установка списка отозванных сертификатов (CRL) , ставим его (список загружается с того же сайта и устанавливается в mca):

Command
wget https://structure.mil.ru/download/doc/morf/military/files/crl_20.crl -O - | sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mca -stdin -crl 

...

Информация
titleПримечание

В опции -pattern >>>  'rutoken' может быть другим в зависимости от подключенного токена.

В случае, если требуется установка сертификата УЦ и CRL на рабочую станцию, не имеющую доступа к сети, следует:

  • сохранить сертификаты в файлах
,
  • ;
  • перенести
их
  • файлы на рабочую станцию
. и
  • ;
  • в команде установки
заменить параметр
  • вместо параметра -stdin
заменить на
  • применить параметр -file с указанием имени файла.

Например:

  1. Сохранить файлы:

    Command
    wget https://structure.mil.ru/download/doc/morf/military/files/ca2020.cer
    wget https://structure.mil.ru/download/doc/morf/military/files/crl_20.crl


  2. Перенести файлы на рабочую станцию;
  3. Установить файлы на рабочей станции:

    Command

    sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mRoot -file ca2020.cer
    sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mca -file crl_20.crl -crl 



...

Информация
titleПримечание
1)
  1. Имена хранилищ указаны в
формате  certmgr, у
  1. формате, используемом программой certmgr. У программы cryptcp похожий формат: -mroot и -uAddressBook.
2)
  1. Из под учетной записи пользователя
ставится
  1. установка выполняется в хранилище uca, из под учетной записи администратора
ставить
  1. установка выполняется в хранилище mca:
3)
  1. В опции -pattern можно указать

пустые
  1. пустое значение < ' ' > чтобы установить все сертификаты в uMy. Пример: 

    Command
    /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ''
4)

  1. В случае, если личный сертификат

извлечен,
  1. устанавливается из файла следует использовать опцию -file :

    Command
    certmgr -inst -file cert.cer -store uMy
5)

  1. Хранилища пользователей хранятся в /var/opt/cprocsp/users


Просмотр

Для просмотра выше ранее установленных сертификатов можно воспользоваться :

...

Command
/opt/cprocsp/bin/amd64/certmgr -delete

после чего После выполнения команды на экран будет выведен весь список сертификатов и предложение ввести номер удаляемого сертификата.

...

Command

csptest -keyset -enum_cont -verifycontext -fqcn

И как обычно, связываем Связываем сертификат и закрытый ключ:

...

Информация
CP_PRINT_CHAIN_DETAIL=1 --> включает режим отладки

В нашем примере , из логов можно сделать вывод, что нам надо установить сертификат УЦ МО с CN=Министерство обороны Российской Федерации:

...

Подпись документа может быть сделана двумя способами:*

  • attached (присоединенная), когда результирующий файл - это CMS-сообщение, внутрь которого упакованы данные и атрибуты (типа подписи). Формат сообщения соответствует международному стандарту, поэтому извлекать данные оттуда можно любыми утилитами, типа cryptcp / csptest / openssl / certutil (на windows)

...

  • ;

...

  • detached (отсоединенная), когда результирующий файл - это CMS-сообщение БЕЗ исходных данных, но с атрибутами (типа подписи). В этом случае для проверки надо "принести" исходный файл. Разумеется он остаётся неизменным и его можно смотреть cat-ом
Примечание

Про CMS-сообщения, есть хорошая статья на ХабреПодробнее см. Форматы электронной подписи


Подпись файлов (

...

присоединенная)

Command
Title/opt/cprocsp/bin/amd64/cryptcp -sign -dn 'CN=Название_нужного_сертификата' -der zayavlenie.pdf

CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.

Будет использован следующий сертификат:
Субъект: "АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Москва, 77 г.
Москва, RU, шоссе Варшавское д. 26, mail@rusbitech.ru

Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

Цепочки сертификатов проверены.
Папка './': raport.pdf...
Подпись данных...

Подписанное сообщение успешно создано.
[ErrorCode: 0x00000000]

Подпись файлов (

...

отсоединенная)

Command
Title/opt/cprocsp/bin/amd64/cryptcp -sign -detach -dn 'CN=Название_нужного_сертификата' -pin 12345678 raport.pdf raport.pdf.sig

 CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.

Будет использован следующий сертификат: Субъект:"АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Москва, 77 г.
Москва, RU, шоссе Варшавское д. 26, mail@rusbitech.ru

Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

Цепочки сертификатов проверены.
Папка './': raport.pdf... Подпись данных...

Подписанное сообщение успешно создано.
[ErrorCode: 0x00000000]

Проверка подписи в файле

...

Проверка прикрепленной подписи

Для проверки прикрепленной подписи выполните:

Command
Title/opt/cprocsp/bin/amd64/cryptcp -verify raport.pdf.sig

CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.

Найдено сертификатов: 4
Цепочки сертификатов проверены.
Папка './':
raport.pdf.sig ... Проверка подписи...

Автор подписи: "АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Москва, 77 г.
Москва, RU, шоссе Варшавское д. 26, mail@rusbitech.ru
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

 Подпись проверена.
[ErrorCode: 0x00000000] 

Способ "естественный"

использовать Использовать ключ -verall, указывающий, что надо найти всех подписавших, в том числе в сообщении:

Command
Title/opt/cprocsp/bin/amd64/cryptcp -verify -verall -detached /home/shuhrat/smolensk/raport.pdf raport.pdf.sig

CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.
Папка '/home/shuhrat/smolensk/': /home/shuhrat/smolensk/raport.pdf... Проверка подписи...

Автор подписи: "АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Москва, 77 г.
Москва, RU, шоссе Варшавское д. 26, mail@rusbitech.ru
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

Цепочки сертификатов проверены.
Папка './': raport.pdf... Проверка подписи...

 Подпись проверена.
[ErrorCode: 0x00000000]

Способ "обучающий"

указать Указать в качестве хранилища сертификатов само сообщение (ключ -f):

...

Графический интерфейс КриптоПро CSP v. 5.0 (cptools)

...

В версии КриптоПро 5 появилась графическая утилита появился графический инструмент для работы с сертификатами - cptools. её Инструмент можно запустить из консоли:

...

Для того, чтобы удалить ПО КриптоПро CSP,  в терминале FLY следует ввести последовательно 3 команды:

Command

sudo rm -rf /opt/cprocsp
sudo rm -rf /var/opt/cprocsp/
sudo rm -rf /etc/opt/cprocsp/


Отключение сообщений о необходимости перехода на ГОСТ Р 34.10-2012

...

Примечание

На данный момент завершается сертификация обновленной версии КриптоПро CSP 4.0 R4.  Для наиболее безболезненного продолжения работы с ГОСТ Р 34.10-2001 в 2019 году мы рекомендуем обновиться до этой версии. В более ранних версиях КриптоПро CSP , а также Клиент и Клиент HSM 2.0 присутствуют технические ограничения формирования подписи по ГОСТ Р 34.10-2001 после 1 января 2019 года, о чем выдаются предупреждения в виде соответствующих предупреждающих окон.



Полезные ссылки

...

КриптоПро: IFCP plugin для входа ЕСИА (Госуслуги)

...

В результате должен получится архив в файле cprodiag_день_месяц_год.tar.gz архив, который следует прислать в в техническую поддержку Astra Linux и КриптоПро.