个人经验,这三个加密库的组合是最佳解决方案
crypto-js、jsrsasign、jsencrypt文章来源地址https://www.toymoban.com/news/detail-513015.html
crypto-js 进行 AES 对称加密
npm i crypto-js
import CryptoJS from 'crypto-js'
// 加密
var ciphertext = CryptoJS.AES.encrypt('message', 'key').toString();
// 解密
var bytes = CryptoJS.AES.decrypt(ciphertext, 'key');
var originalText = bytes.toString(CryptoJS.enc.Utf8);
console.log(originalText); // 输出 'message'
jsrsasign 生成 RSA 密钥对
npm i jsrsasign
import jsrsasign from 'jsrsasign'
var rsaKeypair = jsrsasign.KEYUTIL.generateKeypair('RSA',1024);
// 获取公钥
let PUBLIC = jsrsasign.KEYUTIL.getPEM(rsaKeypair.prvKeyObj);
// 获取私钥
let PRIVATE = jsrsasign.KEYUTIL.getPEM(rsaKeypair.prvKeyObj,'PKCS8PRV');
jsencrypt 进行 RSA 加解密
npm i jsencrypt
import JSEncrypt from 'jsencrypt'
let PUBLIC = '' // 公钥
let PRIVATE = '' // 密钥
// 加密
const encrypt = new JSEncrypt()
encrypt.setPublicKey(PUBLIC)
let cipher = encrypt.encrypt('message')
console.log(cipher)
// 解密
const decrypt = new JSEncrypt()
decrypt.setPrivateKey(PRIVATE)
console.log(decrypt.decrypt(cipher)) // 输出 'message'
文章来源:https://www.toymoban.com/news/detail-513015.html
到了这里,关于前端js加密库的简单使用——crypto-js、jsrsasign、jsencrypt的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!