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

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline a.mayshev  
#1 Оставлено : 11 ноября 2015 г. 13:51:11(UTC)
a.mayshev

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

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

криптопро 4.0.9644

поверяли ЭП с помощью cryptcp

Цитата:

[root@localhost amd64]# ./cryptcp -verify -norev -verall /root/tmp/with_attrs.txt.p7s /root/tmp/with_attrs.txt
CryptCP 4.0 (c) "Crypto-Pro", 2002-2015.
Command prompt Utility for file signature and encryption.
Folder '/root/tmp/':
/root/tmp/with_attrs.txt.p7s... Signature verifying...
Error: The parameter is incorrect.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:1755: 0x57
[ErrorCode: 0x00000057]


формировалось в приложении как-то так (C#)
Код:

SignedCms signedMessage;
...
var signer = new CmsSigner(SigningCert) { IncludeOption = X509IncludeOption.EndCertOnly };
signer.SignedAttributes.Add(new Pkcs9SigningTime());
signedMessage.ComputeSignature(signer, false);


На windows - корректно проходит проверку в криптоарме, криптофайле (инфотекс), на криптопровайдерах криптопро, vipnet csp

Собственно, вопрос, что не так?
Что за параметр ей не нравится?

content.zip (3kb) загружен 5 раз(а).
Offline a.mayshev  
#2 Оставлено : 16 ноября 2015 г. 13:53:54(UTC)
a.mayshev

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

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

проверили на 4.0.9660
чуда не произошло.

прошу помощи.
Offline Андрей Писарев  
#3 Оставлено : 16 ноября 2015 г. 14:45:00(UTC)
Андрей *

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

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

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
Здравствуйте.

В приложенном архиве - content.txt.p7s - файл с отсоединенной подписью, закодированный дополнительно в base64.
Верно?
Техническую поддержку оказываем тут
Наша база знаний
Offline a.mayshev  
#4 Оставлено : 16 ноября 2015 г. 14:47:14(UTC)
a.mayshev

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

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

да
Offline Андрей Писарев  
#5 Оставлено : 16 ноября 2015 г. 14:47:48(UTC)
Андрей *

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

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

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
http://www.cryptopro.ru/...cryptcp/3-40/cryptcp.pdf
стр.8
Цитата:

-verify
[<КПС> | -verall] [-start] [-sd[<время>]] [-ss[<время>]]<сообщение> [<выходной файл>]


Что получается? Как можно проверить отсоединенную подпись без исходных данных?
Техническую поддержку оказываем тут
Наша база знаний
Offline a.mayshev  
#6 Оставлено : 16 ноября 2015 г. 15:39:36(UTC)
a.mayshev

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

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

да, команда была некорректная.
сформировали присоединенную подпись, проверяем той же командой. ошибка та же.
Цитата:

[root@localhost amd64]# ./cryptcp -verify -norev -verall /root/tmp/attached-16.11.txt.p7s
CryptCP 4.0 (c) "Crypto-Pro", 2002-2015.
Command prompt Utility for file signature and encryption.
Folder '/root/tmp/':
/root/tmp/attached-16.11.txt.p7s... Signature verifying...
Error: The parameter is incorrect.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:1755: 0x57
[ErrorCode: 0x00000057]

пытались проверить программно
Код:

if (!(hMsg = CryptMsgOpenToDecode(ENCODING_TYPE, 0, 0, NULL, NULL, NULL))) {
	CryptoUtils::HandleError("Ошибка открытия контекста для проверки прикрепленной подписи");
	return false;
}
if (!(CryptMsgUpdate(hMsg, pbSign, cbSign, TRUE))) { // та же ошибка происходит здесь
	CryptoUtils::HandleError("Ошибка открытия прикрепленной подписи для проверки");
	return false;
}

Этот же код успешно проверяет подписи, сформированные КриптоАРМ.
Вопрос в том, что не так с этой подписью ( attached-16.11.txt.p7s (4kb) загружен 5 раз(а).)?

Отредактировано пользователем 16 ноября 2015 г. 15:43:12(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#7 Оставлено : 16 ноября 2015 г. 15:50:06(UTC)
Андрей *

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

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

Сказал «Спасибо»: 500 раз
Поблагодарили: 2054 раз в 1594 постах
Автор: a.mayshev Перейти к цитате
да, команда была некорректная.
сформировали присоединенную подпись, проверяем той же командой. ошибка та же.
Цитата:

[root@localhost amd64]# ./cryptcp -verify -norev -verall /root/tmp/attached-16.11.txt.p7s
CryptCP 4.0 (c) "Crypto-Pro", 2002-2015.
Command prompt Utility for file signature and encryption.
Folder '/root/tmp/':
/root/tmp/attached-16.11.txt.p7s... Signature verifying...
Error: The parameter is incorrect.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:1755: 0x57
[ErrorCode: 0x00000057]

пытались проверить программно
Код:

if (!(hMsg = CryptMsgOpenToDecode(ENCODING_TYPE, 0, 0, NULL, NULL, NULL))) {
	CryptoUtils::HandleError("Ошибка открытия контекста для проверки прикрепленной подписи");
	return false;
}
if (!(CryptMsgUpdate(hMsg, pbSign, cbSign, TRUE))) { // та же ошибка происходит здесь
	CryptoUtils::HandleError("Ошибка открытия прикрепленной подписи для проверки");
	return false;
}

Этот же код успешно проверяет подписи, сформированные КриптоАРМ.
Вопрос в том, что не так с этой подписью ( attached-16.11.txt.p7s (4kb) загружен 5 раз(а).)?



CryptMsgUpdate не умеет работать с base64.
Техническую поддержку оказываем тут
Наша база знаний
Offline a.mayshev  
#8 Оставлено : 16 ноября 2015 г. 15:56:05(UTC)
a.mayshev

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

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

к моменту выполнения кода контент декодирован из base64. сформированная в КриптоАРМе присоединенная подпись в base64 без служебных заголовков проверяется, а вот эта подпись, сформированная в C#, выдает ошибку. проблема, с большой вероятностью, в структуре подписи, НО эта же подпись проверяется в КриптоАРМ и кодом на C#.
Offline cross  
#9 Оставлено : 16 ноября 2015 г. 15:56:40(UTC)
Анатолий Беляев

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

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

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 174 раз в 152 постах
Отделенные подписи можно проверить с ключем -vsignf ( только саму файл с подписью придется назвать content.txt.sgn).
В вашей второй подписи есть странный тэг на конце. Вот что говоит dumpasn1 -
Цитата:

<A1 00>
2880 10: SEQUENCE {
<06 06 2A 85 03 02 02 13>
2882 6: OBJECT IDENTIFIER gostPublicKey (1 2 643 2 2 19)
: (GOST R 34.10-2001 (ECC) public key)
<05 00>
2890 0: NULL
: }
<04 40 C8 75 9C AF AA 63 03 36 5B 77 BD 76 B7 3D 77 D5 EE 89 09 37 9E 1F>
2892 64: OCTET STRING
: C8 75 9C AF AA 63 03 36 .u...c.6
: 5B 77 BD 76 B7 3D 77 D5 [w.v.=w.
: EE 89 09 37 9E 1F 49 2B ...7..I+
: D5 AB 0C 91 D5 C4 5D CA ......].
: AA 2D E0 AF 26 9A 11 79 .-..&..y
: AE 95 89 4F 69 7F 35 10 ...Oi.5.
: 11 A7 E1 58 3F 5D 54 4B ...X?]TK
: B0 CC CC 8A 4A B8 44 65
<A1 00>

2958 0: [1]
: Error: Object has zero length.
: }
: }


Техническую поддержку оказываем тут.
Наша база знаний.
Наша страничка в Instagram.
Offline a.mayshev  
#10 Оставлено : 16 ноября 2015 г. 16:05:54(UTC)
a.mayshev

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

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

Может ли этот тэг влиять на результат? Ведь при проверке под ОС Windows ошибок нет. Ошибка возникает только под Linux
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.