Статус: Участник
Группы: Участники
Зарегистрирован: 02.09.2015(UTC) Сообщений: 12 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: СПБ
|
Автор: afev ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) В 2.0.38481 CAdES зависит от BC 150, а не 146. У меня есть в папке "D:\...\jcp-2.0.38481\dependencies" библиотеки bcpkix-jdk15on-1.50.jar, bcprov-jdk15on-1.50.jar. Достаточно только их положить в jre/lib/ext, или также надо из список библиотек перечисленный в "D:\...\jcp-2.0.38481\Doc\README.cades.user.txt": Цитата: Для использования JCP CAdES API 1.0 требуются библиотеки: 1) jar-файлы криптопровайдера BouncyCastle И CAdES API: bcmail-jdk16-146.jar bctsp-jdk16-146.jar bcprov-jdk16-146.jar commons-codec-1.3.jar
поднять до версии 1.50 и положить в jre/lib/ext?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,005 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Да, те, что в dependencies, там jdk15on. readme для , поправим для 2.0. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.09.2015(UTC) Сообщений: 12 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: СПБ
|
Я добавил только две библиотеки в jre/lib/ext: bcprov-jdk15on-1.50.jar и bcpkix-jdk15on-1.50.jar. Теперь вылетает: Код:
org.bouncycastle.cms.CMSException: IOException reading content., errors: 'Application error' (-2)
at ru.CryptoPro.CAdES.CAdESSignature.<init>(Unknown Source)
at ru.CryptoPro.CAdES.CAdESSignature.<init>(Unknown Source)
at ru.antinform.portal.documents.CryptoUtil.verifyCAdES(CryptoUtil.java:57)
[тут идут мои методы...]
Caused by: org.bouncycastle.cms.CMSException: IOException reading content.
at org.bouncycastle.cms.CMSContentInfoParser.<init>(Unknown Source)
at org.bouncycastle.cms.CMSSignedDataParser.<init>(Unknown Source)
... 138 more
Caused by: java.io.IOException: unknown tag 5 encountered
at org.bouncycastle.asn1.ASN1StreamParser.readObject(Unknown Source)
... 140 more
При добавление других библиотек у меня система начинает вести себя странно(К примеру вдруг перестал корректно работать JRebel для одного из портлетов). Мне бы узнать точно какие библиотеки выкладывать в jre/lib/ext, вот прям списком... Да и, кстати, а зачем вообще подкладывать в jre/lib/ext? Почему нельзя выложить либы в tomcat? Какая-то магия с classloader'ами? Отредактировано пользователем 23 сентября 2015 г. 12:01:15(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,005 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Все библиотеки, которые могут понадобиться, лежат в dependencies. То есть для CAdES 2.0 это bc*-jdk150on-*.jar. Эти библиотеки - зависимости CAdES. По умолчанию предполагается помещать их туда, куда установлен дистрибутив. По поводу ошибки - вы передаете DER подпись, а не BASE64? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.09.2015(UTC) Сообщений: 12 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: СПБ
|
Вот такой код. Контент в utf8, подпись пришла из плагина Код:
/**
* JCP. CAdES 2.0 API.
*/
public static boolean verifyCAdES(String content, String sign){
try {
Collection<X509Certificate> chain = new ArrayList<X509Certificate>();
loadChain("CertStore", "C:\\PORTAL\\liferay61mrg\\tomcat\\cert\\certNew\\store.store", "testtest".toCharArray(), "192.168.100.77", chain);
byte[] signBytes = org.bouncycastle.util.encoders.Base64.decode(sign.getBytes());
byte[] contentBytes = content.getBytes();
CAdESSignature cades = new CAdESSignature(contentBytes, signBytes, null);
cades.verify(chain);
return true;
} catch (Exception e) {
log.error(e);
}
return false;
}
Вот такая ошибка. Код:
12:36:49,477 ERROR [CryptoUtil:64]
org.bouncycastle.cms.CMSException: IOException reading content., errors: 'Application error' (-2)
at ru.CryptoPro.CAdES.CAdESSignature.<init>(Unknown Source)
at ru.CryptoPro.CAdES.CAdESSignature.<init>(Unknown Source)
at ru.antinform.portal.documents.CryptoUtil.verifyCAdES(CryptoUtil.java:58)
[тут идут мои методы...]
Caused by: org.bouncycastle.cms.CMSException: IOException reading content.
at org.bouncycastle.cms.CMSContentInfoParser.<init>(Unknown Source)
at org.bouncycastle.cms.CMSSignedDataParser.<init>(Unknown Source)
... 138 more
Caused by: java.io.IOException: unknown tag 5 encountered
at org.bouncycastle.asn1.ASN1StreamParser.readObject(Unknown Source)
... 140 more
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,005 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
signBytes - это подпись? Тогда она должна идти первым параметром в конструкторе, смотрите описание в javadoc. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.09.2015(UTC) Сообщений: 12 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: СПБ
|
Поменял местами) Теперь вот падает: Код:
Caused by: org.bouncycastle.cms.CMSSignerDigestMismatchException: message-digest attribute value does not match calculated value
at org.bouncycastle.cms.SignerInformation.doVerify(Unknown Source)
at org.bouncycastle.cms.SignerInformation.verify(Unknown Source)
... 139 more
Верификацию на стороне JavaScript проходит.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.09.2015(UTC) Сообщений: 12 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: СПБ
|
Лог собрал: [4268] cades.dll: {292} /CadesSignMessage/ cades.cpp(2259) : (pSignPara=0x00D7EF10, fDetachedSignature=1, cToBeSigned=1, rgpbToBeSigned=0x00D7EF20, rgcbToBeSigned=0x00D7EF1C, ppSignedBlob=0x00D7EF44) [4268] cades.dll: {292} /CadesSignMessageImpl/ cades.cpp(2135) : Signer updating start [4268] cades.dll: {292} /CadesSignMessageImpl/ cades.cpp(2138) : Hash algorithm deduced [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::SigningTimeAttributeExists/ cades.cpp(178) : (pAttr=0) [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::AttributeExists/ cades.cpp(160) : (pAttr=0) [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(400) : Attributes copied [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(403) : Signer does not have any of signing-certificate attributes [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(407) : signing-certificate(-v2) attribute assembled [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(411) : Signer does not have signingTime attribute [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(415) : signingTime attribute assembled [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::UpdateSignedAttributes/ cades.cpp(420) : Signer is updated successfully [4268] cades.dll: {292} /CadesMsgOpenToEncode/ cades.cpp(531) : (dwMsgEncodingType=0x00010001, dwFlags=0x00000004, pvMsgEncodeInfo=0x00D7E968, pszInnerContentObjID=0, pStreamInfo=0x00000000) [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(472) : Start [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(476) : Input parameters checked [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(492) : Copy of input structures is ready [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(498) : Signers updating start [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(503) : Signer #0 [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::CheckAlgorithms/ cades.cpp(438) : Public key info is exported successfully [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::CheckAlgorithms/ cades.cpp(445) : Signature algoritm OID info is found: 1.2.840.113549.1.1.5 [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(510) : Certificates equality checked [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::DeduceHashAlgorithm/ cades.cpp(136) : (szHashAlgorithm=1.3.14.3.2.26) [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(512) : Hash algorithm deduced [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::SigningTimeAttributeExists/ cades.cpp(173) : (pAttr->pszObjId=1.2.840.113549.1.9.5) [4268] cades.dll: {292} /CadesMsgOpenToEncodeImplNamespace::AttributeExists/ cades.cpp(155) : (pAttr->pszObjId=1.2.840.113549.1.9.16.2.12) [4268] cades.dll: {292} /CadesMsgOpenToEncodeImpl/ cades.cpp(519) : Calling CryptMsgOpenToEncode() [4268] cades.dll: {292} /CadesMsgOpenToEncode/ cades.cpp(562) : (hMsg=0x04D3EE08, GetLastError=0x00000000) [4268] cades.dll: {292} /CadesMsgEnhanceSignature/ cades.cpp(1220) : (hCryptMsg=0x04D439B8, dwSignatureIndex=0, pCadesSignPara=0x00D7E980) [4268] cades.dll: {292} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1073) : Input parameters checked [4268] cades.dll: {292} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1077) : Signer certificate ID found [4268] cades.dll: {292} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1092) : pSignerCert=0x04D14510 [4268] cades.dll: {292} /CadesMsgEnhanceSignatureImpl/ cades.cpp(1101) : Only CAdES-BES is required. [4268] cades.dll: {292} /CadesMsgEnhanceSignature/ cades.cpp(1249) : (res=1, GetLastError=0x00000000 [4268] cades.dll: {292} /CadesSignMessage/ cades.cpp(2291) : (res=1, GetLastError=0x00000000 [4268] cades.dll: {292} /CadesFreeBlob/ cades.cpp(2837) : (pBlob=0x04898EA8) [4268] cades.dll: {292} /CadesFreeBlob/ cades.cpp(2865) : (res=1, GetLastError=0x00000000
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,005 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close