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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline florentii  
#1 Оставлено : 28 марта 2017 г. 17:09:10(UTC)
florentii

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

Группы: Участники
Зарегистрирован: 17.04.2015(UTC)
Сообщений: 31
Молдова
Откуда: Тирасполь

Сказал(а) «Спасибо»: 4 раз
Поблагодарили: 2 раз в 2 постах
Добрый день, мы столкнулись со следующей проблемой: до сегодняшнего дня мы пользовались КриптоПро ЭЦП Browser plug-in с версией 2.0.2101.0, а сейчас обновились до версии 2.0.12711.0 и у нас появилась ошибка при проверке подписи при помощи функции VerifyHash, а именно при проверке подписи если проверка прошла успешно объект oSignedData.Signers не создается, а попытки обращения к нему соотвественно вызывают ошибку:


No signature was present in the subject. (0x800B0100)
В этом объекте нет подписи. (0x800B0100)


Если приводить пример на javascript(oHashedData- объект типа CPHashedData содержащий хеш, а sSignedMessage- строка содержащая подпись):
Код:
var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
 yield oSignedData.propset_DisplayData(1);
 yield oSignedData.propset_ContentEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY);

 yield oSignedData.VerifyHash(oHashedData, sSignedMessage, cadesplugin.CADESCOM_CADES_BES);
 var MyoSignedDataSigners = yield oSignedData.Signers;
 var i = yield MyoSignedDataSigners.Count;


И этот код вызовет выше описанную ошибку.


Аналогичный пример у нас не работает и на C#, то выглядит это следующим образом (myHesh - объект типа CPHashedData содержащий хеш, а sSignedMessage - строка содержащая подпись):

Код:
 CadesSignedData oSignedData = new CadesSignedData
                {
                    DisplayData = CADESCOM_DISPLAY_DATA.CADESCOM_DISPLAY_DATA_CONTENT,
                    ContentEncoding = CADESCOM_CONTENT_ENCODING_TYPE.CADESCOM_BASE64_TO_BINARY
                };

  oSignedData.VerifyHash(myHesh, sSignedMessage, CADESCOM_CADES_TYPE.CADESCOM_CADES_BES);
  int i = oSignedData.Signers.Count;


Если использовать не VerifyHash, а VerifyCades, то всё работает отлично (при необходимости приведу код), но подозреваю что в новой версии плагина функция VerifyHash работает не корректно, не возвращая объект Signers.

Просьба сообщить стоит ли ждать обновления исправляющего данную ошибку или данные различия в работе были сделаны намеренно и нам просто следует другим способом теперь использовать библиотеку CadesCom?
Offline florentii  
#2 Оставлено : 29 марта 2017 г. 8:59:46(UTC)
florentii

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

Группы: Участники
Зарегистрирован: 17.04.2015(UTC)
Сообщений: 31
Молдова
Откуда: Тирасполь

Сказал(а) «Спасибо»: 4 раз
Поблагодарили: 2 раз в 2 постах
Изучив форум нашёл аналогичную ошибку в работе плагина при использовании PHP кода:
http://www.cryptopro.ru/...aspx?g=posts&t=11736

Что ещё раз подтверждает что с какой-то версии плагина выше чем 2.0.2101.0 функция VerifyHash не возвращает объект Signers.

thanks 1 пользователь поблагодарил florentii за этот пост.
Анатолий Беляев оставлено 29.03.2017(UTC)
Offline cross  
#3 Оставлено : 29 марта 2017 г. 14:57:40(UTC)
Анатолий Беляев

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

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

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 174 раз в 152 постах
Да, такое поведение появилось в прошлой версии. В качестве обходного пути можно присвоить любое не пустое свойство Content в обьекте SignedData перед вызовом VerifyHash().
Техническую поддержку оказываем тут.
Наша база знаний.
Наша страничка в Instagram.
thanks 1 пользователь поблагодарил Анатолий Беляев за этот пост.
florentii оставлено 29.03.2017(UTC)
Offline florentii  
#4 Оставлено : 29 марта 2017 г. 15:03:33(UTC)
florentii

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

Группы: Участники
Зарегистрирован: 17.04.2015(UTC)
Сообщений: 31
Молдова
Откуда: Тирасполь

Сказал(а) «Спасибо»: 4 раз
Поблагодарили: 2 раз в 2 постах
Спасибо за решение, а можно ли ожидать что эта проблема будет в дальнейшем убрана или решение с присвоением Content останется теперь единственным выходом?
Offline cross  
#5 Оставлено : 29 марта 2017 г. 15:30:55(UTC)
Анатолий Беляев

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

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

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