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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline forik  
#1 Оставлено : 30 мая 2012 г. 15:38:47(UTC)
forik

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

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

Сказал(а) «Спасибо»: 2 раз
Здравствуйте! Не получается получить сертификат. На notary.cryptopro.ru проверяется нормально. Пробую получить следующим образом:
Код:

if( ! CryptQueryObject(
		CERT_QUERY_OBJECT_FILE,
		L"C:/Users/Timur/Desktop/Crypto/321.txt.sig",
		CERT_QUERY_CONTENT_FLAG_ALL,
		CERT_QUERY_FORMAT_FLAG_ALL,
		0,
		&dwTypeCertEncType,
		&pdwContentType,
		&pdwFormatType,
		&hTempStore,
		&hTempMsg,
		NULL))
	{
		HandleError("CryptQueryObject");
	}

	if(pdwContentType == CERT_QUERY_CONTENT_PKCS7_SIGNED)
	{
		if(! (pSignerCert = CertFindCertificateInStore(
			hTempStore,
			MY_TYPE,
			0,
			CERT_FIND_ANY,
			NULL,
			NULL)))
		{
			HandleError("test"); <---- попадает сюда
		}
	}

Падает с ошибкой объект не найден.

Отредактировано пользователем 30 мая 2012 г. 15:39:29(UTC)  | Причина: Не указана

Вложение(я):
321.txt.sig (11kb) загружен 8 раз(а).

У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
Offline Новожилова Елена  
#2 Оставлено : 30 мая 2012 г. 16:15:05(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 924
Женщина
Откуда: Крипто-Про

Поблагодарили: 99 раз в 95 постах
Здравствуйте!

В электронной подписи формата CAdES-X Long Type 1 сертификаты хранятся не в коллекции Certificates, а в неподписанном атрибуте certificateValues.

Для получения сертификатов в этом случае можно использовать функции CadesMsgGetCertificateValues, CadesMsgGetCertificateValuesEncoded и CadesMsgGetCertificateValuesEx.
Offline forik  
#3 Оставлено : 30 мая 2012 г. 17:42:57(UTC)
forik

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

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

Сказал(а) «Спасибо»: 2 раз
То есть такие подписи не получиться проверить обычным образом (CryptVerifyDetachedMessageSignature)?
Если нет, то можно ли с помощью плагина создать обычную подпись, как в CAPICOM?
Offline Новожилова Елена  
#4 Оставлено : 30 мая 2012 г. 18:20:30(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 924
Женщина
Откуда: Крипто-Про

Поблагодарили: 99 раз в 95 постах
Проверить такие подписи обычным способом можно.

Только если планируется проверять подписи при помощи CryptVerifyDetachedMessageSignature, то нет смысла делать подпись формата CAdES-X Long Type 1.
Эти подписи содержат дополнительные доказательства действительности сертификата в момент создания подписи, проверять которые CryptVerifyDetachedMessageSignature не умеет.

В вашем случае есть 2 варианта, в зависимости от того, нужна вам усовершенствованная подпись или нет:

- Если проверять нужно именно с использованием CryptVerifyDetachedMessageSignature, то лучше создавать в плагине подпись формата CAdES-BES (см. SignCades).

- Использовать для проверки подписи вместо CryptVerifyDetachedMessageSignature функцию CadesVerifyDetachedMessage.
Offline forik  
#5 Оставлено : 31 мая 2012 г. 13:05:01(UTC)
forik

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

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

Сказал(а) «Спасибо»: 2 раз
Спасибо, CADES_BES решил проблему.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (2)
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.