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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline engineer  
#1 Оставлено : 26 августа 2008 г. 16:54:20(UTC)
engineer

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

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

Имеется: WinXP SP2, CSP 3.0, cadessdk

Примеры с подписью/проверкой приведенные в SDK не работают,
однако аналогичный пример, с использованием объектов CAPICOM работают нормально
(в документации сказано, что CAdESCOM имеет интерфейс идентичный CAPICOM).

Код:
function SignData( DataToSign )
{
	var CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN = 1;
	var CAPICOM_ENCODING_BASE64 = 0;
	
	var oSigner = new ActiveXObject('CAdESCOM.CPSigner');
	
	oSigner.Certificate = ActiveCertificate;
	oSigner.Options = CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN;
	
	var oSignedData = new ActiveXObject('CAdESCOM.CadesSignedData');
		
	var Utils = new ActiveXObject('CAPICOM.Utilities');	 
	oSignedData.Content = Utils.Base64Decode(DataToSign);
	
	
	var sSignature = oSignedData.Sign(oSigner, true, CAPICOM_ENCODING_BASE64);
	
	return sSignature;
}

Симптомы:
при вызове метода Sign объекта CadESCOM.CPSigner как полагается мигает индикатор носителя/флэшки (происходит обращение к закрытому ключу), но потом через некоторое время выбрасывается exception (error object), причем абсолютно не информативный, т.е. отсутствует код, словесное описание ошибки и источник!

В коллективе экстрасенсов нет, поэтому выяснить в чем именно ошибка пока не удается.
Offline Павел Смирнов  
#2 Оставлено : 26 августа 2008 г. 23:33:32(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Выполнены ли все требования из списка?
И ещё сообщите используемую версию КриптоПро ЭЦП SDK.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline engineer  
#3 Оставлено : 27 августа 2008 г. 17:25:38(UTC)
engineer

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

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

Насчет требований из списка сильно сомневаюсь.
У нас есть:
1. Сертификат для подписи по алгоритму ГОСТ Р 34.11/34.10-2001
2. Корневой сертификат для него.
3. Адрес службы OCSP Удостоверяющего центра ООО «КРИПТО-ПРО»: http://ocsp.cryptopro.ru/ocsp/ocsp.srf, Адрес службы TSP Удостоверяющего центра ООО «КРИПТО-ПРО»: http://tsp.cryptopro.ru/tsp/tsp.srf
4. КриптоПро CSP версии КС1 3.0.3300.3
5. E-Token и средства работы с ним.

Со всем этим хозяйством удалось реализовать подпись классической ЭЦП.

Для реализации расширенной ЭЦП был скачан КриптоПро ЭЦП SDK (не понятно где там смотреть версию: он был скачан в понедельник 25.08.2008 с Вашего сайта. Смущает правда надпись на главной странице в help: © 2004-2006 "Крипто-Про" и структура и содержимо help'а отличается от находящегося на Вашем сайте. Например у нас в интерфейсе ICPSigner отсутствует св-во TSAAddress) и код переписан на использование объектов из CAdESCOM. При первом запуске был выброшен error object с сообщением "The Signer has not been properly initialized", при последующих ошибка с пустым description, а code и source = undefined.

Подскажите пожалуйста что нам еще нужно и где это взять. А также что делать с адресами служб OCSP и TSP, т.к. в оснастке Крипто Про PKI никаких настроек для TSP и OCSP клиентов нет.
Offline Павел Смирнов  
#4 Оставлено : 27 августа 2008 г. 21:11:55(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Проверяйте, чтобы все условия выполнялись. С ваших слов сходу могу сказать, что адрес службы штампов надо задать в групповой политике. С имеющимся у вас дистрибутивом это единственный способ задания адреса. Адрес службы OCSP должен присутствовать в расширении AIA сертификата, на котором делается подпись.

В ближайшие дни мы выложим новый дистрибутив КриптоПро ЭЦП SDK, в котором будет поддержано свойство TSAAddress. Различия в документации возникают из-за того, что на сайте она обновляется автоматически по текущей собираемой версии SDK.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline engineer  
#5 Оставлено : 27 августа 2008 г. 21:41:23(UTC)
engineer

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

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

Цитата:
адрес службы штампов надо задать в групповой политике
Не подскажете где это?

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

В составе сертификата присутствует пункт:
{
[1]Доступ к сведениям центра сертификации
Метод доступа=Протокол определения состояния сертификата через сеть (1.3.6.1.5.5.7.48.1)
Дополнительное имя:
URL=http://ocsp.cryptopro.ru/ocsp/ocsp.srf
}
Это оно и есть?

Нужно ли иметь на машине с которой производится подпись\проверка подписи
1. сертификат службы штампов времени
2. корневой сертификат для сертификата службы штампов времени
3. сертификат службы актуальных статусов

Offline Павел Смирнов  
#6 Оставлено : 27 августа 2008 г. 22:28:11(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Цитата:
Не подскажете где это?

О групповых политиках читайте здесь. Оснастка редактирования локальной политики запускается по команде gpedit.msc.

Цитата:
В составе сертификата присутствует пункт:
{
[1]Доступ к сведениям центра сертификации
Метод доступа=Протокол определения состояния сертификата через сеть (1.3.6.1.5.5.7.48.1)
Дополнительное имя:
URL=http://ocsp.cryptopro.ru/ocsp/ocsp.srf
}
Это оно и есть?

Да.

Цитата:
Нужно ли иметь на машине с которой производится подпись\проверка подписи
1. сертификат службы штампов времени
2. корневой сертификат для сертификата службы штампов времени
3. сертификат службы актуальных статусов


Сертификаты служб штампов и актуальных статусов обычно иметь не нужно, поскольку они добавляются службами к выдаваемым ими ответам, а корневой сертификат для сертификата службы штампов времени должен быть установлен в хранилище доверенных корневых. В вашем случае, судя по всему, корневой сертификат службы штампов и сертификата, на котором создаётся подпись - это один и тот же сертификат.
Техническую поддержку оказываем тут.
Наша база знаний.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.