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

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline funkymonk  
#1 Оставлено : 21 апреля 2008 г. 23:01:27(UTC)
funkymonk

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

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

00000005 5.18926334 [3408] cades.dll: (pSignPara=0x0012F55C, fDetachedSignature=0, cToBeSigned=1, rgpbToBeSigned=0x0012F5C8, rgcbToBeSigned=0x0012F5C4, ppSignedBlob=0x0012F5C0)
00000006 6.81665850 [3408] cades.dll: Certificate choosed from list
00000007 6.87982845 [3408] cades.dll: hInstance=6E000000, dwReason=2 lpReserved=0
00000008 6.92806053 [3408] cades.dll: Signer updating start
00000009 6.92815113 [3408] cades.dll: Hash algorithm deduced
00000010 6.92905664 [3408] cades.dll: (pAttr=0)
00000011 6.92917204 [3408] cades.dll: Signer does not have signinCert or otherSigningCert attribute
00000012 6.93101454 [3408] cades.dll: Attributes copied
00000013 6.95715284 [3408] cades.dll: otherSigningCert attribute assembled
00000014 6.95723724 [3408] cades.dll: Signer is updated successfully
00000015 6.95730400 [3408] cades.dll: (dwMsgEncodingType=0x00010001, dwFlags=0x00000000, pvMsgEncodeInfo=0x0012EF78, pszInnerContentObjID=0, pStreamInfo=0x00000000)
00000016 6.95740461 [3408] cades.dll: Start
00000017 6.95746279 [3408] cades.dll: Input parameters checked
00000018 6.95752096 [3408] cades.dll: Copy of input structures is ready
00000019 6.95757723 [3408] cades.dll: Signers updating start
00000020 6.95781565 [3408] cades.dll: Signer #0
00000021 6.97070599 [3408] cades.dll: Public key info is exported successfully
00000022 6.97087717 [3408] cades.dll: hInstance=6E000000, dwReason=2 lpReserved=0
00000023 6.97104692 [3408] cades.dll: Signature algoritm OID info is found: 1.2.643.2.2.4
00000024 6.97111034 [3408] cades.dll: Certificates equality checked
00000025 6.97116661 [3408] cades.dll: (szHashAlgorithm=1.2.643.2.2.9)
00000026 6.97122669 [3408] cades.dll: Hash algorithm deduced
00000027 6.97132254 [3408] cades.dll: (pAttr->pszObjId=1.2.840.113549.1.9.16.2.19)
00000028 6.97144222 [3408] cades.dll: Calling CryptMsgOpenToEncode()
00000029 6.97256565 [3408] cades.dll: (hMsg=0x001907D8, GetLastError=0x00000000
00000030 6.97373724 [3408] cades.dll: Last win32 error thrown as exception
00000031 6.97398615 [3408] cades.dll: CAtlException, m_hr=0x80090020
00000032 6.97405005 [3408] cades.dll: (res=0, GetLastError=0x80090020
Offline Павел Смирнов  
#2 Оставлено : 21 апреля 2008 г. 23:10:45(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Маловато информации. Хотя бы имена функций увидеть...

Код:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Trace]
"ocspcli.dll"=""
"tspcli.dll"=""
"cades.dll"=""
"pkivalidator.dll"=""
"ProcessFlags"=dword:00000002
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#3 Оставлено : 22 апреля 2008 г. 15:29:38(UTC)
funkymonk

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

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

Вот кусок кода:

FillMemory(@signPara, sizeof(CRYPT_SIGN_MESSAGE_PARA), 0);
signPara.cbSize := sizeof(CRYPT_SIGN_MESSAGE_PARA);
signPara.dwMsgEncodingType := X509_ASN_ENCODING or PKCS_7_ASN_ENCODING;
signPara.pSigningCert := pCertContext;
signPara.HashAlgorithm.pszObjId := szOID_CP_GOST_R3411;

FillMemory(@authPara, SizeOf(CADES_AUTH_PARA), 0);
authPara.dwSize := SizeOf(CADES_AUTH_PARA);
authPara.dwAuthType := CADES_AUTH_ANONYMOUS;

FillMemory(@connPara, SizeOf(CADES_SERVICE_CONNECTION_PARA), 0);
connPara.dwSize := SizeOf(CADES_SERVICE_CONNECTION_PARA);
connPara.wszUri := 'http://10.0.2.15/tsp/tsp.srf';
connPara.pAuthPara := @authPara;

FillMemory(@cadesSignPara, SizeOf(CADES_SIGN_PARA), 0);
cadesSignPara.dwSize := SizeOf(CADES_SIGN_PARA);
cadesSignPara.dwCadesType := CADES_X_LONG_TYPE_1;
cadesSignPara.pSignerCert := pCertContext;
cadesSignPara.szHashAlgorithm := szOID_CP_GOST_R3411;
cadesSignPara.hAdditionalStore := nil;
cadesSignPara.pTspConnectionPara := @connPara;

FillMemory(@para, sizeof(CADES_SIGN_MESSAGE_PARA), 0);
para.dwSize := sizeof(CADES_SIGN_MESSAGE_PARA);
para.pSignMessagePara := @signPara;
para.pCadesSignPara := @cadesSignPara;

if(not CadesSignMessage(@para, FALSE, 1, pbToBeSigned, cbToBeSigned,
pSignedMessage)) then

....


Вот лог полученный с предложенными настройками реестра:

00000045 143.50872803 [3032] cades.dll: {2884} /CadesSignMessage/ cades.cpp(3581) : (pSignPara=0x0012F864, fDetachedSignature=0, cToBeSigned=1, rgpbToBeSigned=0x0012F8D8, rgcbToBeSigned=0x0012F8D4, ppSignedBlob=0x01063F4C)
00000046 143.57875061 [3032] cades.dll: {2884} /CadesSignMessageImpl/ cades.cpp(3429) : Signer updating start
00000047 143.57882690 [3032] cades.dll: {2884} /CadesSignMessageImpl/ cades.cpp(3432) : Hash algorithm deduced
00000048 143.57986450 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::AttributeExists/ cades.cpp(167) : (pAttr=0)
00000049 143.57998657 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(338) : Signer does not have signinCert or otherSigningCert attribute
00000050 143.58007813 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(341) : Attributes copied
00000051 143.59846497 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(344) : otherSigningCert attribute assembled
00000052 143.59860229 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(347) : Signer is updated successfully
00000053 143.59867859 [3032] cades.dll: {2884} /CadesMsgOpenToEncode/ cades.cpp(448) : (dwMsgEncodingType=0x00010001, dwFlags=0x00000000, pvMsgEncodeInfo=0x0012F280, pszInnerContentObjID=0, pStreamInfo=0x00000000)
00000054 143.59872437 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(399) : Start
00000055 143.59880066 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(404) : Input parameters checked
00000056 143.59895325 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(412) : Copy of input structures is ready
00000057 143.59901428 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(418) : Signers updating start
00000058 143.59950256 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(422) : Signer #0
00000059 143.61201477 [3032] cades.dll: {2080} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000060 143.61222839 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::CheckAlgorithms/ cades.cpp(366) : Public key info is exported successfully
00000061 143.61230469 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::CheckAlgorithms/ cades.cpp(374) : Signature algoritm OID info is found: 1.2.643.2.2.4
00000062 143.61245728 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(429) : Certificates equality checked
00000063 143.61262512 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::DeduceHashAlgorithm/ cades.cpp(147) : (szHashAlgorithm=1.2.643.2.2.9)
00000064 143.61273193 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(431) : Hash algorithm deduced
00000065 143.61279297 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImplNamespace::AttributeExists/ cades.cpp(162) : (pAttr->pszObjId=1.2.840.113549.1.9.16.2.19)
00000066 143.61293030 [3032] cades.dll: {2884} /CadesMsgOpenToEncodeImpl/ cades.cpp(436) : Calling CryptMsgOpenToEncode()
00000067 143.61384583 [3032] cades.dll: {2884} /CadesMsgOpenToEncode/ cades.cpp(470) : (hMsg=0x00192FB8, GetLastError=0x00000000
00000068 143.61473083 [3032] cades.dll: {2884} /CadesSignMessageImpl/ cades.cpp(3496) : Last win32 error thrown as exception
00000069 143.61495972 [3032] cades.dll: {2884} /CadesSignMessage/ cades.cpp(3594) : CAtlException, m_hr=0x80090020
00000070 143.62123108 [3032] cades.dll: {2884} /CadesSignMessage/ cades.cpp(3604) : (res=0, GetLastError=0x80090020

Offline Павел Смирнов  
#4 Оставлено : 22 апреля 2008 г. 15:41:06(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Не срабатывает CryptMsgUpdate(), вызываемый внутри CadesSignMessage(). Похоже, что Вы неправильно заполнили параметры pbToBeSigned и cbToBeSigned. Добейтесь успешного создания подписи с помощью CryptSignMessage(), а потом уже пробуйте звать CadesSignMessage().
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#5 Оставлено : 23 апреля 2008 г. 16:38:28(UTC)
funkymonk

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

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

Нашёл ошибку в передаче параметров, теперь выдает ошибку 2146762486
Не удается построить цепочку сертификатов для доверенного корневого центра.

Вот такой лог:

00000005 8.22616482 [3208] cades.dll: {1980} /CadesSignMessage/ cades.cpp(3581) : (pSignPara=0x0012F590, fDetachedSignature=0, cToBeSigned=1, rgpbToBeSigned=0x01062614, rgcbToBeSigned=0x01062620, ppSignedBlob=0x0106262C)
00000006 10.75151157 [3208] cades.dll: {1980} /CadesSignMessageImpl/ cades.cpp(3400) : Certificate choosed from list
00000007 10.79415321 [3208] cpcspi: Thread: file:line function text xcode(dcode) level: 1
00000008 10.84285450 [3208] cades.dll: {440} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000009 10.88149452 [3208] cades.dll: {1980} /CadesSignMessageImpl/ cades.cpp(3429) : Signer updating start
00000010 10.88190365 [3208] cades.dll: {1980} /CadesSignMessageImpl/ cades.cpp(3432) : Hash algorithm deduced
00000011 10.88220692 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::AttributeExists/ cades.cpp(167) : (pAttr=0)
00000012 10.88246822 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(338) : Signer does not have signinCert or otherSigningCert attribute
00000013 10.88283634 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(341) : Attributes copied
00000014 10.93906307 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(344) : otherSigningCert attribute assembled
00000015 10.93944550 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(347) : Signer is updated successfully
00000016 10.93973827 [3208] cades.dll: {1980} /CadesMsgOpenToEncode/ cades.cpp(448) : (dwMsgEncodingType=0x00010001, dwFlags=0x00000000, pvMsgEncodeInfo=0x0012EFA8, pszInnerContentObjID=0, pStreamInfo=0x00000000)
00000017 10.94014931 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(399) : Start
00000018 10.94040489 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(404) : Input parameters checked
00000019 10.94065094 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(412) : Copy of input structures is ready
00000020 10.94089031 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(418) : Signers updating start
00000021 10.94114017 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(422) : Signer #0
00000022 10.99933624 [3208] cpext: Thread: file:line function text xcode(dcode) level: 0
00000023 10.99967575 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::CheckAlgorithms/ cades.cpp(366) : Public key info is exported successfully
00000024 11.00104713 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::CheckAlgorithms/ cades.cpp(374) : Signature algoritm OID info is found: 1.2.643.2.2.3
00000025 11.00147533 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(429) : Certificates equality checked
00000026 11.00174904 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::DeduceHashAlgorithm/ cades.cpp(147) : (szHashAlgorithm=1.2.643.2.2.9)
00000027 11.00199986 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(431) : Hash algorithm deduced
00000028 11.00224400 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImplNamespace::AttributeExists/ cades.cpp(162) : (pAttr->pszObjId=1.2.840.113549.1.9.16.2.19)
00000029 11.00267220 [3208] cades.dll: {1980} /CadesMsgOpenToEncodeImpl/ cades.cpp(436) : Calling CryptMsgOpenToEncode()
00000030 11.00541115 [3208] cades.dll: {1980} /CadesMsgOpenToEncode/ cades.cpp(470) : (hMsg=0x001780B0, GetLastError=0x00000000
00000031 11.00572205 [3208] cades.dll: {1980} /CadesMsgEnhanceSignature/ cades.cpp(1693) : (hCryptMsg=0x001780B0, dwSignatureIndex=0, pCadesSignPara=0x0012F574)
00000032 11.00612926 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1592) : Input parameters checked
00000033 11.01034260 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImplNamespace::ExtractSignedAttributes/ cades.cpp(491) : Signed attributes extracted via CMSG_SIGNER_AUTH_ATTR_PARAM
00000034 11.01173878 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1596) : Signer certificate ID found
00000035 11.01540089 [3208] cades.dll: {3416} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000036 11.02275944 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1605) : pSignerCert=0x00193638
00000037 11.02753830 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1626) : Signature verified
00000038 11.02783108 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1630) : Hash algorithm deduced
00000039 11.02830029 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImplNamespace::ExtractSignature/ cades.cpp(675) : Signature extracted via CMSG_ENCRYPTED_DIGEST
00000040 11.02859974 [3208] cades.dll: {1980} /TlsData/ cades.cpp(60) : Creating new CRequest for the thread...
00000041 11.04262924 [3208] ocspcli.dll: {1980} /CryptoPro::PKI::OCSP::Client::CRequest::Impl::LoadGroupPolicy/ OCSPRequest_Impl.cpp(145) : Loading GP...
00000042 11.04816628 [3208] ocspcli.dll: {1980} /CryptoPro::PKI::OCSP::Client::CRequest::Impl::LoadGroupPolicy/ OCSPRequest_Impl.cpp(145) : Loading GP...
00000043 11.04859734 [3208] cades.dll: {1980} /TlsData/ cades.cpp(66) : Creating new CRequest for the thread... OK.
00000044 11.17084312 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::CheckPolicies/ TSPRequest_Impl.cpp(199) : Checking policies...
00000045 11.17120743 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::CheckPolicies/ TSPRequest_Impl.cpp(285) : Checking policies... OK.
00000046 11.17148495 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::MakeRequest/ TSPRequest_Impl.cpp(158) : Making request...
00000047 11.17207909 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::MakeRequest/ TSPRequest_Impl.cpp(175) : Initializing request...
00000048 11.24162102 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::MakeRequest/ TSPRequest_Impl.cpp(189) : Encoding request...
00000049 11.24188423 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::MakeRequest/ TSPRequest_Impl.cpp(193) : Making request... OK.
00000050 11.27703667 [3208] cades.dll: {3580} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000051 11.32722664 [3208] cades.dll: {2084} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000052 11.32800484 [3208] cades.dll: {2912} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000053 11.38349724 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1671) : signatureTimeStampToken recieved and added to signature
00000054 11.38491535 [3208] cades.dll: {2120} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000055 11.39461040 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImplNamespace::MakeCAdES_X_Long/ cades.cpp(1320) : Assert FAILED: CadesVerifyCertificateImpl( signer.GetHandle(), &validationData, false, hMsg, hStore, pProxyPara, 0, false, false, false, &stampTime, 0, SignaturePolicy::ocspcheck, dwStatus)
00000056 11.39531326 [3208] cades.dll: {1980} /CadesMsgEnhanceSignature/ cades.cpp(1703) : CAtlException, m_hr=0x800b010a
00000057 11.39653683 [3208] cades.dll: {1980} /CadesMsgEnhanceSignature/ cades.cpp(1713) : (res=0, GetLastError=0x800b010a
00000058 11.39690971 [3208] cades.dll: {1980} /CadesSignMessageImpl/ cades.cpp(3545) : Last win32 error thrown as exception
00000059 11.39774895 [3208] cades.dll: {1980} /CadesSignMessage/ cades.cpp(3594) : CAtlException, m_hr=0x800b010a
00000060 11.39802742 [3208] cades.dll: {1980} /CadesSignMessage/ cades.cpp(3604) : (res=0, GetLastError=0x800b010a


Проверял сертификат и штамп времени с помощью tsputil и ocsputil, вроде бы все нормально.

Чего еще не хватает?
Offline Павел Смирнов  
#6 Оставлено : 23 апреля 2008 г. 17:08:27(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Проверяйте, что сертификат подписи:
- в тех же условиях имеет проверяемую цепочку до доверенного корневого центра;
- проверяется по протоколу OCSP, причём служба OCSP имеет в своём сертификате расширение "Признак доверия службе OCSP (id-pkix-ocsp-nocheck)".
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#7 Оставлено : 23 апреля 2008 г. 23:05:53(UTC)
funkymonk

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

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

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

ocsputil -e makereq C:\Client.cer -o C:\req.ocsp

ocsputil -e sendreq -u http:/10.0.2.15/ocsp/ocsp.srf C:\req.ocsp C:\resp.ocsp

Все проходит без ошибок (возвращается код ошибки 0)

В журнале ocsp видно что были обращения.

Запускаю подпись через CadesSignMessage - обращений к службе в журнале нет


Ругается по прежнему
Offline Павел Смирнов  
#8 Оставлено : 24 апреля 2008 г. 2:58:17(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
CadesSignMessage() сначала строит цепочку, а потом уже проверяет её на отзыв. Очевидно, беда случается при построении цепочки.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#9 Оставлено : 24 апреля 2008 г. 18:07:55(UTC)
funkymonk

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

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

Как мне проверить построение цепочек?
Offline Павел Смирнов  
#10 Оставлено : 24 апреля 2008 г. 18:11:01(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Для начала просмотрите сертификат средствами ОС. Должна построиться цепочка без ошибок.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#11 Оставлено : 24 апреля 2008 г. 18:13:33(UTC)
funkymonk

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

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

И еще, прочел про утилиту certutil, пробовал вот такую команду:

certutil -verify -urlfetch

при попытке обращения по URL взятому из AIA получаю такое сообщение

---------------- Сертификат AIA ----------------
Ошибка "AIA" Время: 0
Ошибка при получении URL: Требуемый объект не найден. 0x80092009 (-2146885623)
http://bft-0idesebr99r/ocsp/ocsp.srf

В жрунале службы ocsp читаю следующее:

Отправлен ответ слуюжы не содержащий информации о статусах сертификатов.

Что бы это значило?
Offline funkymonk  
#12 Оставлено : 24 апреля 2008 г. 18:14:38(UTC)
funkymonk

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

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

Смирнов написал:
Для начала просмотрите сертификат средствами ОС. Должна построиться цепочка без ошибок.


ОС показывает цепочку. Последний - сертификат ЦС.
Offline Павел Смирнов  
#13 Оставлено : 24 апреля 2008 г. 18:20:49(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
-urlfetch проверяет не то, что Вас интересует.
Приведите в форуме вывод команды certutil -verify -v. Выполнить её надо на той же машине и под тем же пользователем, под которым осуществляется создание КриптоПро ЭЦП.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#14 Оставлено : 24 апреля 2008 г. 18:31:37(UTC)
funkymonk

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

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

вот что выдал -verify с -v:

Цитата:
Поставщик:
CN=Test CA Deadlock
OU=CROT
O=BFT
L=MOSCOW
S=MOSCOW
C=RU
E=admin@testca.ru
[0,0]: CERT_RDN_IA5_STRING, Длина = 15 (15/128 Символы)
1.2.840.113549.1.9.1 Электронная почта (E)="admin@testca.ru"

61 64 6d 69 6e 40 74 65 73 74 63 61 2e 72 75 admin@testca.ru

61 00 64 00 6d 00 69 00 6e 00 40 00 74 00 65 00 a.d.m.i.n.@.t.e.
73 00 74 00 63 00 61 00 2e 00 72 00 75 00 s.t.c.a...r.u.

[1,0]: CERT_RDN_PRINTABLE_STRING, Длина = 2 (2/2 Символы)
2.5.4.6 Страна или регион (C)="RU"

52 55 RU

52 00 55 00 R.U.

[2,0]: CERT_RDN_PRINTABLE_STRING, Длина = 6 (6/128 Символы)
2.5.4.8 Область, штат (S)="MOSCOW"

4d 4f 53 43 4f 57 MOSCOW

4d 00 4f 00 53 00 43 00 4f 00 57 00 M.O.S.C.O.W.

[3,0]: CERT_RDN_PRINTABLE_STRING, Длина = 6 (6/128 Символы)
2.5.4.7 Размещение (L)="MOSCOW"

4d 4f 53 43 4f 57 MOSCOW

4d 00 4f 00 53 00 43 00 4f 00 57 00 M.O.S.C.O.W.

[4,0]: CERT_RDN_PRINTABLE_STRING, Длина = 3 (3/64 Символы)
2.5.4.10 Организация (O)="BFT"

42 46 54 BFT

42 00 46 00 54 00 B.F.T.

[5,0]: CERT_RDN_PRINTABLE_STRING, Длина = 4 (4/64 Символы)
2.5.4.11 Подразделение (OU)="CROT"

43 52 4f 54 CROT

43 00 52 00 4f 00 54 00 C.R.O.T.

[6,0]: CERT_RDN_PRINTABLE_STRING, Длина = 16 (16/64 Символы)
2.5.4.3 Обычное имя (CN)="Test CA Deadlock"

54 65 73 74 20 43 41 20 44 65 61 64 6c 6f 63 6b Test CA Deadlock

54 00 65 00 73 00 74 00 20 00 43 00 41 00 20 00 T.e.s.t. .C.A. .
44 00 65 00 61 00 64 00 6c 00 6f 00 63 00 6b 00 D.e.a.d.l.o.c.k.

Субъект:
CN=Client
OU=DC
O=BFT
L=Msk
C=RU
E=Client@pochta.ru
[0,0]: CERT_RDN_IA5_STRING, Длина = 16 (16/128 Символы)
1.2.840.113549.1.9.1 Электронная почта (E)="Client@pochta.ru"

43 6c 69 65 6e 74 40 70 6f 63 68 74 61 2e 72 75 Client@pochta.ru

43 00 6c 00 69 00 65 00 6e 00 74 00 40 00 70 00 C.l.i.e.n.t.@.p.
6f 00 63 00 68 00 74 00 61 00 2e 00 72 00 75 00 o.c.h.t.a...r.u.

[1,0]: CERT_RDN_PRINTABLE_STRING, Длина = 2 (2/2 Символы)
2.5.4.6 Страна или регион (C)="RU"

52 55 RU

52 00 55 00 R.U.

[2,0]: CERT_RDN_PRINTABLE_STRING, Длина = 3 (3/128 Символы)
2.5.4.7 Размещение (L)="Msk"

4d 73 6b Msk

4d 00 73 00 6b 00 M.s.k.

[3,0]: CERT_RDN_PRINTABLE_STRING, Длина = 3 (3/64 Символы)
2.5.4.10 Организация (O)="BFT"

42 46 54 BFT

42 00 46 00 54 00 B.F.T.

[4,0]: CERT_RDN_PRINTABLE_STRING, Длина = 2 (2/64 Символы)
2.5.4.11 Подразделение (OU)="DC"

44 43 DC

44 00 43 00 D.C.

[5,0]: CERT_RDN_PRINTABLE_STRING, Длина = 6 (6/64 Символы)
2.5.4.3 Обычное имя (CN)="Client"

43 6c 69 65 6e 74 Client

43 00 6c 00 69 00 65 00 6e 00 74 00 C.l.i.e.n.t.

Серийный номер сертификата: 1395db2600000000002d
2d 00 00 00 00 00 26 db 95 13

dwFlags = CA_VERIFY_FLAGS_DUMP_CHAIN (0x40000000)
ChainFlags = CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT (0x40000000)
HCCE_LOCAL_MACHINE
CERT_CHAIN_POLICY_BASE
-------- CERT_CHAIN_CONTEXT --------
ChainContext.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
ChainContext.dwRevocationFreshnessTime: 3 Days, 3 Hours, 40 Minutes, 20 Seconds

SimpleChain.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
SimpleChain.dwRevocationFreshnessTime: 3 Days, 3 Hours, 40 Minutes, 20 Seconds

CertContext[0][0]: dwInfoStatus=102 dwErrorStatus=0
Issuer: CN=Test CA Deadlock, OU=CROT, O=BFT, L=MOSCOW, S=MOSCOW, C=RU, E=admin@testca.ru
Subject: CN=Client, OU=DC, O=BFT, L=Msk, C=RU, E=Client@pochta.ru
Serial: 1395db2600000000002d
8e 19 5c b3 ff 9f 30 74 5d 77 e5 2c 11 26 e7 11 65 07 47 e4
Element.dwInfoStatus = CERT_TRUST_HAS_KEY_MATCH_ISSUER (0x2)
Element.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)
CRL 4:
Issuer: CN=Test CA Deadlock, OU=CROT, O=BFT, L=MOSCOW, S=MOSCOW, C=RU, E=admin@testca.ru
03 36 c4 ea cb 6f fb 77 76 cb d0 2b 1e 25 60 37 b5 52 1b b2
Application[0] = 1.3.6.1.5.5.7.3.2 Проверка подлинности клиента
Application[1] = 1.2.643.2.2.34.7 Центр Регистрации, КриптоПро ЦР, HTTP, TLS клиент

CertContext[0][1]: dwInfoStatus=10c dwErrorStatus=0
Issuer: CN=Test CA Deadlock, OU=CROT, O=BFT, L=MOSCOW, S=MOSCOW, C=RU, E=admin@testca.ru
Subject: CN=Test CA Deadlock, OU=CROT, O=BFT, L=MOSCOW, S=MOSCOW, C=RU, E=admin@testca.ru
Serial: 66faf4eeceaff09c47f057f3912229ac
ce f1 4a 9e c6 41 c1 95 33 90 7e 51 b4 f5 af d1 f6 55 ad 9d
Element.dwInfoStatus = CERT_TRUST_HAS_NAME_MATCH_ISSUER (0x4)
Element.dwInfoStatus = CERT_TRUST_IS_SELF_SIGNED (0x8)
Element.dwInfoStatus = CERT_TRUST_HAS_PREFERRED_ISSUER (0x100)

Exclude leaf cert:
41 5e b7 a0 31 8a 31 5a 88 90 bf 33 ed 97 59 29 8d 2f b6 b4
Full chain:
76 87 d0 55 e6 6b 4b 73 b4 8a ae 7d 07 5f 1a 08 b8 1f 93 31

Проверенные политики выдачи: Нет
Проверенные политики применения:
1.3.6.1.5.5.7.3.2 Проверка подлинности клиента
1.2.643.2.2.34.7 Центр Регистрации, КриптоПро ЦР, HTTP, TLS клиент
Проверка отзыва сертификата выполнена
CertUtil: -verify - команда успешно выполнена.
Offline funkymonk  
#15 Оставлено : 24 апреля 2008 г. 18:32:09(UTC)
funkymonk

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

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

Как раз тут по моему всё чисто
Offline Павел Смирнов  
#16 Оставлено : 24 апреля 2008 г. 18:47:10(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Да, вроде всё нормально. Проверьте, что со временами всё в порядке. Точнее, что на время в выдаваемом штампе оба сертификата цепочки действуют.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#17 Оставлено : 24 апреля 2008 г. 18:55:00(UTC)
funkymonk

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

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

Смирнов написал:
Да, вроде всё нормально. Проверьте, что со временами всё в порядке. Точнее, что на время в выдаваемом штампе оба сертификата цепочки действуют.


а как это проверить? могу с помощью tsputil получить штамп но как узнать что в нем?
Offline Павел Смирнов  
#18 Оставлено : 24 апреля 2008 г. 18:59:05(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Сохранить в файл с расширением .tsr и открыть этот файл.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline funkymonk  
#19 Оставлено : 24 апреля 2008 г. 19:08:44(UTC)
funkymonk

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

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

Время тоже соответствует.

Может лучше так :

вот что было в логе который я приводил ранее:

Цитата:
00000049 11.24188423 [3208] tspcli.dll: {1980} /CryptoPro::PKI::TSP::Client::CRequest::Impl::MakeRequest/ TSPRequest_Impl.cpp(193) : Making request... OK.
00000050 11.27703667 [3208] cades.dll: {3580} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000051 11.32722664 [3208] cades.dll: {2084} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000052 11.32800484 [3208] cades.dll: {2912} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000053 11.38349724 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1671) : signatureTimeStampToken recieved and added to signature
00000054 11.38491535 [3208] cades.dll: {2120} /DllMain/ cades.cpp(5385) : hInstance=6E000000, dwReason=2 lpReserved=0
00000055 11.39461040 [3208] cades.dll: {1980} /CadesMsgEnhanceSignatureImplNamespace::MakeCAdES_X_Long/ cades.cpp(1320) : Assert FAILED: CadesVerifyCertificateImpl( signer.GetHandle(), &validationData, false, hMsg, hStore, pProxyPara, 0, false, false, false, &stampTime, 0, SignaturePolicy::ocspcheck, dwStatus)
00000056 11.39531326 [3208] cades.dll: {1980} /CadesMsgEnhanceSignature/ cades.cpp(1703) : CAtlException, m_hr=0x800b010a
00000057 11.39653683 [3208] cades.dll: {1980} /CadesMsgEnhanceSignature/ cades.cpp(1713) : (res=0, GetLastError=0x800b010a
00000058 11.39690971 [3208] cades.dll: {1980} /CadesSignMessageImpl/ cades.cpp(3545) : Last win32 error thrown as exception
00000059 11.39774895 [3208] cades.dll: {1980} /CadesSignMessage/ cades.cpp(3594) : CAtlException, m_hr=0x800b010a
00000060 11.39802742 [3208] cades.dll: {1980} /CadesSignMessage/ cades.cpp(3604) : (res=0, GetLastError=0x800b010a


Насколько я понимаю там сработал Assert , так может скажете что там этот Assert требует?
Offline Павел Смирнов  
#20 Оставлено : 24 апреля 2008 г. 20:26:06(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Да видел я этот Assert. С ним сейчас и разбираемся. Честно говоря, не понятно что не так с цепочкой. Вы последней версией КриптоПро ЭЦП SDK пользуетесь?
Техническую поддержку оказываем тут.
Наша база знаний.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
3 Страницы123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.