以下是使用 Vue3 进行 RSA 加密并设置为 base64 URLEncoding 的示例代码:

// 安装 jsencrypt 库
// npm install jsencrypt --save

import JSEncrypt from 'jsencrypt';

// 加密函数
export function rsaEncrypt(data, publicKey) {
  const encryptor = new JSEncrypt();
  encryptor.setPublicKey(publicKey);
  const encrypted = encryptor.encrypt(data);
  // 将加密后的字符串转为 base64 格式,并使用 URL 编码
  return encodeURIComponent(btoa(encrypted));
}

// 使用方法
const publicKey = '-----BEGIN PUBLIC KEY-----\n' +
  'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDfxoDnYjK+T8rHvJrTxTnQJXgT\n' +
  'vIAsYKs7aRNk6tFyKtSxh9XPaP3qzCk4fNa4oJ4eR+RQYwkwv5KJQKQ1Xc9n9o+j\n' +
  'W5LZ35nJ1Y5Y5Uv+6z+0H9Xf6zgjKZvC6Hm+GZf0MkA7d/9I+DlV8dK9l2aGJ+Ic\n' +
  'sZKpJqV7TxlT0rD8qwIDAQAB\n' +
  '-----END PUBLIC KEY-----';
const data = 'Hello World';
const encryptedData = rsaEncrypt(data, publicKey);
console.log('Encrypted Data:', encryptedData);

在以上示例代码中,JSEncrypt 是一个常用的加密库,用于生成 RSA 密钥对和加密/解密数据。在 rsaEncrypt 函数中,我们首先使用 setPublicKey 方法设置公钥,然后使用 encrypt 方法对数据进行加密。最后,我们将加密后的字符串转为 base64 格式,并使用 encodeURIComponent 函数进行 URL 编码。这样处理后,就可以将加密后的数据安全地传输给后端进行处理了。

vue3 rsa加密 设置 base64 URLEncoding

原文地址: https://www.cveoy.top/t/topic/vzV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录