[nodejs]TypeScript 使用crypto 进行公钥rsa加密
一般在前端与后端的交互中,有可能会使用到公钥加密的方法
最近做了一个基于RSA/ECB/PKCS1Padding 的加密过程,
在此将 部分代码进行解释,留着以后没准会用到
使用RSA公钥加密的一般由服务器端使用私钥解密.
首先我们需要一个公钥证书,无论是pem还是 字符串的形式,加载到程序中
在代码中引入 crypto 模块
const crypto = require('crypto');
然后在类中编写一个加密函数
private RSAEncrypt(rsakey:string,hash:string){ let encrypted = crypto.publicEncrypt({key:rsakey, padding:crypto.constants.RSA_PKCS1_PADDING},new Buffer(hash)).toString('base64'); return encrypted; }
注意:
crypto.publicEncrypt()
函数的文档在 https://nodejs.org/docs/latest-v8.x/api/crypto.html#crypto_crypto_publicencrypt_key_buffer
可以通过连接查看
我是用的版本为 nodejs 8.x
使用公钥解密及完整的代码 访问下一篇文章 链接: