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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline KuzyXD  
#1 Оставлено : 18 сентября 2020 г. 9:09:29(UTC)
KuzyXD

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

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

Сказал(а) «Спасибо»: 7 раз
Здравствуйте. Однажды мне помогли разобраться на этом форуме с вопросом по плагину. Надеюсь на вашу помощь снова.

Проблема сейчас заключается в том, что я никак не могу успешно установить сертификат через InstallResponse. Привожу код:

Цитата:

return new Promise((resolve, reject) => {
window.cadesplugin.async_spawn(function *(args) {

var PKey = yield window.cadesplugin.CreateObjectAsync("X509Enrollment.CX509PrivateKey");

yield PKey.propset_ProviderName("Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider");
yield PKey.propset_ProviderType(80);
yield PKey.propset_KeySpec(AT_KEYEXCHANGE); // XCN_AT_KEYEXCHANGE

var CertificateRequestPkcs10 = yield window.cadesplugin.CreateObjectAsync("X509Enrollment.CX509CertificateRequestPkcs10");
yield CertificateRequestPkcs10.InitializeFromPrivateKey(1, PKey, "");

var DistinguishedName = yield window.cadesplugin.CreateObjectAsync("X509Enrollment.CX500DistinguishedName");
yield DistinguishedName.Encode("CN=\"TestName\";");
yield CertificateRequestPkcs10.propset_Subject(DistinguishedName);

var KeyUsageExtension = yield window.cadesplugin.CreateObjectAsync("X509Enrollment.CX509ExtensionKeyUsage");

yield KeyUsageExtension.InitializeEncode(CERT_KEY_ENCIPHERMENT_KEY_USAGE|CERT_DATA_ENCIPHERMENT_KEY_USAGE|CERT_DIGITAL_SIGNATURE_KEY_USAGE|CERT_NON_REPUDIATION_KEY_USAGE);

var extensions = yield CertificateRequestPkcs10.X509Extensions;
yield extensions.Add(KeyUsageExtension);

var Enroll = yield window.cadesplugin.CreateObjectAsync("X509Enrollment.CX509Enrollment");
yield Enroll.InitializeFromRequest(CertificateRequestPkcs10);

var certReq = yield Enroll.CreateRequest(1);
console.log(certReq);
console.log(yield Enroll.InstallResponse(0, certReq, 1, ""));
resolve(certReq);
});
});


А всплывают ошибки в таком роде:
Пример ошибки
Online Андрей *  
#2 Оставлено : 18 сентября 2020 г. 9:25:21(UTC)
Андрей *

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

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

Сказал «Спасибо»: 612 раз
Поблагодарили: 2369 раз в 1864 постах
Здравствуйте.

А зачем точка с запятой после значения CN?
Техническую поддержку оказываем тут
Наша база знаний
Offline KuzyXD  
#3 Оставлено : 18 сентября 2020 г. 9:28:30(UTC)
KuzyXD

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

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

Сказал(а) «Спасибо»: 7 раз
Следовал примеру по созданию запроса на выпуск сертификата: http://cpdn.cryptopro.ru...est-for-certificate.html
Offline Ситдиков Денис  
#4 Оставлено : 21 сентября 2020 г. 11:48:58(UTC)
Ситдиков Денис

Статус: Администратор

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 59 раз в 44 постах
Добрый день!
Enroll.CreateRequest создает запрос на сертификат. В дальнейшем его надо отправить в УЦ.
Для этого можно использовать тестовый УЦ.
Для Enroll.InstallResponse аргументом передается ответ из УЦ.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (3)
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.