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

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

Ключ

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

...

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

Предупреждение
  • При работе с Astra Linux в качестве СКЗИ разрешается использовать только сертифицированные версии КриптоПро CSP.
На момент последнего обновления настоящей статьи это:
  • КриптоПро CSP версии 5.0 R2 исполнение 1-Base или 2-Base;
  • КриптоПро CSP версии 5.0 исполнение 1-Base или 2-Base;;
  • КриптоПро CSP версии 4.0 R4 исполнение 1-Base или 2-Base;;
СКЗИ КриптоПро CSP в исполнении 2-Base должно использоваться с аппаратно-программным модулем доверенной загрузки (АПМДЗ).
  •  
  • При эксплуатации СКЗИ необходимо соблюдать требования и рекомендации эксплуатационной документации на СКЗИ, в
частности
  • том числе требования по защите от несанкционированного доступа и по криптографической защите, а также требования по поддерживаемым СКЗИ аппаратно-программным платформам.
В частности, при использовании СЭП со встроенным СКЗИ необходимо проведение проверки программного обеспечения BIOS ЭВМ, на которых предполагается функционирование СКЗИ и СЭП, на соответствие методическим документам ФСБ России в области исследований программного обеспечения BIOS.
  •  
  • Контроль целостности СКЗИ и СЭП должен выполняться с использованием механизма замкнутой программной среды ОС или с использованием стандартных средств контроля целостности КриптоПро CSP.

Установка КриптоПро CSP

...

Архив с программным обеспечением КриптоПро CSP доступен для загрузки на официальном сайте www.cryptopro.ru. Для загрузки требуется регистрация на сайте.

...

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

  1. Загрузить архив с сертифицированной версией ПО «КриптоПро». Название полученного файла: «linux-amd64_deb.tgz»;
  2. Открыть "Терминал Fly" (горячая клавиша Alt+T);
  3. Разархивировать полученный архив в терминале командой:

    Command
    tar -zxf linux-amd64_deb.tgz


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

    Command
    cd linux-amd64_deb


  5. Установить ПО с помощью запуска сценария instal:

    1. Либо с для работы с графическим пользовательским интерфейсом запустив сценарий install_gui.sh командой:

      Command
      sudo ./install_gui.sh

      В процессе установи выбрать необходимые компоненты:
      Image Modified


    2. Либо с для работы без графического пользовательского интерфейса запустив сценарий instal.sh командой:

      Command
      sudo ./install.sh


Описание пакетов КриптоПро


ПакетОписание
Базовые пакеты:
cprocsp-curlБиблиотека libcurl с реализацией шифрования по ГОСТ
lsb-cprocsp-baseОсновной пакет КриптоПро CSP
lsb-cprocsp-capiliteИнтерфейс CAPILite и утилиты
lsb-cprocsp-kc1Провайдер криптографической службы KC1
lsb-cprocsp-rdrПоддержка ридеров и RNG
Дополнительные пакеты:
cprocsp-rdr-gui-gtkГрафический интерфейс для диалоговых операций
cprocsp-rdr-rutokenПоддержка карт Рутокен
cprocsp-rdr-jacartaПоддержка карт JaCarta
cprocsp-rdr-pcscКомпоненты PC/SC для ридеров КриптоПро CSP
lsb-cprocsp-pkcs11Поддержка PKCS11

Для просмотра всех установленных пакетов КриптоПро CSP можно использовать команду:  

...

Command
export PATH="$(/bin/ls -d /opt/cprocsp/{s,}bin/*|tr '\n' ':')$PATH"

Подробнее см.  Работа с переменными окружения в Astra Linux Присвоение значений переменным окружения для пользовательских сессий.

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

...

...

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

...

Для корректной работы с

...

токенами и смарт-

...

картами установить:

  • дополнительные пакеты из состава ОС:
    • libccid;
    • libgost-astra;

...

    • pcscd;
  • пакеты с модулями поддержки, предоставляемые производителями оборудования:

      ...

      ...

      Команда для установки пакетов из состава ОС:

      Command
      sudo apt install libccid pcscd libgost-astra

      Пакеты с модулями поддержки доступны по указанным выше ссылкам.

      ...

      Порядок установки модулей, предоставляемых производителями см. в инструкциях производителя, а также см. статьи Аладдин RD JaCarta в AstraLinux и Рутокен в Astra Linux.

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

      ...

      Ключ для обеспечения работы в режиме ЗПС 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 /etc/digsig/keys/legacy/cryptopro

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


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

        Command
        sudo update-initramfs -uk all


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

      ...

      Блок кода
      Nick name: HDIMAGE
      Connect name: 
      Reader name: HDD key storage
      
      Nick name: CLOUD
      Connect name: 
      Reader name: Cloud Token
      
      Nick name: Aktiv Rutoken lite 00 00
      Connect name: 
      Reader name: Aktiv Rutoken lite 00 00

      Чтобы узнать модель подключенного токена, следует модели подключенных токенов ввести команду:

      Command
      /opt/cprocsp/bin/amd64/csptest -card -enum -v -v

      После чего система выдаст информацию о подключенном устройствеподключенных устройствах, например:

      Блок кода
      Aktiv Rutoken lite 00 00
        Card present, ATR=3B 8B 01 52 75 74 6F 6B 65 6E 6C 69 74 65 C2 
        Unknown applet
      Total: SYS: 0,000 sec USR: 0,010 sec UTC: 0,310 sec
      [ErrorCode: 0x00000000]

      ...

      Раскрыть

      /opt/cprocsp/bin/amd64/csptestf -keyset -container 'Shuhrat' -info
      CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11233 OS:Linux CPU:AMD64 FastCode:READY:AVX.

      AcquireContext: OK. HCRYPTPROV: 8981043
      GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP
      Container name: "Shuhrat"
      Signature key is available. HCRYPTKEY: 0x8f3b03
      Exchange key is available. HCRYPTKEY: 0x8f9883
      Symmetric key is not available.
      UEC key is not available.

      CSP algorithms info:
        Type:Encrypt    Name:'GOST 28147-89'(14) Long:'GOST 28147-89'(14)
        DefaultLen:256  MinLen:256  MaxLen:256   Prot:0   Algid:00026142

        Type:Hash       Name:'GR 34.11-2012 256'(18) Long:'GOST R 34.11-2012 256'(22)
        DefaultLen:256  MinLen:256  MaxLen:256   Prot:0   Algid:00032801

        Type:Signature  Name:'GR 34.10-2012 256'(18) Long:'GOST R 34.10-2012 256'(22)
        DefaultLen:512  MinLen:512  MaxLen:512   Prot:0   Algid:00011849

        Type:Exchange   Name:'DH 34.10-2012 256'(18) Long:'GOST R 34.10-2012 256 DH'(25)
        DefaultLen:512  MinLen:512  MaxLen:512   Prot:0   Algid:00043590

        Type:Exchange   Name:'DH 34.10-2012 256'(18) Long:'GOST R 34.10-2012 256 DH'(25)
        DefaultLen:512  MinLen:512  MaxLen:512   Prot:0   Algid:00043591

        Type:Hash       Name:'GOST 28147-89 MAC'(18) Long:'GOST 28147-89 MAC'(18)
        DefaultLen:32   MinLen:8    MaxLen:32    Prot:0   Algid:00032799

        Type:Encrypt    Name:'GR 34.12 64 M'(14) Long:'GOST R 34.12-2015 64 Magma'(27)
        DefaultLen:256  MinLen:256  MaxLen:256   Prot:0   Algid:00026160

        Type:Encrypt    Name:'GR 34.12 128 K'(15) Long:'GOST R 34.12-2015 128 Kuznyechik'(33)
        DefaultLen:256  MinLen:256  MaxLen:256   Prot:0   Algid:00026161

        Type:Hash       Name:'GR 34.13 64 M MAC'(18) Long:'GOST R 34.13-2015 64 Magma MAC'(31)
        DefaultLen:64   MinLen:8    MaxLen:64    Prot:0   Algid:00032828

        Type:Hash       Name:'GR 34.13 128 K MAC'(19) Long:'GOST R 34.13-2015 128 Kuznyechik MAC'(37)
        DefaultLen:128  MinLen:8    MaxLen:128   Prot:0   Algid:00032829

        Type:Hash       Name:'GR34.11-12 256 HMAC'(20) Long:'GOST R 34.11-2012 256 HMAC'(27)
        DefaultLen:256  MinLen:256  MaxLen:256   Prot:0   Algid:00032820

      Status:
        Provider handles used:        6
        Provider handles max:         1048576
        CPU Usage:                    6 %
        CPU Usage by CSP:             0 %
        Measurement interval:         119 ms

        Virtual memory used:          15281652 KB
        Virtual memory used by CSP:   116572 KB
        Free virtual memory:          26053680 KB
        Total virtual memory:         41335332 KB

        Physical memory used:         14602360 KB
        Physical memory used by CSP:  12576 KB
        Free physical memory:         5857712 KB
        Total physical memory:        20460072 KB

      Key pair info:
        HCRYPTKEY:  0x8f3b03
        AlgID:      CALG_GR3410_12_256 = 0x00002e49 (00011849):
          AlgClass: ALG_CLASS_SIGNATURE
          AlgType:  ALG_TYPE_GR3410
          AlgSID:   73
        KP_HASHOID:
          1.2.643.7.1.1.2.2 (ГОСТ Р 34.11-2012 256 бит)
        KP_DHOID:
          1.2.643.2.2.35.1 (ГОСТ Р 34.10 256 бит, параметры по умолчанию)
        KP_SIGNATUREOID:
          1.2.643.2.2.35.1 (ГОСТ Р 34.10 256 бит, параметры по умолчанию)
        Permissions:
          CRYPT_READ
          CRYPT_WRITE
          CRYPT_IMPORT_KEY
          0x800
          0x2000
          0x20000
          0x100000
      KP_CERTIFICATE:
        Not set.

      Key pair info:
        HCRYPTKEY:  0x8f9883
        AlgID:      CALG_DH_GR3410_12_256_SF = 0x0000aa46 (00043590):
          AlgClass: ALG_CLASS_KEY_EXCHANGE
          AlgType:  ALG_TYPE_DH
          AlgSID:   70
        KP_HASHOID:
          1.2.643.7.1.1.2.2 (ГОСТ Р 34.11-2012 256 бит)
        KP_DHOID:
          1.2.643.2.2.36.0 (ГОСТ Р 34.10 256 бит, параметры обмена по умолчанию)
        KP_SIGNATUREOID:
          1.2.643.2.2.36.0 (ГОСТ Р 34.10 256 бит, параметры обмена по умолчанию)
        Permissions:
          CRYPT_READ
          CRYPT_WRITE
          CRYPT_IMPORT_KEY
          0x800
          0x10000
          0x20000
          0x100000
      KP_CERTIFICATE:
      Subject: INN=007814508921, E=user@astralinux.ru, C=RU, CN=Махмадиев Шухрат, SN=Махмадиев
      Valid  : 18.10.2018 12:07:24 - 18.01.2019 12:17:24 (UTC)
      Issuer : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2

      Container version: 2
      Carrier flags:
        This reader is removable.
        This reader supports unique carrier names.
        This carrier does not have embedded cryptography.
      Keys in container:
        signature key
        exchange key
      Extensions (maxLength: 1435):
        ParamLen: 46
        OID: 1.2.643.2.2.37.3.9
        Critical: FALSE
        Size: 19
        Decoded size: 24
        PrivKey: Not specified - 18.01.2020 07:31:07 (UTC)

        ParamLen: 47
        OID: 1.2.643.2.2.37.3.10
        Critical: FALSE
        Size: 19
        Decoded size: 24
        PrivKey: Not specified - 18.01.2020 07:31:12 (UTC)
      Total: SYS: 0,020 sec USR: 0,180 sec UTC: 2,180 sec
      [ErrorCode: 0x00000000]


      Информация

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

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


      ...

      Примечание

      Особенности применения PIN-кодов в контейнерах:

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

      ...

      Скопировать контейнер из локального хранилища в хранилище Рутокена токена Рутокен ЕЦП:

      Command
      csptestf -keycopy -contsrc '\\.\HDIMAGE\Контейнер_оригинал' -contdest '\\.\Aktiv Rutoken ECP 00 00\Контейнер_копия'

      ...

      • личные сертификаты (устанавливаются в хранилище umy, где u = User, my - имя хранилища). Для таких сертификатов, как правило, имеется закрытый ключ (и они требуют особой установки, чтобы в хранилище появилась ссылка на этот закрытый ключ). В результате с их использованием можно, например, подписать файл;

      • корневые сертификаты - краеугольный камень безопасности, так как цепочки доверия строятся от них.  Корневые сертификаты надо добавлять в хранилища осознанно и внимательно (устанавливаются в uroot, также администратор может поставить их в mroot, где m = Machine, такие сертификаты будут доступны в режиме read only в root-хранилищах всех пользователей);

      • промежуточные сертификаты - появляются, когда есть промежуточные УЦ (структура вида "головной УЦ" -> "промежуточный УЦ" -> "пользовательский сертификат"). Прямое доверие к ним не требуется (устанавливаются в uca, также администратор может поставить их в mca). В это же хранилище устанавливаются и списки отзыва сертификатов (CRL). Обычно точки получения промежуточных сертификатов и списков отзыва (CRL) правильно указаны в пользовательских сертификатах, поэтому они загружаются автоматически и устанавливаются в хранилище ucache. В общем про них можно ничего особо не знать и ничего не делать.Обычно непосредственная работа с промежуточными сертификатами не требуется;

      • сертификаты партнёров по общению, чтобы проверять их подписи и зашифровывать для них сообщения. Ставятся либо в umy (это не лучшая, но распространенная практика), либо в uAddressBook;

      ...

      Пример установки личного сертификата, выданного УЦ Министерства Обороны Российской Федерации

      ...

      Установка определенного сертификата с из определенного контейнера в uMy:

      ...

      Установка сертификата удостоверяющего центра ГУЦ в mRoot (подробнее см. Корневые и отозванные сертификаты):

      Command
      wget https://structurezgt.mil.ru/downloadupload/docsite228/morf/military/files/ca2020document_file/GUC_2022.cer -O - | sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mRoot -stdin

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

      Command
      wget httpshttp://structurereestr-pki.mil.ru/download/doc/morf/military/files/crl_20cdp/guc2022.crl -O - | sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mca -stdin -crl 

      ...

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

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

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

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

      Например:

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

        Command
        wget https://structurezgt.mil.ru/downloadupload/docsite228/morf/military/files/ca2020document_file/GUC_2022.cer
        wget httpshttp://structure.milreestr-pki.ru/download/doc/morf/military/files/crl_20cdp/guc2022.crl


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

        Command

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




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

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


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

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


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


      ...

      Для отключения данных предупреждений в КриптоПро CSP, нужно добавить два ключа в конфигурационный файл /etc/opt/cprocsp/config64.ini в существующую секцию Parameters

      Блок кода
      [Parameters]
      #Параметрыпровайдера# Параметры провайдера
      warning_time_gen_2001=ll:9223372036854775807
      warning_time_sign_2001=ll:9223372036854775807


      Примечание

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

      ...

      Перечень аккредитованных удостоверяющих центров

      https://e-trust.gosuslugi.ru/CA/Аккредитованные удостоверяющие центры


      Диагностический архив для обращения в тех. поддержку

      ...