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

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline kad  
#11 Оставлено : 16 июня 2017 г. 16:12:59(UTC)
kad

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

Группы: Участники
Зарегистрирован: 16.06.2017(UTC)
Сообщений: 8
Австралия
Откуда: Мск

Сказал(а) «Спасибо»: 3 раз
Автор: kad Перейти к цитате
После обновление плагина до версии 2.0.12888 у кучи пользователей начались ошибки
Цитата:

Не удалось создать подпись из-за ошибки:The parameter is incorrect. (0x 80070057)


До обновления всё работало как часы. Код JS не менялся с января 2017.

Что такое обновилось в версии 2.0.12888 браузер плагина, что поломало работу подписи?


Похоже после обновления JS код начал падать на строчке

yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);
Offline 4eIIIupKo  
#12 Оставлено : 16 июня 2017 г. 16:16:46(UTC)
4eIIIupKo

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

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

Сказал «Спасибо»: 26 раз
Автор: kad Перейти к цитате
Автор: kad Перейти к цитате
После обновление плагина до версии 2.0.12888 у кучи пользователей начались ошибки
Цитата:

Не удалось создать подпись из-за ошибки:The parameter is incorrect. (0x 80070057)


До обновления всё работало как часы. Код JS не менялся с января 2017.

Что такое обновилось в версии 2.0.12888 браузер плагина, что поломало работу подписи?


Похоже после обновления JS код начал падать на строчке

yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);

попробуй так yield oSignedData.propset_ContentEncoding(1);

Offline kad  
#13 Оставлено : 19 июня 2017 г. 9:44:50(UTC)
kad

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

Группы: Участники
Зарегистрирован: 16.06.2017(UTC)
Сообщений: 8
Австралия
Откуда: Мск

Сказал(а) «Спасибо»: 3 раз
Автор: 4eIIIupKo Перейти к цитате
Автор: kad Перейти к цитате
Автор: kad Перейти к цитате
После обновление плагина до версии 2.0.12888 у кучи пользователей начались ошибки
Цитата:

Не удалось создать подпись из-за ошибки:The parameter is incorrect. (0x 80070057)


Цитата:
До обновления всё работало как часы. Код JS не менялся с января 2017.


Что такое обновилось в версии 2.0.12888 браузер плагина, что поломало работу подписи?


Похоже после обновления JS код начал падать на строчке

yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);

попробуй так yield oSignedData.propset_ContentEncoding(1);



Если убрать
Код:

yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY)


то пропадает ошибка, но одновременно с этим и валидность подписи, т.е. например https://www.gosuslugi.ru/pgu/eds говорит что подпись не верна

если вернуть эту настройку, даже в виде
Код:

yield oSignedData.propset_ContentEncoding(1);


то снова появляется ошибка:

Не удалось создать подпись из-за ошибки:The parameter is incorrect. (0x80070057)

код js как на демо страничке у крипты
Код:


                            function SignCreate_Async(oCertificate, dataToSign) {
                                return new Promise(function(resolve, reject){
                                    cadesplugin.async_spawn(function*(arg) {
                                        try {
                                            var oStore = yield cadesplugin.CreateObjectAsync("CAdESCOM.Store");
                                            yield oStore.Open();
                                        } catch (err) {
                                            alert('Failed to create CAdESCOM.Store: ' + err.number);
                                            return;
                                        }

                                        try {
                                            var errormes = "";
                                            try {
                                                var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
                                            } catch (err) {
                                                errormes = "Failed to create CAdESCOM.CPSigner: " + err.number;
                                                throw errormes;
                                            }

                                            var oSigningTimeAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");

                                            var CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME = 0;
                                            yield oSigningTimeAttr.propset_Name(CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME);
                                            var oTimeNow = new Date();
                                            yield oSigningTimeAttr.propset_Value(oTimeNow);
                                            var attr = yield oSigner.AuthenticatedAttributes2;
                                            yield attr.Add(oSigningTimeAttr);


                                            var oDocumentNameAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
                                            var CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME = 1;
                                            yield oDocumentNameAttr.propset_Name(CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME);
                                            yield oDocumentNameAttr.propset_Value("Document Name");
                                            yield attr.Add(oDocumentNameAttr);

                                            if (oSigner) {
                                                yield oSigner.propset_Certificate(oCertificate);
                                            }
                                            else {
                                                errormes = "Failed to create CAdESCOM.CPSigner";
                                                throw errormes;
                                            }
                                            
                                            var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
                                            var CADES_BES = 1;
                                           
                                            //yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);
                                            yield oSignedData.propset_ContentEncoding(1);
                                            yield oSignedData.propset_Content(dataToSign);
                                            yield oSigner.propset_Options(1); //CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN

                                            var sSignedMessage = "";
                                            try {
                                                sSignedMessage = yield oSignedData.SignCades(oSigner, CADES_BES, DetachedSign);
                                                arg[0](sSignedMessage);
                                            }
                                            catch (err) {
                                                errormes = "Failed to run oSignedData.SignCades: " + GetErrorMessage(err);
                                                throw errormes;
                                            }
                                        }
                                        catch(err)
                                        {
                                            alert("Не удалось создать подпись из-за ошибки:" + GetErrorMessage(err));
                                            $("#SignedData").val(err);

                                            arg[1]("Не удалось создать подпись из-за ошибки:" + GetErrorMessage(err));
                                        }
                                    }, resolve, reject);
                                    }); //cadesplugin.async_spawn
                                }

Offline 4eIIIupKo  
#14 Оставлено : 19 июня 2017 г. 10:18:28(UTC)
4eIIIupKo

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

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

Сказал «Спасибо»: 26 раз
Автор: kad Перейти к цитате
Автор: 4eIIIupKo Перейти к цитате
Автор: kad Перейти к цитате
Автор: kad Перейти к цитате
После обновление плагина до версии 2.0.12888 у кучи пользователей начались ошибки
Цитата:

Не удалось создать подпись из-за ошибки:The parameter is incorrect. (0x 80070057)


Цитата:
До обновления всё работало как часы. Код JS не менялся с января 2017.


Что такое обновилось в версии 2.0.12888 браузер плагина, что поломало работу подписи?


Похоже после обновления JS код начал падать на строчке

yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);

попробуй так yield oSignedData.propset_ContentEncoding(1);



Если убрать
Код:

yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY)


то пропадает ошибка, но одновременно с этим и валидность подписи, т.е. например https://www.gosuslugi.ru/pgu/eds говорит что подпись не верна

если вернуть эту настройку, даже в виде
Код:

yield oSignedData.propset_ContentEncoding(1);


то снова появляется ошибка:

Не удалось создать подпись из-за ошибки:The parameter is incorrect. (0x80070057)

код js как на демо страничке у крипты
Код:


                            function SignCreate_Async(oCertificate, dataToSign) {
                                return new Promise(function(resolve, reject){
                                    cadesplugin.async_spawn(function*(arg) {
                                        try {
                                            var oStore = yield cadesplugin.CreateObjectAsync("CAdESCOM.Store");
                                            yield oStore.Open();
                                        } catch (err) {
                                            alert('Failed to create CAdESCOM.Store: ' + err.number);
                                            return;
                                        }

                                        try {
                                            var errormes = "";
                                            try {
                                                var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
                                            } catch (err) {
                                                errormes = "Failed to create CAdESCOM.CPSigner: " + err.number;
                                                throw errormes;
                                            }

                                            var oSigningTimeAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");

                                            var CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME = 0;
                                            yield oSigningTimeAttr.propset_Name(CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME);
                                            var oTimeNow = new Date();
                                            yield oSigningTimeAttr.propset_Value(oTimeNow);
                                            var attr = yield oSigner.AuthenticatedAttributes2;
                                            yield attr.Add(oSigningTimeAttr);


                                            var oDocumentNameAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
                                            var CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME = 1;
                                            yield oDocumentNameAttr.propset_Name(CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME);
                                            yield oDocumentNameAttr.propset_Value("Document Name");
                                            yield attr.Add(oDocumentNameAttr);

                                            if (oSigner) {
                                                yield oSigner.propset_Certificate(oCertificate);
                                            }
                                            else {
                                                errormes = "Failed to create CAdESCOM.CPSigner";
                                                throw errormes;
                                            }
                                            
                                            var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
                                            var CADES_BES = 1;
                                           
                                            //yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);
                                            yield oSignedData.propset_ContentEncoding(1);
                                            yield oSignedData.propset_Content(dataToSign);
                                            yield oSigner.propset_Options(1); //CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN

                                            var sSignedMessage = "";
                                            try {
                                                sSignedMessage = yield oSignedData.SignCades(oSigner, CADES_BES, DetachedSign);
                                                arg[0](sSignedMessage);
                                            }
                                            catch (err) {
                                                errormes = "Failed to run oSignedData.SignCades: " + GetErrorMessage(err);
                                                throw errormes;
                                            }
                                        }
                                        catch(err)
                                        {
                                            alert("Не удалось создать подпись из-за ошибки:" + GetErrorMessage(err));
                                            $("#SignedData").val(err);

                                            arg[1]("Не удалось создать подпись из-за ошибки:" + GetErrorMessage(err));
                                        }
                                    }, resolve, reject);
                                    }); //cadesplugin.async_spawn
                                }



http://cpdn.cryptopro.ru...es/content-encoding.html
Offline Zloy Strelok  
#15 Оставлено : 19 июня 2017 г. 10:32:09(UTC)
Zloy Strelok

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

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

Сказал «Спасибо»: 51 раз
Поблагодарили: 30 раз в 22 постах
Автор: 4eIIIupKo Перейти к цитате
Автор: Zloy Strelok Перейти к цитате
Автор: cross Перейти к цитате
Содержит.

Я пытаюсь проверить через CPCertificate.IsValid().Result, но при отозванном на ЦС сертификате, все равно выдает true.. Подскажите, пожалуйста, в какую сторону копать?


Код:
var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
		try {
			yield oSignedData.propset_ContentEncoding(1);
			yield oSignedData.propset_Content(dataToVerify);
			yield oSignedData.VerifyCades(sSignedMessage,CADESCOM_CADES_BES,true);

		}catch(err){
			alert("Failed to verify signature. Error: " + cadesplugin.getLastError(err));
			return false;
		}

А есть проверить подпись?

По сути можно просто получить дату действия сертификата до и сравнивать с текущей датой)

//Действителен до
var till = Adjust.GetCertDate(yield args[0].ValidToDate);


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