Как сгенерировать ключ RSA с помощью openssl-wrapper в NodeJS?

Я использую openssl-обертку, пакет nodejs. Это легко настроить параметры! Но я получил ошибку, я не могу заставить код работать должным образом.

Реализованный код:

Q.fcall(function caKey() {
  var params = {
    des3: true,
    passout: 'pass:1234567890',
    out: key,
    '1024': false
  };
  console.log("caKey", dataFolder, params);
  return openssl.qExec('genrsa', params);
}).then(function debugOutput(data) {
    // onFullfill
    console.log("done", data);
  })
  .catch(function (err) {
    // get err
    console.error(err);
  });

Я получил эту ошибку:

caKey D:/certs-dev { '1024': false,
  des3: true,
  passout: 'pass:1234567890',
  out: 'D:/certs-dev/ca/ca.key' }
Wed, 27 Apr 2016 11:40:24 GMT openssl-wrapper > openssl genrsa -des3 -passout pass:1234567890 -out D:/certs-dev/ca/ca.key 1024
15316:error:02001000:system library:fopen:system library:bss_file.c:175:fopen('','rb')
15316:error:2006D002:BIO routines:BIO_new_file:system lib:bss_file.c:180:
15316:error:0E078002:configuration file routines:DEF_LOAD:system lib:conf_def.c:197:

Что мне не хватает? Как я могу сделать это работает?

Пожалуйста, помогите мне. Большое спасибо!

1 ответ

Решение

Благодаря jww

Следуйте его инструкциям, ошибка устраняется путем настройки переменной среды:

set OPENSSL_CONF=c:\OpenSSL-Win32\bin\openssl.cfg

Или установите переменную среды в приложении NodeJS перед вызовом функции.

process.env.OPENSSL_CONF = "c:\OpenSSL-Win32\bin\openssl.cfg"
Другие вопросы по тегам