分享一下使用jsencrypt进行加密解密

578 阅读1分钟

加密在程序开发中很常见啦,我选择使用jsencrypt加密解密,记录一下,一起成长

下载

npm install jsencrypt --dev 

生成密钥

通过公钥加密,私钥解密,顺序不能乱,反正我试了反过来是不行的,至于如何生成,打开网站web.chacuo.net/netrsakeypa…; 就可以生成,xxx部分就是密钥对了

Snipaste_2024-04-07_15-23-09.png

创建jsencrypt工具

创建encryption.js文件(文件名随意)

//先引入方法
import JSEncrypt from 'jsencrypt/bin/jsencrypt.min'

//设置公钥,网站复制下来的
const key = 'xxxxx'
//设置私钥,网站复制下来的
const decode = 'xxxxx'

//txt  就是传进来需要加密的内容

// 加密方法
export function encrypt (txt) {
  console.log('加密前', txt);
  const encryptor = new JSEncrypt()
  encryptor.setPublicKey(key) // 设置公钥
  return encryptor.encrypt(txt) // 对数据进行加密
}

// 解密方法
export function decrypt (txt) {
  const encryptor = new JSEncrypt()
  encryptor.setPrivateKey(decode) // 设置私钥
  return encryptor.decrypt(txt) // 对数据进行解密
}

使用jsencrypt.js

//引入方法
import { encrypt, decrypt } from '@/utils/encryption'

  console.log('加密后', encrypt('我需要加密这段话'));
  console.log('解密后', decrypt(encrypt('我需要加密这段话')));

最终加密效果

加密后 T0iGQim9yXbz9QJzZPa6WxocerW81hCsgE+FlC7tjaj3easoHi8aAN4et73RaIsrjUGycpINZo0wEBGUYo0vAQ==
vconsole.min.js:10 
解密后 我需要加密这段话