Создание контейнера


В носителе HDIMAGE

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

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont '\\.\HDIMAGE\имя_контейнера'

Если локального носителя не существует, то его можно создать командой:


sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add HDIMAGE store


HDIMAGE размещается на /var/opt/cprocsp/keys/<имя пользователя>/


В носителе токена

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

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont '\\.\Aktiv Rutoken ECP 00 00\имя_контейнера'

В носителе usb flash drive:

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont '\\.\FLASH\имя_контейнера'

Через графическую оболочку

В 5-ой версии КриптоПРО CSP v.5.0, для создания контейнера, имя носителя можно не указывать, а выбрать в интерактивном gtk-диалоге:

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont 'имя_контейнера'


Для неизвлекаемого контейнера, в GTK-окне следует выбрать "Вид приложения" → "Active token without secure channel" :


Создание запроса на получение сертификата для созданного контейнера ключей



Для создания запроса на получение сертификата для контейнера '\имя_контейнера' , воспользуемся командой:

/opt/cprocsp/bin/amd64/cryptcp -creatrqst -dn "E=user@astralinux.ru,C=RU, CN=Иванов Иван, SN=Иванов" -hashalg 1.2.643.7.1.1.2.2 -nokeygen -both -ku -cont 'имя_контейнера' cert.req

В параметре -dn указываются данные, которые будут хранится в поле Subject сертификата.

В параметре -hashalg указывается алгоритм хэширования. В случае примера использовался  OID 1.2.643.7.1.1.2.2 - ГОСТ Р 34.11-12 с длиной 256

-nokeygen - использовать существующие ключи из указанного контейнера;

-both* - создать/использовать оба типа ключей;

-ku* - использовать контейнер пользователя (CURRENT_USER);

Более подробная информация про опции утилиты cryptcp: Инструкция

 

 

Созданный запрос будет сохранен в файле cert.req. Эти данные нужны для получения сертификата в удостоверяющем центре.

Для примера можно воспользоваться тестовым  удостоверяющим центром КриптоПро. Нам нужен пункт " Отправить готовый запрос PKCS#10 или PKCS#7 в кодировке Base64 ". На следующей странице в поле «Сохраненный запрос» вставляем содержимое файла cert.req и нажимаем кнопку «Выдать».

Для просмотра содержимого cert.req, воспользуйтесь командой: $ cat  cert.req


После чего следует загрузить сертификат и цепочку сертификатов:

Для установки полученного личного сертификата от тестового УЦ, следует воспользоваться командой:

  1. Установить сертификат УЦ:

    /opt/cprocsp/bin/*/certmgr -inst -crl -file <имя_файла_с_сертификатом_УЦ>l -store CA

  2. Добавить цепочку сертификатов:

    /opt/cprocsp/bin/*/certmgr -inst -file <имя_файла_с_цепочкой_сертификатов> -store uRoot

  3. Установить сам сертификат:

    /opt/cprocsp/bin/amd64/certmgr -inst -file <имя_файла_с_полученным_сертификатом> -cont <имя_контейнера>

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

/opt/cprocsp/bin/amd64/csptest -keys -cont <имя_контейнера> -keyt exchange -impcert <имя_файла_с_полученным_сертификатом>


С помощью опции -certusage можно указать OID назначение сертификата

Назначение сертификата представляется в сертификате объектным идентификатором, присвоенным этой политике, - OID. Если в сертификате указано несколько политик, то это означает, что сертификат соответствует всем этим политикам списка.

1.3.6.1.5.5.7.3.1

может использоваться как сертификат серверной аутентификации

1.3.6.1.5.5.7.3.2

может использоваться как сертификат клиентской аутентификации

1.3.6.1.5.5.7.3.3

может использоваться для электронной подписи кода

1.3.6.1.5.5.7.3.4

может использоваться для защиты электронной почты (электронная подпись, шифрование, key agreement)

1.3.6.1.5.5.7.3.8

может использоваться для включения значения хэш-функции при создании штампа времени на документы в Службе штампов времени

1.3.6.1.5.5.7.3.9

может использоваться для формирования электронной подписи OCSP-запросов

* Объектные идентификаторы (OID) определяют отношения, при осуществлении которых электронный документ, подписанный ЭЦП, будет иметь юридическое значение. OID, зарегистрированные в Удостоверяющем центре, включаются состав следующих расширений сертификата ключа подписи: Key Usage (использование ключа), Extended Key Usage (расширенное использование ключа), Application Policy (политики применения сертификата).

Альтернативный метод получения тестового сертификата



1) Перейдите на сайт Тестового Удостоверяющего центра ООО "КРИПТО-ПРО"

2) Для получение сертификата, перейдите в раздел Сформировать ключи и отправить запрос на сертификат

3) Заполните идентифицирующие сведения:

4) Нажмите "Выдать", после чего выйдет GTK-окно для создания случайных последовательностей:

5) После чего, CryptoPro CSP потребует вести новый пароль для контейнера

6) Тестовый УЦ КриптоПро уведомит нас о том, что сертификат выдан

7) Пройти по ссылке и установить сертификат, введя пароль контейнера.

8) После успешной установки сертификата, следует перейти на страницу проверки создания электронной подписи CAdES-BES


Для отображения информации о сертификате, Вам необходимо установить сертификат из ридера в локальное хранилище uMy, как указано в 5 главе.


Получение тестового сертификата с помощью cli



Для запроса, получения и установки сертификата с тестового УЦ "КриптоПро"  - можно, воспользоваться одной командой:

/opt/cprocsp/bin/amd64/cryptcp -creatcert -dn "E=user@astralinux.ru,C=RU, CN=Иванов Иван, SN=Иванов" -both -cont '\\.\HDIMAGE\имя_контейнера' -ku -certusage "1.3.6.1.5.5.7.3.2" -ca http://testca.cryptopro.ru/certsrv -provt 80 -exprt