Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline keny  
#1 Оставлено : 16 февраля 2021 г. 11:23:32(UTC)
keny

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.08.2020(UTC)
Сообщений: 7

На Шаге 1 я создал контейнер \\.\HDIMAGE\minica_gost_root

Теперь действую по инструкции https://support.cryptopr...omoshhju-csptest--minica и там первой из команд указана /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -provtype 80 -provider "Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider" -container "minica_gost_root" -password "1" -store mRoot -fcert /tmp/gost_root.cer. Я её модифицировал под свои нужды, но получил ошибку "Error 0x80070005: Access is denied".
Цитата:
u1@p1:~$ sudo -u www-data /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root" -store mRoot -fcert /tmp/gost_root.cer
Requested container has been opened

Press keys...
[..........................................................................]

Crypto-Pro GOST R 34.10-2012 KC1 CSP requests new container password
New password:
Confirm password:
Output file (/tmp/gost_root.cer) has been saved
../../../../CSPbuild/CSP/samples/csptest/minica.c:228:CertAddEncodedCertificateToStore
Error 0x80070005: Access is denied.
Total: SYS: 0,020 sec USR: 0,070 sec UTC: 15,050 sec
[ErrorCode: 0x80070005]
u1@p1:~$ sudo -u www-data /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root" -store mRoot -fcert /tmp/gost_root.cer
Insert empty carrier to create container minica_gost_root
Press 'c' to cancel:
Press 'c' to cancel: c
../../../../CSPbuild/CSP/samples/csptest/minica.c:533:CryptAcquireContextW
Error 0x8010006e: The action was cancelled by the user.
Total: SYS: 0,000 sec USR: 0,050 sec UTC: 16,990 sec
[ErrorCode: 0x8010006e]



---

u1@p1:~$ sudo -u www-data /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root1" -store mRoot -fcert /tmp/gost_root.cer
Requested container has been opened

Press keys...
[..........................................................................]

Crypto-Pro GOST R 34.10-2012 KC1 CSP requests new container password
New password:
Confirm password:
Output file (/tmp/gost_root.cer) has been saved
../../../../CSPbuild/CSP/samples/csptest/minica.c:228:CertAddEncodedCertificateToStore
Error 0x80070005: Access is denied.
Total: SYS: 0,040 sec USR: 0,070 sec UTC: 24,250 sec
[ErrorCode: 0x80070005]
u1@p1:~$ /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root1" -store mRoot -fcert /tmp/gost_root.cer
../../../../CSPbuild/CSP/samples/csptest/minica.c:533:CryptAcquireContextW
Error 0x8009001a: Keyset as registered is invalid.
Total: SYS: 0,000 sec USR: 0,010 sec UTC: 0,010 sec
[ErrorCode: 0x8009001a]
u1@p1:~$ /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root2" -store mRoot -fcert /tmp/gost_root.cer
Requested container has been opened

../../../../CSPbuild/CSP/samples/csptest/minica.c:555:CryptGenKey
Error 0x80090020: An internal error occurred.
Total: SYS: 0,000 sec USR: 0,060 sec UTC: 1,080 sec
[ErrorCode: 0x80090020]
u1@p1:~$ /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root3" -store mRoot -fcert /tmp/gost_root.cer
Requested container has been opened

../../../../CSPbuild/CSP/samples/csptest/minica.c:555:CryptGenKey
Error 0x80090020: An internal error occurred.
Total: SYS: 0,000 sec USR: 0,060 sec UTC: 1,070 sec
[ErrorCode: 0x80090020]
u1@p1:~$ /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root7342895734295" -store mRoot -fcert /tmp/gost_root.cer
Requested container has been opened

../../../../CSPbuild/CSP/samples/csptest/minica.c:555:CryptGenKey
Error 0x80090020: An internal error occurred.
Total: SYS: 0,000 sec USR: 0,060 sec UTC: 1,060 sec
[ErrorCode: 0x80090020]
Offline Андрей Русев  
#2 Оставлено : 16 февраля 2021 г. 16:00:23(UTC)
Русев Андрей

Статус: Сотрудник

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,268

Сказал(а) «Спасибо»: 22 раз
Поблагодарили: 445 раз в 324 постах
Добавил в статью примечание про запуск под root.
Официальная техподдержка. Официальная база знаний.
Offline keny  
#3 Оставлено : 19 февраля 2021 г. 14:11:03(UTC)
keny

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.08.2020(UTC)
Сообщений: 7

Автор: Андрей Русев Перейти к цитате
Добавил в статью примечание про запуск под root.


Спасибо, под рутом ошибок нет, создал от имени рута контейнер и потом также под рутом использовал minica. Меня смущает PrivateKey Link: No при выполнении команды sudo /opt/cprocsp/bin/amd64/certmgr -list, при этом команда sudo /opt/cprocsp/bin/amd64/cryptcp -sign -cert -detached -nochain -thumbprint выдаёт ошибку "Can not get certificate private key".

Цитата:
sudo /opt/cprocsp/bin/amd64/cryptcp -sign -cert -detached -nochain -thumbprint add05cfc8cac17da0b0df09e289e1a7688fc0e66 /var/www/html/document /var/www/html/document_signature
CryptCP 5.0 (c) "Crypto-Pro", 2002-2020.
Command prompt Utility for file signature and encryption.

The following certificate will be used:
RDN:MiniCA GOST leaf cert
Valid from 19.02.2021 10:01:18 to 13.08.2022 10:11:18

Folder '/var/www/html/':
/var/www/html/document... Error: Can not get certificate private key.
../../../../CSPbuild/CSP/samples/CPCrypt/DSign.cpp:487: 0x20000136


Лог minica:
Цитата:

u1@p1:~$ sudo /opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont '\\.\HDIMAGE\minica_gost_root2'
[sudo] password for u1:
CSP (Type:80) v5.0.10008 KC1 Release Ver:5.0.11998 OS:Linux CPU:AMD64 FastCode:READY:AVX.
AcquireContext: OK. HCRYPTPROV: 32734979
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP
Container name: "minica_gost_root2"
Signature key is not available.
Attempting to create a signature key...
Press keys...
[..............................................................................]
Crypto-Pro GOST R 34.10-2012 KC1 CSP requests new container password
New password:
Confirm password:
a signature key created.
Exchange key is not available.
Attempting to create an exchange key...
Press keys...
[..........................................................................]

an exchange key created.
Keys in container:
signature key
exchange key
Extensions:
OID: 1.2.643.2.2.37.3.9
PrivKey: Not specified - 19.05.2022 10:08:13 (UTC)

OID: 1.2.643.2.2.37.3.10
PrivKey: Not specified - 19.05.2022 10:08:23 (UTC)
Total: SYS: 0,040 sec USR: 0,030 sec UTC: 36,730 sec
[ErrorCode: 0x00000000]
u1@p1:~$ sudo /opt/cprocsp/bin/amd64/csptest -minica -root -dn "CN=MiniCA GOST root cert" -container "minica_gost_root2" -store mRoot -fcert /tmp/gost_root.cer
Requested container has been opened

Press keys...
[..........................................................................]

Crypto-Pro GOST R 34.10-2012 KC1 CSP requests new container password
New password:
Confirm password:
First input and confirmation are not the same.
New password:
Confirm password:
Output file (/tmp/gost_root.cer) has been saved

Following certificate has been installed in "Root" store:
Subject: CN=MiniCA GOST root cert
Valid : 19.02.2021 09:58:52 - 13.08.2022 10:08:52 (UTC)
Issuer : CN=MiniCA GOST root cert

Total: SYS: 0,000 sec USR: 0,090 sec UTC: 14,760 sec
[ErrorCode: 0x00000000]
u1@p1:~$ sudo /opt/cprocsp/bin/amd64/csptest -minica -leaf -dn "CN=MiniCA GOST leaf cert" -container "minica_gost_leaf2" -password "" -store mMy -fcert /tmp/gost_leaf.cer -issuer "CN=MiniCA GOST root cert" -ipassword "" -istore mRoot
Issuer certificate:
#0:
Subject: CN=MiniCA GOST root cert
Valid : 19.02.2021 09:58:52 - 13.08.2022 10:08:52 (UTC)
Issuer : CN=MiniCA GOST root cert

Requested container has been opened

Press keys...
[..........................................................................]

oOutput file (/tmp/gost_leaf.cer) has been saved

Following certificate has been installed in "My" store:
Subject: CN=MiniCA GOST leaf cert
Valid : 19.02.2021 10:01:18 - 13.08.2022 10:11:18 (UTC)
Issuer : CN=MiniCA GOST root cert

Total: SYS: 0,010 sec USR: 0,090 sec UTC: 20,810 sec
[ErrorCode: 0x00000000]
u1@p1:~$ sudo /opt/cprocsp/bin/amd64/csptest -minica -crl -store mCa -fcrl /tmp/gost.crl -issuer "CN=MiniCA GOST root cert" -ipassword "" -istore mRoot
Issuer certificate:
#0:
Subject: CN=MiniCA GOST root cert
Valid : 19.02.2021 09:58:52 - 13.08.2022 10:08:52 (UTC)
Issuer : CN=MiniCA GOST root cert

Output file (/tmp/gost.crl) has been saved

CRL has been installed in "Ca" store

Total: SYS: 0,000 sec USR: 0,010 sec UTC: 0,010 sec
[ErrorCode: 0x00000000]
u1@p1:~$ sudo /opt/cprocsp/bin/amd64/cryptcp -copycert -errchain -f /tmp/gost_leaf.cer
CryptCP 5.0 (c) "Crypto-Pro", 2002-2020.
Command prompt Utility for file signature and encryption.

The following certificate will be used:
RDN:MiniCA GOST leaf cert
Valid from 19.02.2021 10:01:18 to 13.08.2022 10:11:18

Certificate chains are checked.
Certificate's been copied.
[ErrorCode: 0x00000000]
u1@p1:~$

---

u1@p1:~$ sudo /opt/cprocsp/bin/amd64/certmgr -list
Certmgr 1.1 (c) "Crypto-Pro", 2007-2020.
Program for managing certificates, CRLs and stores.
=============================================================================
1-------
Issuer : CN=MiniCA GOST root cert
Subject : CN=MiniCA GOST leaf cert
Serial : 0x563858E58EE0B5C6
SHA1 Hash : add05cfc8cac17da0b0df09e289e1a7688fc0e66
SubjKeyID : 88b4db486bd7faf51a00dc9720b69d2df8183bd4
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 256 бит (512 bits)
Not valid before : 19/02/2021 10:01:18 UTC
Not valid after : 13/08/2022 10:11:18 UTC
PrivateKey Link : No
=============================================================================

[ErrorCode: 0x00000000]

Отредактировано пользователем 19 февраля 2021 г. 14:12:53(UTC)  | Причина: Не указана

Offline Зубов Иван  
#4 Оставлено : 24 февраля 2021 г. 15:05:18(UTC)
Зубов Иван

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 02.11.2017(UTC)
Сообщений: 44
Мужчина

Сказал «Спасибо»: 7 раз
Поблагодарили: 19 раз в 17 постах
При создании вы поместили сертификат в хранилище mMy, т.е. в хранилище в Local Machine. Затем вы копировали сертификат из файла в uMy, т.е. в хранилище в User. Копировать туда -- поведение cryptcp -copycert по умолчанию. Копирование из файла произошло без привязки к закрытому ключу. Команда certmgr -list по умолчанию показывает содержимое хранилища uMy, где был сертификат-копия без привязки к закрытому ключу. В mMy по-прежнему лежит правильный сертификат-оригинал с привязкой к закрытому ключу. Убедиться в этом можно командой /opt/cprocsp/bin/amd64/certmgr -list -store mMy. Аналогично решается и проблема с подписью: необходимо указать cryptcp, что сертификат следует искать в хранилище mMy, а не в uMy, где cryptcp ищет его по умолчанию.

Чтобы было меньше путаницы, поправили инструкцию, чтобы команды cryptcp -copycert в ней производили копирование из одного файла в другой, а не в хранилище. Спасибо, что сообщили!

Отредактировано пользователем 24 февраля 2021 г. 15:09:57(UTC)  | Причина: Добавил про ошибку при подписи.

Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.