使用node.js中的公钥加密数据

使用node.js中的公钥加密数据,第1张

使用node.js中的公钥加密数据

没有图书馆必要的朋友,

输入密码

这是一个简单的小模块,可用于使用RSA密钥加密/解密字符串:

var crypto = require("crypto");var path = require("path");var fs = require("fs");var encryptStringWithRsaPublicKey = function(toEncrypt, relativeOrAbsolutePathToPublicKey) {    var absolutePath = path.resolve(relativeOrAbsolutePathToPublicKey);    var publicKey = fs.readFileSync(absolutePath, "utf8");    var buffer = Buffer.from(toEncrypt);    var encrypted = crypto.publicEncrypt(publicKey, buffer);    return encrypted.toString("base64");};var decryptStringWithRsaPrivateKey = function(toDecrypt, relativeOrAbsolutePathtoPrivateKey) {    var absolutePath = path.resolve(relativeOrAbsolutePathtoPrivateKey);    var privateKey = fs.readFileSync(absolutePath, "utf8");    var buffer = Buffer.from(toDecrypt, "base64");    var decrypted = crypto.privateDecrypt(privateKey, buffer);    return decrypted.toString("utf8");};module.exports = {    encryptStringWithRsaPublicKey: encryptStringWithRsaPublicKey,    decryptStringWithRsaPrivateKey: decryptStringWithRsaPrivateKey}

我建议不要在可能的情况下使用同步fs方法,并且可以使用Promises使其变得更好,但是对于简单的用例,这是我见过的方法并且会采用



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5126905.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-17
下一篇2022-11-17

发表评论

登录后才能评论

评论列表(0条)

    保存