【前端开发】随机密钥加密解密--再一修改cryptoJsUtil.js脚本

This commit is contained in:
dwq
2021-10-28 14:21:13 +08:00
committed by liyuetong
parent f8fd4804c3
commit 7a46496203

View File

@@ -1,6 +1,6 @@
/**
* @author
* @Date create in 2021/10/28
* @author 李想
* @Date create in 2021/03/16
*/
import { JSEncrypt } from 'jsencrypt'
let CryptoJS = require('crypto-js')
@@ -51,6 +51,29 @@ export let AESDecrypt = function(encrypted, key) {
return decrypted.toString(CryptoJS.enc.Utf8)
}
export let AESCacheEncrypt = function(data, keys) {
//加密 緩存
var key = CryptoJS.enc.Hex.parse(keys)
var iv = CryptoJS.enc.Utf8.parse('0123456789ABCDEF') //偏移量
var encrypted = CryptoJS.AES.encrypt(data, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
})
return encrypted.toString()
}
export let AESCacheDecrypt = function(encrypted, keys) {
//解密 緩存
var key = CryptoJS.enc.Hex.parse(keys)
var iv = CryptoJS.enc.Utf8.parse('0123456789ABCDEF')
var decrypted = CryptoJS.AES.decrypt(encrypted, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
})
return CryptoJS.enc.Utf8.stringify(decrypted)
}
function format(base64, isPrivate = 0) {
var text = '-----BEGIN ' + (isPrivate ? 'PRIVATE' : 'PUBLIC') + ' KEY-----\n'
text += base64.replace(/[^\x00-\xff]/g, '$&\x01').replace(/.{64}\x01?/g, '$&\n')