Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.11.2012(UTC) Сообщений: 77 Откуда: Тольятти
|
Код:public static void getSignedAttributes(SignedAttributes signedAttrs)
throws Exception {
//SignedAttributes ::= SET SIZE (1..MAX) OF Attribute
/* Attribute ::= SEQUENCE {
attrType OBJECT IDENTIFIER,
attrValues SET OF AttributeValue }*/
final Asn1ObjectIdentifier messageDigestOid = new Asn1ObjectIdentifier(
(new OID(CMStools.STR_CMS_OID_DIGEST_ATTR)).value);
final Asn1ObjectIdentifier contentTypeOid = new Asn1ObjectIdentifier(
(new OID(CMStools.STR_CMS_OID_CONT_TYP_ATTR)).value);
final Asn1ObjectIdentifier timeStampOid = new Asn1ObjectIdentifier(
(new OID("1.2.840.113549.1.9.16.2.47")).value);
//TimeStampToken - определен в документе RFC 3161 [7] и описан в документе TS 101 861 [i.9].
System.out.println("signedAttrs="+signedAttrs);
if (signedAttrs != null ){
for (int r = 0; r < signedAttrs.elements.length; r++) {
System.out.print(signedAttrs.elements[r].type);
if (messageDigestOid.equals(signedAttrs.elements[r].type)){
Attribute attribute = signedAttrs.elements[r];
System.out.println("Нашли - messageDiges");
}else if (contentTypeOid.equals(signedAttrs.elements[r].type)){
System.out.println("Нашли - contentType");
Attribute attribute = signedAttrs.elements[r];
getContentType(attribute);
}else if (timeStampOid.equals(signedAttrs.elements[r].type)){
Attribute attribute = signedAttrs.elements[r];
getTimeStampToken(attribute);
System.out.println("Нашли - TimeStampToken");
}
}
}
}
public static void getTimeStampToken(Attribute attribute)
throws Exception {
/*Attribute ::= SEQUENCE {
attrType OBJECT IDENTIFIER,
attrValues SET OF AttributeValue }
AttributeValue ::= ANY */
/*TimeStampReq ::= SEQUENCE {
version INTEGER { v1(1) },
messageImprint MessageImprint,
reqPolicy TSAPolicyId OPTIONAL,
nonce INTEGER OPTIONAL,
certReq BOOLEAN DEFAULT FALSE,
extensions [0] IMPLICIT Extensions OPTIONAL }*/
// ru.CryptoPro.JCP.ASN.PKIXTSP.TimeStampToken;
Asn1BerEncodeBuffer encBuf = new Asn1BerEncodeBuffer();
attValues.elements[0].encode(encBuf);
// attribute.encode(encBuf);
final Asn1BerDecodeBuffer decBuf = new Asn1BerDecodeBuffer(encBuf.getByteArrayInputStream());
ru.CryptoPro.JCP.ASN.PKIXTSP.TimeStampToken tsr = new ru.CryptoPro.JCP.ASN.PKIXTSP.TimeStampToken();
tsr.decode(decBuf); //здесь ошибка
}
Exception in thread "main" com.objsys.asn1j.runtime.Asn1TagMatchFailedException: ASN.1 decode error @ offset 0: Tag match failed: expected [UNIVERSAL 6], parsed [UNIVERSAL 16] at com.objsys.asn1j.runtime.Asn1Type.matchTag(Asn1Type.java:449) at com.objsys.asn1j.runtime.Asn1Type.matchTag(Asn1Type.java:466) at com.objsys.asn1j.runtime.Asn1ObjectIdentifier.decode(Asn1ObjectIdentifier.java:109) at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:218) Вложение(я): CMSSignature.bin (1kb) загружен 5 раз(а).У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.11.2012(UTC) Сообщений: 77 Откуда: Тольятти
|
не виноват ошибка такая
Exception in thread "main" com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 16: SEQUENCE or SET is missing a required element. at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:81) at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:218) at CMS_samples.CMSVerify_2.getTimeStampToken(CMSVerify_2.java:319) at CMS_samples.CMSVerify_2.getSignedAttributes(CMSVerify_2.java:258) at CMS_samples.CMSVerify_2.getSignerInfo(CMSVerify_2.java:217) at CMS_samples.CMSVerify_2.CMSVerify(CMSVerify_2.java:194) at CMS_samples.CMSVerify_2.main(CMSVerify_2.java:135)
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,440 Сказал «Спасибо»: 551 раз Поблагодарили: 2235 раз в 1743 постах
|
CMSSignature.bin чем\как создан? В файле нет сертификата для возможности проверить подпись (Серийный номер: 57E82F5800000000B225) Oleg_tgl написал:не виноват ошибка такая
Exception in thread "main" com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 16: SEQUENCE or SET is missing a required element.
Так да или нет? Или запятых не хватает (Не, виноват, ошибка такая)? Отредактировано пользователем 8 декабря 2012 г. 16:29:35(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.11.2012(UTC) Сообщений: 77 Откуда: Тольятти
|
файл создан из примера F:\J_crypto_sample\cades_Sample\cades\src\CAdES\SignExample.java * Имя файла с подписью для сохранения. */ public static final String SIGNATURE_FILENAME = "CMSSignature.bin"; ........................................... Код: 351 235: SEQUENCE {
354 11: OBJECT IDENTIFIER
: signingCertificateV2 (1 2 840 113549 1 9 16 2 47)
367 219: SET {
370 216: SEQUENCE {
373 213: SEQUENCE {
376 210: SEQUENCE {
379 8: SEQUENCE {
381 6: OBJECT IDENTIFIER gostDigest (1 2 643 2 2 9)
: }
389 32: OCTET STRING
: F9 BC D0 D0 3B 26 71 C7 B1 55 9C FD F3 83 AD B8
: C4 1E C2 25 64 A8 60 46 F3 E8 90 83 EE DF 5E 49
423 163: SEQUENCE {
426 148: SEQUENCE {
429 145: [4] {
432 142: SEQUENCE {
435 31: SET {
437 29: SEQUENCE {
439 9: OBJECT IDENTIFIER
: emailAddress (1 2 840 113549 1 9 1)
450 16: IA5String 'ca@sertum-pro.ru'
: }
: }
468 11: SET {
470 9: SEQUENCE {
472 3: OBJECT IDENTIFIER
: countryName (2 5 4 6)
477 2: PrintableString 'RU'
: }
: }
481 33: SET {
483 31: SEQUENCE {
485 3: OBJECT IDENTIFIER
: localityName (2 5 4 7)
490 24: UTF8String '........................'
: }
: }
516 35: SET {
518 33: SEQUENCE {
520 3: OBJECT IDENTIFIER
: organizationName (2 5 4 10)
525 26: UTF8String '...... ............-......'
: }
: }
553 22: SET {
555 20: SEQUENCE {
557 3: OBJECT IDENTIFIER
: commonName (2 5 4 3)
562 13: PrintableString 'UC Sertum-Pro'
: }
: }
: }
: }
: }
577 10: INTEGER 57 E8 2F 58 00 00 00 00 B2 25
: }
: }
: }
: }
: }
: }
: }
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.11.2012(UTC) Сообщений: 77 Откуда: Тольятти
|
ошибка Код:Exception in thread "main" com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 16:
SEQUENCE or SET is missing a required element.
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:81)
at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:218)
at CMS_samples.CMSVerify_2.getTimeStampToken(CMSVerify_2.java:319)
at CMS_samples.CMSVerify_2.getSignedAttributes(CMSVerify_2.java:258)
at CMS_samples.CMSVerify_2.getSignerInfo(CMSVerify_2.java:217)
at CMS_samples.CMSVerify_2.CMSVerify(CMSVerify_2.java:194)
at CMS_samples.CMSVerify_2.main(CMSVerify_2.java:135)
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,984 Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 710 раз в 671 постах
|
SignExample в случае создания усовершенствованной подписи (CAdES-X Long Type 1) кладет штамп времени (причем, не один - их два) в неподписанные аттрибуты, а вы извлекаете из подписанных (ссылка на сертификат подписи signingCertificateV2 "1 2 840 113549 1 9 16 2 47", хеш "1 2 840 113549 1 9 4" и др.). Отредактировано пользователем 8 декабря 2012 г. 20:57:18(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.04.2013(UTC) Сообщений: 3 Откуда: Актобе
|
Добрый день,у меня ошибка декодирования подписи,в чем проблема что делать,зарплата не прошла.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,984 Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 710 раз в 671 постах
|
Здравствуйте. Какого формата подпись? Какая ошибка выводится? |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.04.2013(UTC) Сообщений: 3 Откуда: Актобе
|
я сама не знаю про эту программу глав бух сама не понимает как с ним работать,малейшая ошибка и у нас паника,мы клиент казначайства,роль 20,надеюсь вы об этом.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,984 Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 710 раз в 671 постах
|
Автор: cerf я сама не знаю про эту программу Что за программа? Автор: cerf роль 20,надеюсь вы об этом. Не понятно, о чем речь. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close