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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline dimzon541  
#1 Оставлено : 31 августа 2024 г. 16:55:19(UTC)
dimzon541

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

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

1) Заполняю произвольные идентифицирующие сведения (все остальное по умолчанию) тут: http://testgost2012.cryp....ru/certsrv/certrqma.asp
полученный сертификат работает "нормально"

2) пытаюсь создать сертификат с помощью утилиты:
Код:
c:\work\cryptcp.x64.exe -creatrqst -provtype 80  -provname "Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider" -ex -dn "CN=x1,C=RU,S=50 Moscow,L=Moscow,O=TEST LPU,E=a@v.ru" -hashAlg 1.2.643.7.1.1.2.2 -certusage "	1.3.6.1.5.5.7.3.2,1.3.6.1.5.5.7.3.1,1.2.643.100.113.1,1.2.643.100.113.2" -both req-ru-12.req


полученный сертификат не получается использовать, получаю ошибку
Цитата:
Failed to create signature. Error: The certificate is not valid for the requested usage. (0x800B0110)


Код:

            // Создаем подписанное сообщение
            // Такая подпись должна проверяться в КриптоАРМ и cryptcp.exe
            // Создаем объект CAdESCOM.CPSigner
            var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
            yield oSigner.propset_Certificate(oCertificate);
            yield oSigner.propset_CheckCertificate(true);
            yield oSigner.propset_Options(cadesplugin.CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN);

            //var oAuthAttrs = yield oSigner.AuthenticatedAttributes2;

            //var oSigningTimeAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
            //yield oSigningTimeAttr.propset_Name(cadesplugin.CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME);
            //yield oSigningTimeAttr.propset_Value(oTimeNow);
            //yield oAuthAttrs.Add(oSigningTimeAttr);

            //if (typeof(obj.nam) != 'undefined') {
            //    var oDocumentNameAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
            //    yield oDocumentNameAttr.propset_Name(cadesplugin.CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME);
            //    yield oDocumentNameAttr.propset_Value(obj.nam);
            //    yield oAuthAttrs.Add(oDocumentNameAttr);
            //}
            //if (typeof (obj.desc) != 'undefined') {
            //    var oDocumentNameAttr1 = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
            //    yield oDocumentNameAttr1.propset_Name(cadesplugin.CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_DESCRIPTION);
            //    yield oDocumentNameAttr1.propset_Value(obj.desc);
            //    yield oAuthAttrs.Add(oDocumentNameAttr1);
            //}



            // Создаем объект CAdESCOM.CadesSignedData
            var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
            if (typeof (setDisplayData) != 'undefined') {
                //Set display data flag flag for devices like Rutoken PinPad
                yield oSignedData.propset_DisplayData(1);
            }

            var sSignedMessage = "";

            if (typeof (obj.data) != 'undefined') {
                // Данные на подпись ввели
                yield oSignedData.propset_ContentEncoding(cadesplugin.CADESCOM_BASE64_TO_BINARY); //
                yield oSignedData.propset_Content(obj.data);

                // Вычисляем значение подписи
                try {
                    alert(1);
                    sSignedMessage = yield oSignedData.SignCades(oSigner, cadesplugin.CADESCOM_CADES_BES, true);
                    alert(2);
                } catch (err) {
                    signArgs.onerror("Failed to create signature. Error: " + cadesplugin.getLastError(err));
                    return;
                }
                resultArray.push({ id: obj.Id, requestId: obj.requestId, sign: sSignedMessage, data:obj.data});
            } else {



UPD: убрал -ex из командной строки, заработало!

Отредактировано пользователем 31 августа 2024 г. 17:06:35(UTC)  | Причина: Не указана

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