小编Sil*_*s M的帖子

https 模块的 node-forge 自签名证书

操作系统:Windows 10
Node.js 版本:node-v8.11.4-win-x64
node-forge 版本:0.7.7-dev

大家,我在尝试创建 Node.js https 服务器时遇到了困难。
服务器背后的想法是它仅适用于本地环回请求。
考虑到这一点并出于隐私考虑,我想到了在每次服务器重新启动时更新的一次性自签名证书。
根据建议,我尝试使用 node-forge 模块来生成一次性证书。

在https://www.npmjs.com/package/node-forge阅读他们的说明,我得到了一个非常简单的代码:

var https = require('https');
var forge = require('node-forge');
    forge.options.usePureJavaScript = true; 

var pki = forge.pki;
var keys = pki.rsa.generateKeyPair(2048);
var cert = pki.createCertificate();

cert.publicKey = keys.publicKey;
cert.serialNumber = '01';
cert.validity.notBefore = new Date();
cert.validity.notAfter = new Date();
cert.validity.notAfter.setFullYear(cert.validity.notBefore.getFullYear()+1);

var attrs = [
     {name:'commonName',value:'example.org'}
    ,{name:'countryName',value:'US'}
    ,{shortName:'ST',value:'Virginia'}
    ,{name:'localityName',value:'Blacksburg'}
    ,{name:'organizationName',value:'Test'}
    ,{shortName:'OU',value:'Test'}
];
cert.setSubject(attrs);
cert.setIssuer(attrs);
cert.sign(keys.privateKey);

var pem_pkey = pki.publicKeyToPem(keys.publicKey);
var pem_cert = pki.certificateToPem(cert);

console.log(pem_pkey);
console.log(pem_cert);

https.createServer( …
Run Code Online (Sandbox Code Playgroud)

self-signed ssl-certificate node.js

5
推荐指数
1
解决办法
4036
查看次数

标签 统计

node.js ×1

self-signed ×1

ssl-certificate ×1