2
我正在使用openssl-wrapper,一個nodejs包。很容易定製參數!但是我得到了一個錯誤,我無法讓代碼正常工作。如何在NodeJS中使用openssl-wrapper生成RSA密鑰?
的實現代碼:
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:
我在想什麼?我怎樣才能使它工作?
請幫幫我。非常感謝你 !
只是猜測,但問題是OpenSSL配置文件無法找到。你必須做一些事情,比如'設置OPENSSL_CONF = c:\ OpenSSL-Win32 \ bin \ openssl.cfg'。嘗試搜索[OPENSSL配置文件窗口](http://www.google.com/search?q=OPENSSL+configuration+file+windows+site%3Astackoverflow.com)以查看類似問題 – jww
謝謝,它爲我工作!在NodeJS中,我在調用函數之前設置了一個變量'process.env.OPENSSL_CONF =「c:\ OpenSSL-Win32 \ bin \ openssl.cfg」'。它也很好。 – Vunb