-2

如何从 NodeJS 中的 .cer 和 .key 获取 .pfx 文件?

class SAT {
    constructor() {
        this.options = {
            wsdl_options: {
                pfx: {
                    cer: fs.readFileSync(publicKeyPath),
                    key: fs.readFileSync(privateKeyPath)
                }
            },
            passphrase: PASSWORD_PKEY
        }
    }
4

1 回答 1

0

您可以使用 chilkat 库。pfx 库是免费的。加载在https://www.chilkatsoft.com/nodejs.asp找到的相应库:

var os = require('os');
if (os.platform() == 'win32') {  
   var chilkat = require('chilkat_node10_win32'); 
} else if (os.platform() == 'linux') {
   if (os.arch() == 'arm') {
      var chilkat = require('chilkat_node10_arm');
   } else if (os.arch() == 'x86') {
       var chilkat = require('chilkat_node10_linux32');
   } else {
       var chilkat = require('chilkat_node10_linux64');
   }
  } else if (os.platform() == 'darwin') {
     var chilkat = require('chilkat_node10_macosx');
}

使用以下代码生成 Pfx 文件:

var pfx = new chilkat.Pfx();
var privKey = new chilkat.PrivateKey();
var cert = new chilkat.Cert();

cert.LoadFromFile(publicKeyPath);
privKey.LoadPemFile(privateKeyPath, PASSWORD_PKEY);
pfx.AddPrivateKey(privKey,certChain);
pfx.ToFile("pfxPassword","sample.pfx");
于 2018-11-30T22:07:00.510 回答