📅  最后修改于: 2023-12-03 14:44:38.175000             🧑  作者: Mango
crypto.publicDecrypt()
是 Node.js 中 crypto
模块提供的一个方法,用于使用公钥加密算法对数据进行解密。它是对称方法 crypto.privateEncrypt()
的逆操作。
该方法可用于解密使用 crypto.privateEncrypt()
方法加密的数据,因此通常在需要进行加密和解密的情况下使用。
crypto.publicDecrypt(publicKey, buffer)
publicKey
:Buffer
类型的公钥。buffer
:Buffer
类型的被加密数据。返回一个 Buffer
类型的解密后的数据。
const crypto = require('crypto');
// 使用指定的公钥对数据进行加密
const publicKey = `-----BEGIN PUBLIC KEY-----
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJK01R7IQxt9Q7gMQxAMf2U5Ka/nM5a0
EBvIdBN7Yz+dZCkzd+UD1MznVMEiTHgWWXAnL05iV/VWD74MZ9JuzNUCAwEAAQ==
-----END PUBLIC KEY-----`;
const data = Buffer.from('Hello, World!');
const encryptedData = crypto.publicEncrypt(publicKey, data);
// 使用私钥对加密后的数据进行解密
const decryptedData = crypto.publicDecrypt(publicKey, encryptedData);
console.log(decryptedData.toString()); // 输出:Hello, World!