Node-RSA 非对称加密使用
关于非对称加密算法
Node 服务端使用非对称加密算法
- 首先引入
node-rsa
包
1 | npm install node-rsa --save |
- 生成获取私钥和公钥
1 | const key = new NodeRSA({ b: 512 }); |
- 导入私钥和公钥
1 | const key2 = new NodeRSA(); |
- 公钥加密私钥解密 — 用于加解密
1 | const encryptPublic = key.encrypt(data, "base64", "utf8"); |
data
就是需要加密的明文数据,可以是string
,Buffer
,也可以是Array/Object
,Array/Object
首先会自动编码成json
字符串base64
就是需要加密的结果以什么格式显示,这里选择以base64
显示,默认为:bufferutf8
数据源是什么编码格式json
解密之后以什么格式出现,这里选择json
格式
- 私钥加密公钥解密 — 用于签名
1 | const encryptPrivate = key.encryptPrivate(data, "base64", "utf8"); |
data
就是需要加密的明文数据,可以是string
,Buffer
,也可以是Array/Object
,Array/Object
首先会自动编码成json
字符串base64
就是需要加密的结果以什么格式显示,这里选择以base64
显示,默认为:bufferutf8
数据源是什么编码格式json
解密之后以什么格式出现,这里选择json
格式
- 返回结果
1 | ctx.body = { |
如果下面不存在代码块时,请检查网络是否可以访问 github 的 gist ,无法访问 gist 时,可以点击此处访问 bitbucket 的代码块