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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline msdeipdr  
#1 Оставлено : 4 апреля 2018 г. 16:52:19(UTC)
msdeipdr

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

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

Здравствуйте.

После обновления криптопро 4.0.0.4 с 9461 билда на 9842 появилась ошибка при вызове метода CadesVerifyMessage(): GetLastError() возвращает -2147024809.

ОС: Ubuntu 16.04
Установлены пакеты криптопро:
$ dpkg -l | grep csp
ii cprocsp-cpopenssl-64 4.0.0-4 amd64 OpenSSL. Build 9842.
ii cprocsp-cpopenssl-base 4.0.0-4 all Openssl common Build 9842.
ii cprocsp-cpopenssl-gost-64 4.0.0-4 amd64 OpenSSL capi_gost engine. Build 9842.
ii cprocsp-curl-64 4.0.0-4 amd64 CryptoPro Curl shared library and binaris. Build 9842.
ii cprocsp-pki-cades 2.0.0-1 amd64 CryptoPro PKI
ii cprocsp-pki-plugin 2.0.0-1 amd64 CryptoPro PKI
ii cprocsp-rdr-pcsc-64 4.0.0-4 amd64 PC/SC components for CryptoPro CSP readers. Build 9842.
ii cprocsp-rsa-64 4.0.0-4 amd64 CryptoPro RSA CSP. Build 9842.
ii cprocsp-stunnel-64 4.0.0-4 amd64 Universal SSL/TLS tunnel.
ii lsb-cprocsp-base 4.0.0-4 all CryptoPro CSP library. Build 9842.
ii lsb-cprocsp-capilite-64 4.0.0-4 amd64 CryptoAPI lite. Build 9842.
ii lsb-cprocsp-devel 4.0.9921-5 all CryptoPro CSP static libraries and headers. Build 9921.
ii lsb-cprocsp-kc1-64 4.0.0-4 amd64 CryptoPro CSP library. Build 9842.
ii lsb-cprocsp-rdr-64 4.0.0-4 amd64 CryptoPro CSP readers. Build 9842.
Offline cross  
#2 Оставлено : 5 апреля 2018 г. 13:41:27(UTC)
Анатолий Беляев

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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 965
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 174 раз в 152 постах
Попробуйте после переустановки КриптоПро CSP переустановить вот эти пакеты cprocsp-pki-cades 2.0.0-1
cprocsp-pki-plugin из КриптоПро SDK
Техническую поддержку оказываем тут.
Наша база знаний.
Наша страничка в Instagram.
Offline msdeipdr  
#3 Оставлено : 9 апреля 2018 г. 9:08:22(UTC)
msdeipdr

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

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

Автор: cross Перейти к цитате
Попробуйте после переустановки КриптоПро CSP переустановить вот эти пакеты cprocsp-pki-cades 2.0.0-1
cprocsp-pki-plugin из КриптоПро SDK


Не помогло. Ошибка очень специфическая и проявляется только при вызове из python при работе через uWSGI. Переход на CryptVerifyMessageSignature не помог, видимо cades 2.0.0 собран с обновлённой CryptoAPI, т.к. проблем на 9461, когда у вас ещё было 3 пакета (lsb-cprocsp-cades-64, lsb-cprocsp-ocsp-util-64 и lsb-cprocsp-tsp-util-64) не было.

Есть ли какой-то способ сделать откат с 9842 билда на 9461 только этих пакетов? Простой установкой не получается, ругается на отсутствие libasn1data.so.4.
Offline msdeipdr  
#4 Оставлено : 9 апреля 2018 г. 12:59:00(UTC)
msdeipdr

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

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

С включенным режимом отладки в логе только 2 строчки:

cpcsp[1447]: capi10: CPCAPI_I_GetDefaultProvider Reconnect FAIL, hProv = (nil)
cpcsp[1447]: capi20: CryptMsgUpdate () Unknown exception catched
Offline cross  
#5 Оставлено : 9 апреля 2018 г. 18:44:33(UTC)
Анатолий Беляев

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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 965
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 174 раз в 152 постах
Без примера врядли сможем понять в чем причина, скорее всего как то странно заполняются структуры типа CADES_VERIFICATION_INFO.
Техническую поддержку оказываем тут.
Наша база знаний.
Наша страничка в Instagram.
Offline msdeipdr  
#6 Оставлено : 10 апреля 2018 г. 9:38:19(UTC)
msdeipdr

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

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

Автор: cross Перейти к цитате
Без примера врядли сможем понять в чем причина, скорее всего как то странно заполняются структуры типа CADES_VERIFICATION_INFO.


Пример брал из вашей документации: http://cpdn.cryptopro.ru...edapiverifycadesbes.html

Пробовал так же инициализировать все переменные структур CADES_VERIFICATION_PARA и CRYPT_VERIFY_MESSAGE_PARA по аналогии с документацией https://msdn.microsoft.c...s/library/aa382372.aspx.

Проблема наблюдается исключительно при работе через uWSGI. Тестовый скрипт на python запущенный из консоли отрабатывает.

$ /opt/cprocsp/sbin/amd64/cpconfig -defprov -view_type
Listing Available Provider Types:
Provider type Provider Type Name
_____________ _____________________________________
75 GOST R 34.10-2001 Signature with Diffie-Hellman Key Exchange
80 GOST R 34.10-2012 (256) Signature with Diffie-Hellman Key Exchange
81 GOST R 34.10-2012 (512) Signature with Diffie-Hellman Key Exchange
1 RSA Full (Signature and Key Exchange)

Offline msdeipdr  
#7 Оставлено : 10 апреля 2018 г. 10:02:55(UTC)
msdeipdr

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

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

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

cpcsp[2941]: cades: CadesVerifyMessage (pVerifyPara=0x0x7fff7d070220, dwSignerIndex=0, pbSignedBlob=0x0x331afe0, cbSignedBlob=2161, ppDecodedBlob=0x0x7fff7d070218, ppVerificationInfo=0x0x7fff7d070210)
cpcsp[2941]: capi10: CPCAPI_I_GetDefaultProvider Reconnect FAIL, hProv = (nil)
cpcsp[2941]: capi20: CryptMsgUpdate () Unknown exception catched
cpcsp[2941]: cades: CadesVerifyMessageImpl Exception thrown: _hr
cpcsp[2941]: cades: CadesVerifyMessage CAtlException, m_hr=0x80070057
cpcsp[2941]: cades: CadesVerifyMessage (res=0, GetLastError=0x80070057
cpcsp[2941]: cades: CadesFreeVerificationInfo (pVerificationInfo=0x(nil))
cpcsp[2941]: cades: CadesFreeVerificationInfo (res=1, GetLastError=0x80070057


Что вообще может значить Reconnect FAIL в методе CPCAPI_I_GetDefaultProvider? На сколько я понимаю из названия, там происходит получение провайдера по умолчанию. Совершенно непонятно, какой там может быть reconnect.

Вот аналогичная часть лога при нормальной работе библиотеки:

cades[3593]: cades: CadesVerifyMessage (pVerifyPara=0x0x7ffed3e06ea0, dwSignerIndex=0, pbSignedBlob=0x0x1281170, cbSignedBlob=2161, ppDecodedBlob=0x0x7ffed3e06e98, ppVerificationInfo=0x0x7ffed3e06e90)
cpcsp[3593]: cades: CadesMsgVerifySignatureImpl Input parameters checked
cpcsp[3593]: capi20: CryptMsgGetParam () Exception :' 0xea: More data is available.' at file:'/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/capilite/CMSMessage.h' line:163
cpcsp[3593]: message repeated 3 times: [ capi20: CryptMsgGetParam () Exception :' 0xea: More data is available.' at file:'/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/capilite/CMSMessage.h' line:163]
cpcsp[3593]: cades: VerifyMessageSignature Signature verification started
cpcsp[3593]: cades: VerifyMessageSignature Signature verified


Одна и та же библиотека, один и тот же код вызова. Разница только с способе вызова - консоль или uWSGI.
Offline cross  
#8 Оставлено : 12 апреля 2018 г. 14:22:58(UTC)
Анатолий Беляев

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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 965
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 174 раз в 152 постах
Крайне странно. А пробовали какие то другие операции делать у вас в приложении? Например посчитать хеш? Будет работать?
Техническую поддержку оказываем тут.
Наша база знаний.
Наша страничка в Instagram.
Offline msdeipdr  
#9 Оставлено : 12 апреля 2018 г. 16:38:53(UTC)
msdeipdr

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

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

Автор: cross Перейти к цитате
Крайне странно. А пробовали какие то другие операции делать у вас в приложении? Например посчитать хеш? Будет работать?


Нет, пробовал только проверку подписи. Попробую.

После обновления до 9944 билда ошибка изменилась:
cades[1926]: capi10: CPCAPI_I_GetDefaultProvider Reconnect FAIL, hProv = (nil)
cades[1926]: capi20: CryptMsgUpdate () Exception :' 0x80090008: Invalid algorithm specified.' at file:'/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/capilite/CMSSignedMessage.h' line:75
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.