js自定义实现rsa加密并指定utf8编码
以下是使用JavaScript自定义实现RSA加密的示例代码:
// 引入Node.js内置的crypto模块
const crypto = require('crypto');
// 定义RSA公钥
const publicKey = `
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEAwJ9pH5s0y0S7Xw7Oe6DeaU3wVYiF3Qc1Tf/7Wl7C/fGq0QZ9ZLg6
fJiP2JQyD+9wQL29b2uJ6XZtE0o1Y7Xc3ZBf2pUny8Dwk6n6wX9m+o6CnMgTtcwA
VQtV1y3Z6KdJkK1WzSf6UO/ndh3R+9jvW8P0A+YRgY1gTf6a4/d6V/iJkrvTHuPi
Z5QWpH2cQMb5j4VUk95B2t5P2K8uYRmNSv9UiKv6R8eR1C9V7Jkqo8/4v34NP3Md
QaUgbw/rQJ2M8VhmhiU8TqT8y5RgM1HrMkxRzvKPM4rRHl4y7G9e4FdVpF9UgvU2
UCB2h+qKQfYn6tSQF3C9L0bVf1A7zNlt7gAMUf8sP1G+YjomR6C2oQIDAQAB
-----END RSA PUBLIC KEY-----
`;
// 定义要加密的明文
const plaintext = 'Hello World!';
// 创建加密器
const encryptor = crypto.createPublicKey({
key: publicKey,
format: 'pem',
type: 'pkcs1'
});
// 加密明文
const encrypted = encryptor.encrypt(plaintext, 'utf8', 'base64');
console.log('加密结果:', encrypted);
注意:
- 以上代码依赖Node.js内置的crypto模块,所以只能在Node.js环境下运行。
- publicKey是RSA公钥,需要根据实际情况替换成自己的公钥。
- plaintext是要加密的明文。
- 加密结果以base64编码输出。
希望对你有所帮助!
原文地址: https://www.cveoy.top/t/topic/jfuJ 著作权归作者所有。请勿转载和采集!