浅析Node.js非对称加密方法

前端之家收集整理的这篇文章主要介绍了浅析Node.js非对称加密方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

前言

刚回答了SegmentFault上一个兄弟提的问题《非对称解密出错》。这个属于Node.js在安全上的应用,遇到同样问题的人应该不少,基于回答的问题,这里简单总结下。

非对称加密的理论知识,可以参考笔者前面的文章《NODEJS进阶:CRYPTO模块之理论篇》。

完整的代码可以在 《Nodejs学习笔记》 找到,也欢迎大家关注 程序猿小卡的GitHub。

加密、解密方法

在Node.js中,负责安全的模块是crypto。非对称加密中,公钥加密,私钥解密,加解密对应的API分别如下。

加密函数

解密函数

入门例子

假设有如下utils.js

{ // 注意,第二个参数是Buffer类型 return crypto.publicEncrypt(key,Buffer.from(data)); }; // 解密方法 exports.decrypt = (encrypted,key) => { // 注意,encrypted是Buffer类型 return crypto.privateDecrypt(key,encrypted); };

测试代码app.js:

附上公钥、私钥 keys.js:

猜你在找的Node.js相关文章