perf: aes key 强制最大 16

This commit is contained in:
ibuler
2022-08-05 11:28:38 +08:00
committed by Jiangjie.Bai
parent c4d0462362
commit a8867dee83

View File

@@ -3,17 +3,11 @@ import CryptoJS from 'crypto-js'
import VueCookie from 'vue-cookie'
export function fillKey(key) {
let keySize = 128
// 如果超过 key 16 位, 最大取 32 位,需要更改填充
if (key.length > 16) {
key = key.slice(0, 32)
keySize = keySize * 2
const KeyLength = 16
if (key.length > KeyLength) {
key = key.slice(0, KeyLength)
}
const filledKeyLength = keySize / 8
if (key.length >= filledKeyLength) {
return key.slice(0, filledKeyLength)
}
const filledKey = Buffer.alloc(keySize / 8)
const filledKey = Buffer.alloc(KeyLength)
const keys = Buffer.from(key)
for (let i = 0; i < keys.length; i++) {
filledKey[i] = keys[i]
@@ -54,4 +48,5 @@ export function encryptPassword(password) {
}
window.aesEncrypt = aesEncrypt
window.fillKey = fillKey