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

Уведомление

Icon
Error

23 Страницы«<1314151617>»
Опции
К последнему сообщению К первому непрочитанному
Offline IOFeed  
#141 Оставлено : 4 сентября 2015 г. 11:21:42(UTC)
IOFeed

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

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

Сказал(а) «Спасибо»: 9 раз
Поблагодарили: 6 раз в 5 постах
Обнаружилось ряд проблем...

  • Созданная подпись при помощи NMAPI плагина не проходит проверку средствами ресурса госуслуг (http://www.gosuslugi.ru/pgu/eds/)
    Рассмотрим на конкртеном примере вашей тестовой страницы:

    1. Подписываю текст "test_text_for_test", получаю подпись в BASE64.
    2. Текст и полученную подпись сохраняю в текстовых файлах (файлы file.txt (1kb) загружен 1 раз(а). и sign_nmapi.txt (7kb) загружен 1 раз(а).).
    3. На странице госуслуг выбираю проверуку "— электронного документа. ЭП — отсоединенная, в формате PKCS#7", загружаю файлы указанны выше.
    4. И получаю "ЭП 1: НЕ ВЕРНА":
      UserPostedImage
    5. Аналогичные действия произвожу на NPAPI версии плагина (открыв свою тестовую страницу в Firefox), получаю новую подпись ( sign_npapi_my.txt (7kb) загружен 2 раз(а).) и также проверю - "ЭП 1: ВЕРНА". Что любопытно, на вашей тестовой странице NPAPI также создает не корректную подпись.

  • Корректная, валидная подпись не проходит проверку на NMAPI версии плгина.

    1. На своей тестовой старнице, на NPAPI плагине (Firefox) создаю подпись (тестовый текст такой же - "test_text_for_test"). Проверяю встроеными методами плагина и на ресурсе госуслуг - подпись валидна sign_npapi_my.txt (7kb) загружен 2 раз(а)..
    2. Проверяю на NMAPI плагине и получаю такой результат:
      Цитата:
      The hash value is not correct. (0x80091007)

    3. Проверку делаю так:
      Код:
      
      cadesplugin.async_spawn(function *() { //cadesplugin.async_spawn
      	try {
      		var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
              oSignedData.propset_ContentEncoding = CADESCOM_BASE64_TO_BINARY;
             	oSignedData.propset_Content = dataToVerify;
             	verify = yield oSignedData.VerifyCades(signatureBody, CADESCOM_CADES_BES, true);
             	return success(verify);
      	}
      	catch (ex) {
      		verify.error = "Failed to verify signature. Error: " + GetErrorMessage(ex);
      		return success(verify);
      	}
      });
      


    4. В DebugView вижу такое:
      Цитата:

      [2380] cades.dll: {2384} /CadesVerifyDetachedMessage/ cades.cpp(2808) : (pVerifyPara=0x0012FBCC, dwSignerIndex=0, pbDetachedSignBlob=0x02525F70, cbDetachedSignBlob=4862, cToBeSigned=1, rgpbToBeSigned=0x0012FBE4, rgcbToBeSigned=0x0012FBE8, ppVerificationInfo=0x0012FC18)
      [2380] cades.dll: {2384} /CadesMsgVerifySignatureImpl/ cades.cpp(1746) : Input parameters checked
      [2380] cades.dll: {2384} /CadesMsgVerifySignatureImplNamespace::VerifyMessageSignature/ cades.cpp(1643) : Signature verification started
      [2380] cades.dll: {2384} /CadesMsgVerifySignatureImplNamespace::VerifyMessageSignature/ cades.cpp(1652) : Exception thrown: _hr
      [2380] cades.dll: {2384} /CadesVerifyDetachedMessage/ cades.cpp(2829) : COleException, m_sc=0x80091007
      [2380] cades.dll: {2384} /CadesVerifyDetachedMessage/ cades.cpp(2841) : (res=0, GetLastError=0x80091007
      [2380] cades.dll: {2384} /CadesFreeVerificationInfo/ cades.cpp(2857) : (pVerificationInfo=0x0169BD28)
      [2380] cades.dll: {2384} /CadesFreeVerificationInfo/ cades.cpp(2885) : (res=1, GetLastError=0x80091007

    5. Лог фоновой страницы: backround_log.txt (9kb) загружен 4 раз(а).



    Данные о тестовой среде:

    • Windows XP SP3 x86
    • Версия плагина: 2.0.12235
    • Версия CSP: 3.6.7777
    • Версия Chrome: 45.0.2454.85 m
  • Offline zverx  
    #142 Оставлено : 4 сентября 2015 г. 11:34:39(UTC)
    zverx

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

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

    Сказал(а) «Спасибо»: 1 раз
    у кого-нибудь сейчас работает эта тестовая страница под Chrome (45.0.2454.85 m) ?
    Версия расширения CryptoPro Extension 1.0.12

    Смотрел под отладкой - в chrome-extension://iifchhfnnmpdbibifmljnfjhpififfog/nmcades_plugin_api.js доходит до 138 строчки

    отправка сообщения
    Код:
    window.postMessage( object_messsage, "*");


    и похоже не приходит ответ, чтобы исполнился then у promise объекта (смотреть ниже 138 строчки)

    Код:
    return requestPromise.then(function (result) {
                obj = {};
                obj['objid'] = result.data.value;
                obj.CreateObjectAsync = CallMethod.bind(obj, "CreateObject");
                return obj;
            });
    

    Что бы это было?

    И наверно еще есть смысл добавить в then функцию обработки ошибки...


    PS : Эта же тестовая страница под IE 11 сейчас прекрасно работает - значит cades plugin и CSP работают.
    PPS : проверено на нескольких компьютерах - такое же поведение
    Offline IOFeed  
    #143 Оставлено : 4 сентября 2015 г. 11:40:53(UTC)
    IOFeed

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

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

    Сказал(а) «Спасибо»: 9 раз
    Поблагодарили: 6 раз в 5 постах
    zverx, попробуйте обновить плагин, у меня (2.0.12235) - тестовая страница работает, хотя и создает не валидуню подпись (смотрите выше).
    thanks 1 пользователь поблагодарил IOFeed за этот пост.
    zverx оставлено 04.09.2015(UTC)
    Offline cross  
    #144 Оставлено : 4 сентября 2015 г. 11:46:47(UTC)
    Анатолий Беляев

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

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

    Сказал(а) «Спасибо»: 3 раз
    Поблагодарили: 174 раз в 152 постах
    Автор: IOFeed Перейти к цитате
    Обнаружилось ряд проблем...

    • Созданная подпись при помощи NMAPI плагина не проходит проверку средствами ресурса госуслуг (http://www.gosuslugi.ru/pgu/eds/)
      Рассмотрим на конкртеном примере вашей тестовой страницы:

      1. Подписываю текст "test_text_for_test", получаю подпись в BASE64.
      2. Текст и полученную подпись сохраняю в текстовых файлах (файлы file.txt (1kb) загружен 1 раз(а). и sign_nmapi.txt (7kb) загружен 1 раз(а).).
      3. На странице госуслуг выбираю проверуку "— электронного документа. ЭП — отсоединенная, в формате PKCS#7", загружаю файлы указанны выше.
      4. И получаю "ЭП 1: НЕ ВЕРНА":
        UserPostedImage
      5. Аналогичные действия произвожу на NPAPI версии плагина (открыв свою тестовую страницу в Firefox), получаю новую подпись ( sign_npapi_my.txt (7kb) загружен 2 раз(а).) и также проверю - "ЭП 1: ВЕРНА". Что любопытно, на вашей тестовой странице NPAPI также создает не корректную подпись.

  • Корректная, валидная подпись не проходит проверку на NMAPI версии плгина.

    1. На своей тестовой старнице, на NPAPI плагине (Firefox) создаю подпись (тестовый текст такой же - "test_text_for_test"). Проверяю встроеными методами плагина и на ресурсе госуслуг - подпись валидна sign_npapi_my.txt (7kb) загружен 2 раз(а)..
    2. Проверяю на NMAPI плагине и получаю такой результат:
      Цитата:
      The hash value is not correct. (0x80091007)

    3. Проверку делаю так:
      Код:
      
      cadesplugin.async_spawn(function *() { //cadesplugin.async_spawn
      	try {
      		var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
              oSignedData.propset_ContentEncoding = CADESCOM_BASE64_TO_BINARY;
             	oSignedData.propset_Content = dataToVerify;
             	verify = yield oSignedData.VerifyCades(signatureBody, CADESCOM_CADES_BES, true);
             	return success(verify);
      	}
      	catch (ex) {
      		verify.error = "Failed to verify signature. Error: " + GetErrorMessage(ex);
      		return success(verify);
      	}
      });
      


    4. В DebugView вижу такое:
      Цитата:

      [2380] cades.dll: {2384} /CadesVerifyDetachedMessage/ cades.cpp(2808) : (pVerifyPara=0x0012FBCC, dwSignerIndex=0, pbDetachedSignBlob=0x02525F70, cbDetachedSignBlob=4862, cToBeSigned=1, rgpbToBeSigned=0x0012FBE4, rgcbToBeSigned=0x0012FBE8, ppVerificationInfo=0x0012FC18)
      [2380] cades.dll: {2384} /CadesMsgVerifySignatureImpl/ cades.cpp(1746) : Input parameters checked
      [2380] cades.dll: {2384} /CadesMsgVerifySignatureImplNamespace::VerifyMessageSignature/ cades.cpp(1643) : Signature verification started
      [2380] cades.dll: {2384} /CadesMsgVerifySignatureImplNamespace::VerifyMessageSignature/ cades.cpp(1652) : Exception thrown: _hr
      [2380] cades.dll: {2384} /CadesVerifyDetachedMessage/ cades.cpp(2829) : COleException, m_sc=0x80091007
      [2380] cades.dll: {2384} /CadesVerifyDetachedMessage/ cades.cpp(2841) : (res=0, GetLastError=0x80091007
      [2380] cades.dll: {2384} /CadesFreeVerificationInfo/ cades.cpp(2857) : (pVerificationInfo=0x0169BD28)
      [2380] cades.dll: {2384} /CadesFreeVerificationInfo/ cades.cpp(2885) : (res=1, GetLastError=0x80091007

    5. Лог фоновой страницы: backround_log.txt (9kb) загружен 4 раз(а).



    Данные о тестовой среде:

    • Windows XP SP3 x86
    • Версия плагина: 2.0.12235
    • Версия CSP: 3.6.7777
    • Версия Chrome: 45.0.2454.85 m

  • 1. Текст в демо странице при подписи воспринимается как UCS2 и потом подписывает. Если вы его сохранили просто в файл => подпись не проверится.
    2. Код которым вы проверяете не корректный. propset_* это методы. Их завершения тоже надо ждать. Вы в итоге проверяете detached подпись с нулевым контентом => подпись не верна.
    Техническую поддержку оказываем тут.
    Наша база знаний.
    Наша страничка в Instagram.
    thanks 1 пользователь поблагодарил Анатолий Беляев за этот пост.
    IOFeed оставлено 04.09.2015(UTC)
    Offline paradoxm  
    #145 Оставлено : 4 сентября 2015 г. 11:54:59(UTC)
    paradoxm

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

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

    Сказал «Спасибо»: 1 раз
    Автор: Смирнов Перейти к цитате
    Автор: paradoxm Перейти к цитате
    UserPostedImage

    IE 10 падает

    Опишите подробнее условия возникновения ошибки, т.к. у нас не воспроизводится.


    Условия самые обычные. Установлен самый свежий плагин, на страницу помещен файл cadesplugin_api.js. Заходим в ИЕ 10 на страницу и вот эта ошибка.
    Offline cross  
    #146 Оставлено : 4 сентября 2015 г. 11:55:54(UTC)
    Анатолий Беляев

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

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

    Сказал(а) «Спасибо»: 3 раз
    Поблагодарили: 174 раз в 152 постах
    Автор: paradoxm Перейти к цитате
    Автор: Смирнов Перейти к цитате
    Автор: paradoxm Перейти к цитате
    UserPostedImage

    IE 10 падает

    Опишите подробнее условия возникновения ошибки, т.к. у нас не воспроизводится.


    Условия самые обычные. Установлен самый свежий плагин, на страницу помещен файл cadesplugin_api.js. Заходим в ИЕ 10 на страницу и вот эта ошибка.

    На странице http://www.cryptopro.ru/...ge/cades_bes_sample.html тоже такая ошибка?
    Техническую поддержку оказываем тут.
    Наша база знаний.
    Наша страничка в Instagram.
    Offline cross  
    #147 Оставлено : 4 сентября 2015 г. 11:59:22(UTC)
    Анатолий Беляев

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

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

    Сказал(а) «Спасибо»: 3 раз
    Поблагодарили: 174 раз в 152 постах
    Добавили на страницу http://www.cryptopro.ru/...ge/cades_bes_sample.html
    еще один js файлик который позволяет пользоваться Promise в IE. Библиотека поддержки Promise взята отсюда - https://github.com/jakearchibald/es6-promise.
    Техническую поддержку оказываем тут.
    Наша база знаний.
    Наша страничка в Instagram.
    Offline zverx  
    #148 Оставлено : 4 сентября 2015 г. 13:01:42(UTC)
    zverx

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

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

    Сказал(а) «Спасибо»: 1 раз
    Автор: IOFeed Перейти к цитате
    zverx, попробуйте обновить плагин, у меня (2.0.12235) - тестовая страница работает, хотя и создает не валидуню подпись (смотрите выше).


    Спасибо - помогло

    Подпись у меня в своем проекте кстати валидируется КриптоАрмом и КриптоНет нормально.

    Отредактировано пользователем 4 сентября 2015 г. 13:03:17(UTC)  | Причина: Не указана

    Offline IOFeed  
    #149 Оставлено : 4 сентября 2015 г. 13:33:23(UTC)
    IOFeed

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

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

    Сказал(а) «Спасибо»: 9 раз
    Поблагодарили: 6 раз в 5 постах
    Автор: cross Перейти к цитате

    1. Текст в демо странице при подписи воспринимается как UCS2 и потом подписывает. Если вы его сохранили просто в файл => подпись не проверится.
    2. Код которым вы проверяете не корректный. propset_* это методы. Их завершения тоже надо ждать. Вы в итоге проверяете detached подпись с нулевым контентом => подпись не верна.

    cross, большое спасибо, теперь все работает!
    Offline IOFeed  
    #150 Оставлено : 4 сентября 2015 г. 13:34:22(UTC)
    IOFeed

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

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

    Сказал(а) «Спасибо»: 9 раз
    Поблагодарили: 6 раз в 5 постах
    Автор: zverx Перейти к цитате

    Подпись у меня в своем проекте кстати валидируется КриптоАрмом и КриптоНет нормально.

    Моя ошибка... уже разобрался
    RSS Лента  Atom Лента
    Пользователи, просматривающие эту тему
    Guest
    23 Страницы«<1314151617>»
    Быстрый переход  
    Вы не можете создавать новые темы в этом форуме.
    Вы не можете отвечать в этом форуме.
    Вы не можете удалять Ваши сообщения в этом форуме.
    Вы не можете редактировать Ваши сообщения в этом форуме.
    Вы не можете создавать опросы в этом форуме.
    Вы не можете голосовать в этом форуме.