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

Уведомление

Icon
Error

10 Страницы«<678910>
Опции
К последнему сообщению К первому непрочитанному
Online Санчир Момолдаев  
#141 Оставлено : 24 марта 2021 г. 5:50:57(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
такое ощущение что берется не тот сертификат у которого нет ссылки на зк
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
bsoft оставлено 25.03.2021(UTC)
Offline bsoft  
#142 Оставлено : 24 марта 2021 г. 6:08:38(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
других сертификатов нет:

Код:

master@serverub:/opt/cprocsp/bin/amd64$ ./certmgr -list
Certmgr 1.1 (c) "Crypto-Pro", 2007-2020.
Program for managing certificates, CRLs and stores.
=============================================================================
1-------
Issuer              : E=ucso@admsakhalin.ru, OGRN=1116501000770, INN=006501233462, C=RU, S=65 Сахалинская область, L=Южно-Сахалинск, STREET="Коммунистический проспект 39, корпус В", OU=Отдел информационной безопасности, O="ГБУ СО ""СОЦИ""", CN="ГБУ СО ""СОЦИ"""
Subject             : OGRN=1026500538129, INN=006501026762, E=de.kim@yuzhno-sakh.ru, C=RU, S=65 Сахалинская область, L=Южно-Сахалинск, O=Информационно аналитическая система управления городским развитием территории города Южно-Сахалинска, CN=Администрация г.Южно-Сахалинска, STREET=ул.Ленина 173, SN=Информационно аналитическая система управления городским развитием территории города Южно-Сахалинска
Serial              : 0x7E86E1B540342EA1EA1144B75360408C
SHA1 Hash           : 64c4c7c3de8903840b31317a9bf6c57320910dac
SubjKeyID           : ac2b92d9a8166b7eea37e39ab89070019553ca20
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
Not valid before    : 26/06/2020  00:22:44 UTC
Not valid after     : 26/06/2021  00:32:44 UTC
PrivateKey Link     : Yes
Container           : HDIMAGE\\iasugrt\7BE8
Provider Name       : Crypto-Pro GOST R 34.10-2012 KC1 CSP
Provider Info       : Provider Type: 80, Key Spec: 1, Flags: 0x0
OCSP URL            : http://pki.admsakhalin.ru/ocsp2012/ocsp.srf
CA cert URL         : http://pki.admsakhalin.ru/cdp/rucso2012.cer
CDP                 : http://pki.admsakhalin.ru/cdp2012
Extended Key Usage  : 1.3.6.1.5.5.7.3.2 Проверка подлинности клиента
                      1.3.6.1.5.5.7.3.4 Защищенная электронная почта
                      1.2.643.2.2.34.6
2-------
Issuer              : E=dit@minsvyaz.ru, C=RU, S=77 Москва, L=г. Москва, STREET="улица Тверская, дом 7", O=Минкомсвязь России, OGRN=1047702026701, INN=007710474375, CN=Минкомсвязь России
Subject             : E=ucso@admsakhalin.ru, OGRN=1116501000770, INN=006501233462, C=RU, S=65 Сахалинская область, L=Южно-Сахалинск, STREET="Коммунистический проспект 39, корпус В", OU=Отдел информационной безопасности, O="ГБУ СО ""СОЦИ""", CN="ГБУ СО ""СОЦИ"""
Serial              : 0x5E20C52900000000012D
SHA1 Hash           : f6ce1819b99a3f8fbd8b18dd9deb2811514cc495
SubjKeyID           : f48cad3a5f037b3de75af86f45be629f7d1dab91
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
Not valid before    : 12/10/2018  13:26:11 UTC
Not valid after     : 12/10/2033  13:26:11 UTC
PrivateKey Link     : No
CA cert URL         : http://reestr-pki.ru/cdp/guc_gost12.crt
CDP                 : http://reestr-pki.ru/cdp/guc_gost12.crl
CDP                 : http://company.rt.ru/cdp/guc_gost12.crl
CDP                 : http://rostelecom.ru/cdp/guc_gost12.crl
3-------
Issuer              : E=dit@minsvyaz.ru, C=RU, S=77 Москва, L=г. Москва, STREET="улица Тверская, дом 7", O=Минкомсвязь России, OGRN=1047702026701, INN=007710474375, CN=Минкомсвязь России
Subject             : E=dit@minsvyaz.ru, C=RU, S=77 Москва, L=г. Москва, STREET="улица Тверская, дом 7", O=Минкомсвязь России, OGRN=1047702026701, INN=007710474375, CN=Минкомсвязь России
Serial              : 0x4E6D478B26F27D657F768E025CE3D393
SHA1 Hash           : 4bc6dc14d97010c41a26e058ad851f81c842415a
SubjKeyID           : c254f1b46bd44cb7e06d36b42390f1fec33c9b06
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
Not valid before    : 06/07/2018  12:18:06 UTC
Not valid after     : 01/07/2036  12:18:06 UTC
PrivateKey Link     : No
=============================================================================

[ErrorCode: 0x00000000]
Offline bsoft  
#143 Оставлено : 24 марта 2021 г. 6:10:35(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Сам сертификат получаю так:
Код:

# Получаем сертификат ЭЦП
store = pycades.Store()
store.Open(pycades.CADESCOM_CONTAINER_STORE, pycades.CAPICOM_MY_STORE, pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
certs = store.Certificates
assert (certs.Count != 0), "Certificates with private key not found"
signer = pycades.Signer()
signer.Certificate = certs.Item(1)
Online Санчир Момолдаев  
#144 Оставлено : 24 марта 2021 г. 6:29:34(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
Автор: bsoft Перейти к цитате
Сам сертификат получаю так:
Код:

# Получаем сертификат ЭЦП
store = pycades.Store()
store.Open(pycades.CADESCOM_CONTAINER_STORE, pycades.CAPICOM_MY_STORE, pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
certs = store.Certificates
assert (certs.Count != 0), "Certificates with private key not found"
signer = pycades.Signer()
signer.Certificate = certs.Item(1)


во первых у вас в выводе три сертификата
во вторых вы берете первый попавшийся сертификат из коллекции. можете проверить в кроне certmgr -list >3.txt
удалите лишние № 2 и 3
либо ищите по отпечатку
Код:
thumbprint = "64c4c7c3de8903840b31317a9bf6c57320910dac"
certs = certs.Find(pycades.CAPICOM_CERTIFICATE_FIND_SHA1_HASH, thumbprint)
...
signer.Certificate = certs.Item(1)

Отредактировано пользователем 24 марта 2021 г. 6:31:04(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
bsoft оставлено 25.03.2021(UTC)
Offline bsoft  
#145 Оставлено : 24 марта 2021 г. 7:01:54(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Цитата:
во первых у вас в выводе три сертификата
во вторых вы берете первый попавшийся сертификат из коллекции. можете проверить в кроне certmgr -list >3.txt
удалите лишние № 2 и 3
2 и 3 это корневые сертификаты.

Сделал проверку:
Код:

# Получаем сертификат ЭЦП
store = pycades.Store()
store.Open(pycades.CADESCOM_CONTAINER_STORE, pycades.CAPICOM_MY_STORE, pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
certs = store.Certificates
assert (certs.Count != 0), "Certificates with private key not found"
print(certs.Count)
for i in range(certs.Count):
    print(certs.Item(i+1).Thumbprint)


Находит только 1 сертификат с нужным отпечатком:
Код:

1
64C4C7C3DE8903840B31317A9BF6C57320910DAC
Online Санчир Момолдаев  
#146 Оставлено : 24 марта 2021 г. 7:08:15(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
корневые сертификаты не должны быть в хранилище "личное" (my)
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
bsoft оставлено 25.03.2021(UTC)
Offline bsoft  
#147 Оставлено : 24 марта 2021 г. 7:12:21(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Цитата:
корневые сертификаты не должны быть в хранилище "личное" (my)
Подскажите как их правильно установить
Online Санчир Момолдаев  
#148 Оставлено : 24 марта 2021 г. 7:15:10(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
Автор: bsoft Перейти к цитате
Цитата:
корневые сертификаты не должны быть в хранилище "личное" (my)
Подскажите как их правильно установить


промежуточный в certmgr -inst -store ca -file filename.crt
корневой в certmgr -inst -store root -file filename.crt

у вас квалифицированная цепочка. корневые минкомсвязи в последних версиях csp уже установлены там

у вас есть пин на контейнере?

Отредактировано пользователем 24 марта 2021 г. 7:16:35(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
bsoft оставлено 25.03.2021(UTC)
Offline bsoft  
#149 Оставлено : 24 марта 2021 г. 7:17:58(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Цитата:
у вас есть пин на контейнере?
нет
Offline bsoft  
#150 Оставлено : 24 марта 2021 г. 7:34:27(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Корневые сертификаты из личного хранилища удалил
Код:
master@serverub:/opt/cprocsp/bin/amd64$ ./certmgr -list
Certmgr 1.1 (c) "Crypto-Pro", 2007-2020.
Program for managing certificates, CRLs and stores.
=============================================================================
1-------
Issuer              : E=ucso@admsakhalin.ru, OGRN=1116501000770, INN=006501233462, C=RU, S=65 Сахалинская область, L=Южно-Сахалинск, STREET="Коммунистический проспект 39, корпус В", OU=Отдел информационной безопасности, O="ГБУ СО ""СОЦИ""", CN="ГБУ СО ""СОЦИ"""
Subject             : OGRN=1026500538129, INN=006501026762, E=de.kim@yuzhno-sakh.ru, C=RU, S=65 Сахалинская область, L=Южно-Сахалинск, O=Информационно аналитическая система управления городским развитием территории города Южно-Сахалинска, CN=Администрация г.Южно-Сахалинска, STREET=ул.Ленина 173, SN=Информационно аналитическая система управления городским развитием территории города Южно-Сахалинска
Serial              : 0x7E86E1B540342EA1EA1144B75360408C
SHA1 Hash           : 64c4c7c3de8903840b31317a9bf6c57320910dac
SubjKeyID           : ac2b92d9a8166b7eea37e39ab89070019553ca20
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
Not valid before    : 26/06/2020  00:22:44 UTC
Not valid after     : 26/06/2021  00:32:44 UTC
PrivateKey Link     : Yes
Container           : HDIMAGE\\iasugrt\7BE8
Provider Name       : Crypto-Pro GOST R 34.10-2012 KC1 CSP
Provider Info       : Provider Type: 80, Key Spec: 1, Flags: 0x0
OCSP URL            : http://pki.admsakhalin.ru/ocsp2012/ocsp.srf
CA cert URL         : http://pki.admsakhalin.ru/cdp/rucso2012.cer
CDP                 : http://pki.admsakhalin.ru/cdp2012
Extended Key Usage  : 1.3.6.1.5.5.7.3.2 Проверка подлинности клиента
                      1.3.6.1.5.5.7.3.4 Защищенная электронная почта
                      1.2.643.2.2.34.6
=============================================================================

[ErrorCode: 0x00000000]

Промежуточный установил
Код:
master@serverub:/opt/cprocsp/bin/amd64$ ./certmgr -inst -store ca -file /home/master/soci.cer
Certmgr 1.1 (c) "Crypto-Pro", 2007-2020.
Program for managing certificates, CRLs and stores.
WARNING: Legacy parameter: "-store ca"
Installing:
=============================================================================
1-------
Issuer              : E=dit@minsvyaz.ru, C=RU, S=77 Москва, L=г. Москва, STREET="улица Тверская, дом 7", O=Минкомсвязь России, OGRN=1047702026701, INN=007710474375, CN=Минкомсвязь России
Subject             : E=ucso@admsakhalin.ru, OGRN=1116501000770, INN=006501233462, C=RU, S=65 Сахалинская область, L=Южно-Сахалинск, STREET="Коммунистический проспект 39, корпус В", OU=Отдел информационной безопасности, O="ГБУ СО ""СОЦИ""", CN="ГБУ СО ""СОЦИ"""
Serial              : 0x5E20C52900000000012D
SHA1 Hash           : f6ce1819b99a3f8fbd8b18dd9deb2811514cc495
SubjKeyID           : f48cad3a5f037b3de75af86f45be629f7d1dab91
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
Not valid before    : 12/10/2018  13:26:11 UTC
Not valid after     : 12/10/2033  13:26:11 UTC
PrivateKey Link     : No
CA cert URL         : http://reestr-pki.ru/cdp/guc_gost12.crt
CDP                 : http://reestr-pki.ru/cdp/guc_gost12.crl
CDP                 : http://company.rt.ru/cdp/guc_gost12.crl
CDP                 : http://rostelecom.ru/cdp/guc_gost12.crl
=============================================================================

[ErrorCode: 0x00000000]


Из крона все равно не исполняется. В логах та же ошибка
Код:

Mar 24 15:23:01 serverub CRON[580640]: (master) CMD (python3 /home/master/SmevSOAdapter/sync.py newAction)
Mar 24 15:23:02 serverub python3: <capi10>CryptGetUserKey!failed: LastError = 0x8009000D
Mar 24 15:23:02 serverub python3: <capi20>CertAddCertificateContextToStore!failed: LastError = 0x80092005
Mar 24 15:23:02 serverub python3: <capi10>CryptGetUserKey!failed: LastError = 0x8009000D


В чем еще может быть проблема?
Online Санчир Момолдаев  
#151 Оставлено : 24 марта 2021 г. 7:44:56(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
как вы сделали крон расписание
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
bsoft оставлено 25.03.2021(UTC)
Offline bsoft  
#152 Оставлено : 24 марта 2021 г. 7:47:06(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Код:
master@serverub:~$ crontab -e
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').
#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
0 1 * * 1-5 python3 /home/master/SmevSOAdapter/sync.py newAction
0 2 * * 1-5 python3 /home/master/SmevSOAdapter/sync.py updateStatus
23 15 24 3 * python3 /home/master/SmevSOAdapter/sync.py newAction

Online Санчир Момолдаев  
#153 Оставлено : 24 марта 2021 г. 8:59:41(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
не воспроизводится. подпись создается. есть ошибки сопутствующие но они не влияют на подпись
* * * * * /usr/bin/python3 /tmp/main.py
смотрите вашу систему
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
bsoft оставлено 25.03.2021(UTC)
Offline bsoft  
#154 Оставлено : 24 марта 2021 г. 9:03:04(UTC)
bsoft

Статус: Участник

Группы: Участники
Зарегистрирован: 08.12.2020(UTC)
Сообщений: 17
Российская Федерация

Сказал(а) «Спасибо»: 11 раз
Ок. Спасибо. Буду разбираться с системой.
Offline nomhoi  
#155 Оставлено : 15 апреля 2021 г. 12:19:13(UTC)
nomhoi

Статус: Активный участник

Группы: Участники
Зарегистрирован: 29.10.2020(UTC)
Сообщений: 58
Российская Федерация

Сказал(а) «Спасибо»: 10 раз
Добрый день!

Пробую собрать pycades с сертифицированной версией.
Сертифицированная версия КриптоПро CSP 5.0.11455 (Fury) от 8.05.2019.
КриптоПро ЭЦП SDK (версия 2.0.14071 для Unix-платформ).
pycades_0.1.22769.

Получаю ошибку:
Код:
+ cmake ..
-- The CXX compiler identification is GNU 8.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Boost version: 1.67.0
-- Configuring done
-- Generating done
-- Build files have been written to: /cprocsp/pycades_0.1.22769/build
+ make -j4
Scanning dependencies of target pycades
[  3%] Building CXX object CMakeFiles/pycades.dir/PyCades.cpp.o
[  6%] Building CXX object CMakeFiles/pycades.dir/PyCadesAlgorithm.cpp.o
[  9%] Building CXX object CMakeFiles/pycades.dir/errormsg.cpp.o
[ 12%] Building CXX object CMakeFiles/pycades.dir/PyCadesAbout.cpp.o
In file included from /opt/cprocsp/include/cpcsp/CSP_WinError.h:26,
                 from /cprocsp/pycades_0.1.22769/errormsg.cpp:19:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
 #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
                                                                                                                                                        ^
In file included from /cprocsp/pycades_0.1.22769/PyCades.cpp:11:
/cprocsp/pycades_0.1.22769/PyCadesCRL.h:5:10: fatal error: CPPCadesCPCRL.h: No such file or directory
 #include "CPPCadesCPCRL.h"
          ^~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/pycades.dir/build.make:76: CMakeFiles/pycades.dir/PyCades.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /cprocsp/pycades_0.1.22769/stdafx.h:28,
                 from /cprocsp/pycades_0.1.22769/PyCadesAlgorithm.h:4,
                 from /cprocsp/pycades_0.1.22769/PyCadesAlgorithm.cpp:1:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
 #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
                                                                                                                                                        ^
In file included from /cprocsp/pycades_0.1.22769/stdafx.h:28,
                 from /cprocsp/pycades_0.1.22769/PyCadesAbout.h:4,
                 from /cprocsp/pycades_0.1.22769/PyCadesAbout.cpp:1:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
 #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
                                                                                                                                                        ^
make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/pycades.dir/all] Error 2
make: *** [Makefile:84: all] Error 2


Ветка certified: https://github.com/nomho...des_build/tree/certified

Нужно ли нам вообще обязательно использовать сертифицированную версию? Разрабатываем региональную информационную систему.
Online Санчир Момолдаев  
#156 Оставлено : 5 мая 2021 г. 22:01:10(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
Автор: nomhoi Перейти к цитате
Добрый день!

Пробую собрать pycades с сертифицированной версией.
Сертифицированная версия КриптоПро CSP 5.0.11455 (Fury) от 8.05.2019.
КриптоПро ЭЦП SDK (версия 2.0.14071 для Unix-платформ).
pycades_0.1.22769.

Получаю ошибку:
Код:
+ cmake ..
-- The CXX compiler identification is GNU 8.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Boost version: 1.67.0
-- Configuring done
-- Generating done
-- Build files have been written to: /cprocsp/pycades_0.1.22769/build
+ make -j4
Scanning dependencies of target pycades
[  3%] Building CXX object CMakeFiles/pycades.dir/PyCades.cpp.o
[  6%] Building CXX object CMakeFiles/pycades.dir/PyCadesAlgorithm.cpp.o
[  9%] Building CXX object CMakeFiles/pycades.dir/errormsg.cpp.o
[ 12%] Building CXX object CMakeFiles/pycades.dir/PyCadesAbout.cpp.o
In file included from /opt/cprocsp/include/cpcsp/CSP_WinError.h:26,
                 from /cprocsp/pycades_0.1.22769/errormsg.cpp:19:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
 #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
                                                                                                                                                        ^
In file included from /cprocsp/pycades_0.1.22769/PyCades.cpp:11:
/cprocsp/pycades_0.1.22769/PyCadesCRL.h:5:10: fatal error: CPPCadesCPCRL.h: No such file or directory
 #include "CPPCadesCPCRL.h"
          ^~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/pycades.dir/build.make:76: CMakeFiles/pycades.dir/PyCades.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /cprocsp/pycades_0.1.22769/stdafx.h:28,
                 from /cprocsp/pycades_0.1.22769/PyCadesAlgorithm.h:4,
                 from /cprocsp/pycades_0.1.22769/PyCadesAlgorithm.cpp:1:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
 #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
                                                                                                                                                        ^
In file included from /cprocsp/pycades_0.1.22769/stdafx.h:28,
                 from /cprocsp/pycades_0.1.22769/PyCadesAbout.h:4,
                 from /cprocsp/pycades_0.1.22769/PyCadesAbout.cpp:1:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
 #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
                                                                                                                                                        ^
make[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/pycades.dir/all] Error 2
make: *** [Makefile:84: all] Error 2


Ветка certified: https://github.com/nomho...des_build/tree/certified
.


Нужен devel пакет от 5.0R2

Цитата:
Нужно ли нам вообще обязательно использовать сертифицированную версию? Разрабатываем региональную информационную систему

В зависимости от требований к вашей ИС
Техническую поддержку оказываем тут
Наша база знаний
Offline Egor.l  
#157 Оставлено : 7 мая 2021 г. 12:24:29(UTC)
Egor.l

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

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

Все добрый день!

pycades никак не подписывает XML, возвращает ошибку 0x80092004

Код:
store = pycades.Store()
store.Open(pycades.CADESCOM_CONTAINER_STORE, pycades.CAPICOM_MY_STORE, pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
certs = store.Certificates
assert(certs.Count != 0), "Certificates with private key not found"

signer = pycades.Signer()
signer.Certificate = certs.Item(1)
signer.CheckCertificate = False

print(f'HasPrivateKey: {signer.Certificate.HasPrivateKey()}')
print(f'FindPrivateKey: {signer.Certificate.FindPrivateKey()}')
print(f'Serial: {signer.Certificate.SerialNumber}')


Возвращает:
Код:
HasPrivateKey: True
FindPrivateKey: None
Serial: 0404D116CA044E1033AFDCC3E3EEFE430F0ED4F6


Вывод certmgr:
Код:
Serial              : 0x0404D116CA044E1033AFDCC3E3EEFE430F0ED4F6
SHA1 Hash           : 29edd316826f33dcfe1ebfc499d5d47f78c86e5a
SubjKeyID           : 05036555e7ec51baa54787dc02f94870133df163
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
Not valid before    : 04/08/2020  12:54:51 UTC
Not valid after     : 04/11/2021  12:54:51 UTC
PrivateKey Link     : Yes    


csptest контейнера:
Код:
root@39643ee57df7:/usr/src/app# /opt/cprocsp/bin/amd64/csptest -keyset -check -cont 'HDIMAGE\\ХХХ.000\C527'
CSP (Type:80) v5.0.10003 KC1 Release Ver:5.0.11455 OS:Linux CPU:AMD64 FastCode:READY:AVX.
AcquireContext: OK. HCRYPTPROV: 40105699
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP
Container name: "������ �.�. - ���"
Check header passed.
Signature key is not available.
Exchange key is available. HCRYPTKEY: 0x26445e3
Symmetric key is not available.
UEC key is not available.
License: Cert without license
Check container passed.
Check sign passed.
Check verify signature on private key passed.
Check verify signature on public key passed.
Check import passed.
Certificate in container matches AT_KEYEXCHANGE key.
Keys in container:
  exchange key
Extensions:
  OID: 1.2.643.2.2.37.3.10
  PrivKey: Not specified - 12.11.2021 14:05:44 (UTC)
Total: SYS: 0.030 sec USR: 0.010 sec UTC: 0.550 sec
[ErrorCode: 0x00000000]


При этом cryptcp -signf работает, -verify проходит

Куда копать?
Online Санчир Момолдаев  
#158 Оставлено : 9 мая 2021 г. 10:40:15(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
Автор: Egor.l Перейти к цитате
Все добрый день!

pycades никак не подписывает XML, возвращает ошибку 0x80092004

Куда копать?


Добрый день!

0x80092004 - объект не найден. с ключом у вас все в порядке, значит при парсинге xml не нашли узел который надо подписать
Техническую поддержку оказываем тут
Наша база знаний
Offline Владимир_ge74  
#159 Оставлено : 12 мая 2021 г. 15:19:17(UTC)
Владимир_ge74

Статус: Участник

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

Сказал(а) «Спасибо»: 4 раз
Добрый день! Ubuntu 20.04, python собран по инструкции
При использовании:
Код:
import sys
sys.path.append(r'/home/pycades/pycades_0.1.22769/build')
import pycades
import base64


def file_bytes_content(path_to_file):
    file = open(path_to_file, 'rb')
    content = file.read()
    file.close()
    return content

def file_content_in_base64(path_to_data_file):
    content = file_bytes_content(path_to_data_file)
    return base64.encodebytes(content).decode('ascii') # Base64 - это кодировка ascii

def verify_detached_sign(path_to_data_file, path_to_detached_sign):
    signed_data = pycades.SignedData()
    #signed_data.ContentEncoding = pycades.CADESCOM_BASE64_TO_BINARY
    signed_data.Content = file_content_in_base64(path_to_data_file)
    signed_message = str(file_bytes_content(path_to_detached_sign))
    retult = signed_data.VerifyCades(signed_message, pycades.CADESCOM_CADES_BES, True)
    return result


# -----------------------------------


filesDir = '/usr/local/bin/python/pycades/files'

filePath3 = filesDir + '/' + 'AA_v3.exe'
filePath4 = filesDir + '/' + 'AA_v3.exe.sig'

validation = verify_detached_sign(filePath3, filePath4)


Получаю ошибку Exception: Internal error. (0x8009100E)
Fajjl i otkreplennaja podpis'.zip (396kb) загружен 4 раз(а).

Подскажите, как её бороть, из описания "Не найден подписант" мало что понятно, спасибо!
Online Санчир Момолдаев  
#160 Оставлено : 21 мая 2021 г. 18:38:06(UTC)
Санчир Момолдаев

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

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 758
Российская Федерация

Сказал(а) «Спасибо»: 68 раз
Поблагодарили: 158 раз в 154 постах
Автор: Владимир_ge74 Перейти к цитате
Добрый день! Ubuntu 20.04, python собран по инструкции
При использовании:
Код:
import sys
sys.path.append(r'/home/pycades/pycades_0.1.22769/build')
import pycades
import base64


def file_bytes_content(path_to_file):
    file = open(path_to_file, 'rb')
    content = file.read()
    file.close()
    return content

def file_content_in_base64(path_to_data_file):
    content = file_bytes_content(path_to_data_file)
    return base64.encodebytes(content).decode('ascii') # Base64 - это кодировка ascii

def verify_detached_sign(path_to_data_file, path_to_detached_sign):
    signed_data = pycades.SignedData()
    #signed_data.ContentEncoding = pycades.CADESCOM_BASE64_TO_BINARY
    signed_data.Content = file_content_in_base64(path_to_data_file)
    signed_message = str(file_bytes_content(path_to_detached_sign))
    retult = signed_data.VerifyCades(signed_message, pycades.CADESCOM_CADES_BES, True)
    return result


# -----------------------------------


filesDir = '/usr/local/bin/python/pycades/files'

filePath3 = filesDir + '/' + 'AA_v3.exe'
filePath4 = filesDir + '/' + 'AA_v3.exe.sig'

validation = verify_detached_sign(filePath3, filePath4)


Получаю ошибку Exception: Internal error. (0x8009100E)
Fajjl i otkreplennaja podpis'.zip (396kb) загружен 4 раз(а).

Подскажите, как её бороть, из описания "Не найден подписант" мало что понятно, спасибо!


при создании подписи добавляйте сертификат подписанта или всю цепочку:
signer.Options = pycades.CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
10 Страницы«<678910>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.