nodejs学习-问题总结

nodejs

1. Node-RSA

问题:想要实现Node-RSA非对称加密工作:用对方的公钥加密,私钥解密。
解答:

var key = new NodeRSA({ b: pkcsSize });
key.setOptions({ encryptionScheme: 'pkcs1' });//指定加密格式
//生成 公钥私钥,使用 pkcs8标准,pem格式
var publicPem = key.exportKey(pkcsType+'-public-pem');//制定输出格式
var privatePem = key.exportKey(pkcsType + '-private-pem');
//公钥加密
const privateKey = new NodeRSA(privatePem);
privateKey.setOptions({encryptionScheme: 'pkcs1'})
var encryData = key.encrypt('Hello RSA','base64','utf8');
//上面的privateKey私钥就是你生成的私钥。
//私钥解密
var key = new NodeRSA(pridata);
key.setOptions({ encryptionScheme: 'pkcs1' });
var de = key.decrypt(encryData,'utf8')key.decrypt(buffer, [encoding]);
//这里面的中的key 就是你的私钥;
//当然最为非对称加密,必须公私钥匙的生成时,是一对。

你可能感兴趣的:(nodejs,javascript)