修正AES加密字符串中对emoji处理的编码问题

This commit is contained in:
539943419 committed 2024-03-22 22:58:12 +08:00
1 parent ec5fcf1ee7
commit 20e9f4940e
7 files changed
+151 -63

No files matched your search

+7 -2
View File
@@ -48,6 +48,8 @@ const blob2Uint8Array = function(blob) {
};
});
};
const AES = (key,data)=>{
key = aesjs.utils.utf8.toBytes(key);
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
@@ -97,10 +99,13 @@ const encryptString = (key, str, setting) => {
return Base64.encode(str)
}else if(encryptFunction !== "SM4"){
key = aesjs.utils.utf8.toBytes(key);
var data = aesjs.utils.utf8.toBytes(str);
// var data = aesjs.utils.utf8.toBytes(str);
var data = new TextEncoder().encode(str)
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
var encryptedBytes = aesCtr.encrypt(data);
return Base64.encode(encryptedBytes);
var res = Base64.fromUint8Array(encryptedBytes,true);
// console.log(encryptedBytes,res)
return res;
}else{
key = [...aesjs.utils.utf8.toBytes(key.substring(3))];
// console.log(key)