nodejs 公私鑰文件加密解密


 
利用 openssl 生成公鑰私鑰
生成公鑰: openssl genrsa -out privateKey.pem 1024
生成私鑰: openssl rsa -in privateKey.pem -pubout -out publicKey.pem
 
const fs = require('fs')
const privateKey = fs.readFileSync(`privateKey.pem`).toString();
const publicKey = fs.readFileSync(`publicKey.pem`).toString();
const crypto = require('crypto');
const data = "eggsy";
//公鑰加密
const encodeData = crypto.publicEncrypt(publicKey, Buffer.from(data)).toString('base64');
console.log("encode: ", encodeData)
//私鑰解密
const decodeData = crypto.privateDecrypt(privateKey, Buffer.from(encodeData.toString('base64'), 'base64'));
console.log("decode: ", decodeData.toString())

console.log('---------------------------------')

//私鑰加密
const encodeData2 = crypto.privateEncrypt(privateKey, Buffer.from(data)).toString('base64');
console.log("encode2: ", encodeData2)
//公鑰解密
const decodeData2 = crypto.publicDecrypt(publicKey, Buffer.from(encodeData2.toString('base64'), 'base64'));
console.log("decode2: ", decodeData2.toString())


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM