0


前端js加密库的简单使用——crypto-js、jsrsasign、jsencrypt

个人经验,这三个加密库的组合是最佳解决方案

crypto-js、jsrsasign、jsencrypt

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://blog.csdn.net/qq_41027897/article/details/128501391
版权归原作者 ychunx 所有, 如有侵权,请联系我们删除。

“前端js加密库的简单使用——crypto-js、jsrsasign、jsencrypt”的评论:

还没有评论