kuaiying_wx/utils/aes.js
2025-03-04 15:25:38 +08:00

35 lines
1.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 引入加密包(注意存放的路径)
const Crypto = require('./crypto');
// 秘钥,转换成utf8格式字符串用于加密解密一般长度是16位由后端提供
const key = Crypto.enc.Utf8.parse('qw5w6SFE2D1jmxyd')
// 偏移量转换成utf8格式字符串一般长度是16位(由后端提供)
const iv = Crypto.enc.Utf8.parse('345GDFED433223DF')
// 解密使用CBC模式
export function Decrtpt(value) {
// 使用外部包中的AES的解密方法
// value(解密内容)、key(密钥)
let decrypt = Crypto.AES.decrypt(value, key, {
iv, // 偏移量
mode: Crypto.mode.CBC, // 模式(五种加密模式,各有优缺)
padding: Crypto.pad.Pkcs7 // 填充
})
// 转成utf8格式字符串并返回出去
let decryptedStr = decrypt.toString(Crypto.enc.Utf8)
return decryptedStr
}
//加密使用CBC模式
export function Encrypt(value) {
// 使用外部包中的AES的加密方法
// value(加密内容)、key(密钥)
let encrypt = Crypto.AES.encrypt(value, key, {
iv, // 偏移量
mode: Crypto.mode.CBC, // 模式(五种加密模式)
padding: Crypto.pad.Pkcs7 // 填充
})
// 将加密的内容转成字符串返回出去
return encrypt.toString()
}