From 7a46496203c3dcf24fcfc4f9e82233adb2baf66c Mon Sep 17 00:00:00 2001 From: dwq <15731277156@163.com> Date: Thu, 28 Oct 2021 14:21:13 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=89=8D=E7=AB=AF=E5=BC=80=E5=8F=91?= =?UTF-8?q?=E3=80=91=E9=9A=8F=E6=9C=BA=E5=AF=86=E9=92=A5=E5=8A=A0=E5=AF=86?= =?UTF-8?q?=E8=A7=A3=E5=AF=86--=E5=86=8D=E4=B8=80=E4=BF=AE=E6=94=B9cryptoJ?= =?UTF-8?q?sUtil.js=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/js/utils/cryptoJsUtil.js | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/src/assets/js/utils/cryptoJsUtil.js b/src/assets/js/utils/cryptoJsUtil.js index 0abd15050..c0e940fc8 100644 --- a/src/assets/js/utils/cryptoJsUtil.js +++ b/src/assets/js/utils/cryptoJsUtil.js @@ -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')