Статус: Новичок
Группы: Участники
Зарегистрирован: 15.05.2018(UTC) Сообщений: 1
|
есть функция по созданию запроса на сертификат Код:function ReqCreate() {
return new Promise(function(resolve, reject){
cadesplugin.async_spawn(function *(args) {
console.log(cadesplugin);
var objCSP = yield cadesplugin.CreateObjectAsync("X509Enrollment.CCspInformation");
var objCSPs = yield cadesplugin.CreateObjectAsync("X509Enrollment.CCspInformations");
var objPrivateKey = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX509PrivateKey");
var objRequest = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX509CertificateRequestPkcs10")
var objObjectIds = yield cadesplugin.CreateObjectAsync("X509Enrollment.CObjectIds");
var objObjectId = yield cadesplugin.CreateObjectAsync("X509Enrollment.CObjectId");
var objX509ExtensionEnhancedKeyUsage = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX509ExtensionEnhancedKeyUsage");
var objExtensionTemplate = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX509ExtensionTemplate");
var objDn = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX500DistinguishedName");
var objEnroll = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX509Enrollment");
var objExtensionKeyUsage = yield cadesplugin.CreateObjectAsync("X509Enrollment.CX509ExtensionKeyUsage");
yield objCSP.InitializeFromName("Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider");
yield objCSPs.Add(objCSP);
yield objPrivateKey.Length = 512;
yield objPrivateKey.KeySpec = 1;
yield objPrivateKey.ExportPolicy = 1;
yield objPrivateKey.Existing = false;
yield objPrivateKey.CspInformations = objCSPs;
yield objPrivateKey.ProviderName = "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider";
yield objPrivateKey.ProviderType = 75;
yield objRequest.InitializeFromPrivateKey(1, objPrivateKey, "");
yield objObjectId.InitializeFromValue("1.3.6.1.5.5.7.3.2");
yield objObjectIds.Add(objObjectId);
yield objX509ExtensionEnhancedKeyUsage.InitializeEncode(objObjectIds);
var Extensions = yield objRequest.X509Extensions;
yield Extensions.Add(objX509ExtensionEnhancedKeyUsage);
yield objDn.Encode("CN='CommonName'"); // XCN_CERT_NAME_STR_NONE = 0 XCN_CERT_NAME_STR_DISABLE_UTF8_DIR_STR_FLAG = 0x100000
yield objRequest.Subject = objDn;
yield objRequest.SmimeCapabilities = true; //SMIME
yield objExtensionKeyUsage.InitializeEncode(0x80|0x40|0x20|0x10); // Электронная подпись, Неотрекаемость, Шифрование ключей, Шифрование данных (F0)
yield Extensions.Add(objExtensionKeyUsage);
yield objEnroll.InitializeFromRequest(objRequest);
var pkcs10 = yield objEnroll.CreateRequest(3);
alert(pkcs10);
download('out.req', pkcs10); // функция загрузки запроса в виде файла
return pkcs10;
}, resolve, reject);
});
}
запрос создается, но в КриптоПро УЦ 2.0 при создании пользователя из запроса - все поля пустые. Что я делаю не так?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 04.08.2017(UTC) Сообщений: 41 Откуда: Москва Поблагодарили: 3 раз в 3 постах
|
Ответ был предоставлен на портале ТП. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close