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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline fetisov  
#1 Оставлено : 21 мая 2010 г. 18:23:03(UTC)
fetisov

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

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

Подпись формируется с помощью "КриптоАРМ" в кодировке base64.

Использую примеры CMS (CMSVerify.java)

Код:

out = new StringBuffer("");
out1 = new StringBuffer("");
final Asn1BerDecodeBuffer asnBuf = new Asn1BerDecodeBuffer(buffer);
final ContentInfo all = new ContentInfo();
all.decode(asnBuf);


Возникает ошибка на последней строчке кода.

Результат:
Цитата:

21.05.2010 14:17:07 ru.CryptoPro.JCP.tools.l a
INFO: Loading JCP...
21.05.2010 14:17:08 ru.CryptoPro.JCP.tools.l a
INFO: JCP loaded.
Exception in thread "main" com.objsys.asn1j.runtime.Asn1TagMatchFailedException: ASN.1 decode error @ offset 0:
Tag match failed: expected [UNIVERSAL 16], parsed [UNIVERSAL 13]
at com.objsys.asn1j.runtime.Asn1Type.matchTag(Asn1Type.java:49)
at com.objsys.asn1j.runtime.Asn1Type.matchTag(Asn1Type.java:65)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:55)
at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:15)
at ecp_tryouts.CMS_try.CMSVerify(CMS_try.java:55)
at ecp_tryouts.CMS_try.main(CMS_try.java:45)
Java Result: 1


В чем может быть проблема и как ее решить?
Offline Iva  
#2 Оставлено : 21 мая 2010 г. 18:31:57(UTC)
Iva

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

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

Файл прикрепите
Offline fetisov  
#3 Оставлено : 21 мая 2010 г. 18:38:36(UTC)
fetisov

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

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

Файл

На всякий случай выложу содержимое сюда, потому что с форума лично у меня сейчас ничего не скачивается.

----- BEGIN PKCS7 SIGNED -----
MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIB/TCCAfkw
ggFioAMCAQICEBWRzBFmY8i+SUY3iNU43hUwDQYJKoZIhvcNAQEEBQAwDjEMMAoGA1UEAxMDYW5u
MB4XDTA4MTIzMTIxMDAwMFoXDTE0MTIzMTIxMDAwMFowDjEMMAoGA1UEAxMDYW5uMIGfMA0GCSqG
SIb3DQEBAQUAA4GNADCBiQKBgQDOcb9SiZPYqSvogvcJofhwBYcDXxw6g8jJ9hkVLBOqvQs6iVdJ
aMcPoYXRn1z2emKH4Yt6Sw0HhzQOYVrjQkpY/tZUbAGUADRmuQFh9E+dqWOOU4j0ItIaFNl88Fhm
Ibk7u0CWtsWo6N8XYNKpw5ui6255Ls5fjFZLzJU/gtQE0wIDAQABo1gwVjATBgNVHSUEDDAKBggr
BgEFBQcDAzA/BgNVHQEEODA2gBDcp94nSZxOQjswYms/8FjkoRAwDjEMMAoGA1UEAxMDYW5ughAV
kcwRZmPIvklGN4jVON4VMA0GCSqGSIb3DQEBBAUAA4GBAC7LlpEW4A330OFRTk6/eXDqTVvlnbEk
xXBpd1GSwbAaOB9Uq5+IFSYV+vkFMOmm2KBiLnGPPUB2WOjtAgAokrruaTeCq8+ix6gXtnzWCZ+/
rwWnXiu12QmU2OfQ894WKzVCmi201HOkpr1wX/3UVYgznjJBvLeCKVFU2v7HbGSoMYIBJzCCASMC
AQEwIjAOMQwwCgYDVQQDEwNhbm4CEBWRzBFmY8i+SUY3iNU43hUwCQYFKw4DAhoFAKBdMBgGCSqG
SIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTEwMDUyMTEwMTMxMlowIwYJKoZI
hvcNAQkEMRYEFIJ8L2tMBAxpGTruXnRWnXeNvmAlMA0GCSqGSIb3DQEBAQUABIGAGw+8sQZnECBD
7FzKxhTbUmf6AxaAgqk8PatwTRyiuHoprYI7slm5DhgFxhh7fZu27EddDNH1XDIn70+ddiVprmcl
ttiUd5NdJgY3iUTXxiT0mB/1Fy6tBvpkJ7B1RgEXTwkCKHYmigOwyYBJCMhJm/nMXg/p7B+JkSF0
NxOrWlEAAAAAAAA=
----- END PKCS7 SIGNED -----

Отредактировано пользователем 21 мая 2010 г. 18:41:19(UTC)  | Причина: Не указана

Вложение(я):
Текстовый документ.html_b_with_time_with_headers_a (2kb) загружен 4 раз(а).

У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
Offline Iva  
#4 Оставлено : 21 мая 2010 г. 18:48:30(UTC)
Iva

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

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

Asn1BerDecodeBuffer может раскодировать Ber.
Отрежьте ----- BEGIN PKCS7 SIGNED ----- и ----- END PKCS7 SIGNED -----
Рсскодируйте Base64 классом ru.CryptoPro.JCP.tools.Decoder
Потом уже Asn1BerDecodeBuffer
Offline fetisov  
#5 Оставлено : 21 мая 2010 г. 19:43:44(UTC)
fetisov

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

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

Сделал то, что вы сказали.
Результат:

Цитата:

21.05.2010 15:39:18 ru.CryptoPro.JCP.tools.l a
INFO: Loading JCP...
21.05.2010 15:39:19 ru.CryptoPro.JCP.tools.l a
INFO: JCP loaded.
com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 31:
SEQUENCE or SET is missing a required element.
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.SignedData.decode(SignedData.java:171)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.checkTC(ContentInfo.java:137)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:90)
at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:15)
at ecp_tryouts.CMS_try.CMSVerify(CMS_try.java:60)
at ecp_tryouts.CMS_try.main(CMS_try.java:50)
Exception in thread "main" com.objsys.asn1j.runtime.Asn1Exception: table constraint: content decode failed
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.checkTC(ContentInfo.java:141)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:90)
at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:15)
at ecp_tryouts.CMS_try.CMSVerify(CMS_try.java:60)
at ecp_tryouts.CMS_try.main(CMS_try.java:50)
Java Result: 1


Подобный результат появляется, если считывать файл подписи в der-кодировке первоначальным вариантом кода. только error @ offset другое число.
Offline Iva  
#6 Оставлено : 24 мая 2010 г. 14:14:50(UTC)
Iva

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

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

У меня на Ваших данных все получилось
Код:
String base64 = "MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIB/TCCAfkw\n" +
        "ggFioAMCAQICEBWRzBFmY8i+SUY3iNU43hUwDQYJKoZIhvcNAQEEBQAwDjEMMAoGA1UEAxMDYW5u\n" +
        "MB4XDTA4MTIzMTIxMDAwMFoXDTE0MTIzMTIxMDAwMFowDjEMMAoGA1UEAxMDYW5uMIGfMA0GCSqG\n" +
        "SIb3DQEBAQUAA4GNADCBiQKBgQDOcb9SiZPYqSvogvcJofhwBYcDXxw6g8jJ9hkVLBOqvQs6iVdJ\n" +
        "aMcPoYXRn1z2emKH4Yt6Sw0HhzQOYVrjQkpY/tZUbAGUADRmuQFh9E+dqWOOU4j0ItIaFNl88Fhm\n" +
        "Ibk7u0CWtsWo6N8XYNKpw5ui6255Ls5fjFZLzJU/gtQE0wIDAQABo1gwVjATBgNVHSUEDDAKBggr\n" +
        "BgEFBQcDAzA/BgNVHQEEODA2gBDcp94nSZxOQjswYms/8FjkoRAwDjEMMAoGA1UEAxMDYW5ughAV\n" +
        "kcwRZmPIvklGN4jVON4VMA0GCSqGSIb3DQEBBAUAA4GBAC7LlpEW4A330OFRTk6/eXDqTVvlnbEk\n" +
        "xXBpd1GSwbAaOB9Uq5+IFSYV+vkFMOmm2KBiLnGPPUB2WOjtAgAokrruaTeCq8+ix6gXtnzWCZ+/\n" +
        "rwWnXiu12QmU2OfQ894WKzVCmi201HOkpr1wX/3UVYgznjJBvLeCKVFU2v7HbGSoMYIBJzCCASMC\n" +
        "AQEwIjAOMQwwCgYDVQQDEwNhbm4CEBWRzBFmY8i+SUY3iNU43hUwCQYFKw4DAhoFAKBdMBgGCSqG\n" +
        "SIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTEwMDUyMTEwMTMxMlowIwYJKoZI\n" +
        "hvcNAQkEMRYEFIJ8L2tMBAxpGTruXnRWnXeNvmAlMA0GCSqGSIb3DQEBAQUABIGAGw+8sQZnECBD\n" +
        "7FzKxhTbUmf6AxaAgqk8PatwTRyiuHoprYI7slm5DhgFxhh7fZu27EddDNH1XDIn70+ddiVprmcl\n" +
        "ttiUd5NdJgY3iUTXxiT0mB/1Fy6tBvpkJ7B1RgEXTwkCKHYmigOwyYBJCMhJm/nMXg/p7B+JkSF0\n" +
        "NxOrWlEAAAAAAAA=";
Decoder decoder = new Decoder();
byte[] der = decoder.decodeBuffer(base64);
Asn1BerDecodeBuffer asnBuf = new Asn1BerDecodeBuffer(der);
ContentInfo all = new ContentInfo();
all.decode(asnBuf);
Offline fetisov  
#7 Оставлено : 24 мая 2010 г. 14:35:34(UTC)
fetisov

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

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

недолго думая скопировал этот кусок кода.
файл java:

Код:

package ecp_tryouts;

import com.objsys.asn1j.runtime.Asn1BerDecodeBuffer;
import ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo;
import ru.CryptoPro.JCP.tools.Decoder;

/**
 *
 * @author fetisov
 */
public class try_cms {

	public static void main(String[] args) throws Exception{
		String base64 = "MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIB/TCCAfkw\n"
				+ "ggFioAMCAQICEBWRzBFmY8i+SUY3iNU43hUwDQYJKoZIhvcNAQEEBQAwDjEMMAoGA1UEAxMDYW5u\n"
				+ "MB4XDTA4MTIzMTIxMDAwMFoXDTE0MTIzMTIxMDAwMFowDjEMMAoGA1UEAxMDYW5uMIGfMA0GCSqG\n"
				+ "SIb3DQEBAQUAA4GNADCBiQKBgQDOcb9SiZPYqSvogvcJofhwBYcDXxw6g8jJ9hkVLBOqvQs6iVdJ\n"
				+ "aMcPoYXRn1z2emKH4Yt6Sw0HhzQOYVrjQkpY/tZUbAGUADRmuQFh9E+dqWOOU4j0ItIaFNl88Fhm\n"
				+ "Ibk7u0CWtsWo6N8XYNKpw5ui6255Ls5fjFZLzJU/gtQE0wIDAQABo1gwVjATBgNVHSUEDDAKBggr\n"
				+ "BgEFBQcDAzA/BgNVHQEEODA2gBDcp94nSZxOQjswYms/8FjkoRAwDjEMMAoGA1UEAxMDYW5ughAV\n"
				+ "kcwRZmPIvklGN4jVON4VMA0GCSqGSIb3DQEBBAUAA4GBAC7LlpEW4A330OFRTk6/eXDqTVvlnbEk\n"
				+ "xXBpd1GSwbAaOB9Uq5+IFSYV+vkFMOmm2KBiLnGPPUB2WOjtAgAokrruaTeCq8+ix6gXtnzWCZ+/\n"
				+ "rwWnXiu12QmU2OfQ894WKzVCmi201HOkpr1wX/3UVYgznjJBvLeCKVFU2v7HbGSoMYIBJzCCASMC\n"
				+ "AQEwIjAOMQwwCgYDVQQDEwNhbm4CEBWRzBFmY8i+SUY3iNU43hUwCQYFKw4DAhoFAKBdMBgGCSqG\n"
				+ "SIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTEwMDUyMTEwMTMxMlowIwYJKoZI\n"
				+ "hvcNAQkEMRYEFIJ8L2tMBAxpGTruXnRWnXeNvmAlMA0GCSqGSIb3DQEBAQUABIGAGw+8sQZnECBD\n"
				+ "7FzKxhTbUmf6AxaAgqk8PatwTRyiuHoprYI7slm5DhgFxhh7fZu27EddDNH1XDIn70+ddiVprmcl\n"
				+ "ttiUd5NdJgY3iUTXxiT0mB/1Fy6tBvpkJ7B1RgEXTwkCKHYmigOwyYBJCMhJm/nMXg/p7B+JkSF0\n"
				+ "NxOrWlEAAAAAAAA=";
		Decoder decoder = new Decoder();
		byte[] der = decoder.decodeBuffer(base64);
		Asn1BerDecodeBuffer asnBuf = new Asn1BerDecodeBuffer(der);
		ContentInfo all = new ContentInfo();
		all.decode(asnBuf);
	}
}


Результат:
Цитата:

com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 31:
SEQUENCE or SET is missing a required element.
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.SignedData.decode(SignedData.java:171)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.checkTC(ContentInfo.java:137)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:90)
at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:15)
at ecp_tryouts.try_cms.main(try_cms.java:39)
Exception in thread "main" com.objsys.asn1j.runtime.Asn1Exception: table constraint: content decode failed
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.checkTC(ContentInfo.java:141)
at ru.CryptoPro.JCP.ASN.CryptographicMessageSyntax.ContentInfo.decode(ContentInfo.java:90)
at com.objsys.asn1j.runtime.Asn1Type.decode(Asn1Type.java:15)
at ecp_tryouts.try_cms.main(try_cms.java:39)
Java Result: 1


В чем может быть проблема??? скачивал JCP с вашего сайта. содержимое пакетов не менял.
Offline wizard35  
#8 Оставлено : 17 января 2011 г. 21:01:38(UTC)
wizard35

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

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

У меня такая же проблема, как-нибудь удалось ее решить?
Offline Iva  
#9 Оставлено : 18 января 2011 г. 14:38:03(UTC)
Iva

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

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

Проверьте версию JCP 1.0.47
Если версия последняя присылайте на support@cryptopro.ru проблемный файл.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.