添加chat功能

This commit is contained in:
539943419 committed 2024-03-22 14:35:46 +08:00
1 parent 08e7820f37
commit 127f58bd36
13 files changed
+661 -218

No files matched your search

+15 -5
View File
@@ -21,13 +21,17 @@ const generateKey = function(setting) {
}
}
var returnStr = "",
length = setting.activeFuction === "AES128" ? 16 : 32
length = setting.activeFuction !== "AES256" ? 16 : 32
// charMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
for (var i = 0; i < length; i++) {
var index = Math.round(Math.random() * charMap.length);
var index = parseInt(Math.random() * charMap.length);
returnStr += charMap.substring(index, index + 1);
}
if(setting.activeFuction === "SM4"){
returnStr = 'SM4' + returnStr
}
// console.log(returnStr,returnStr.length)
return returnStr;
};
const blob2Uint8Array = function(blob) {
@@ -61,12 +65,15 @@ const encrypt = (key, data, fileName, setting, message) => {
let encrypted_data = null
if(setting.activeFuction === "不加密"){
encrypted_data = data
// AES
}else if(setting.activeFuction != "SM4"){
message.info(`开始加密${fileName}`);
encrypted_data = AES(key,data)
message.info(`${fileName}加密完成`);
// SM4
}else{
message.info(`开始加密${fileName}`);
key = [...aesjs.utils.utf8.toBytes(key.substring(3))];
encrypted_data = SM4(key,data)
message.info(`${fileName}加密完成`);
}
@@ -76,9 +83,10 @@ const encrypt = (key, data, fileName, setting, message) => {
// setting为pinia存储的setting。。。
const encryptString = (key, str, setting) => {
// console.log(key)
if(setting.activeFuction === "不加密"){
return sm4.encrypt(str, 'miaospringmiaospringmiaospringao')
// console.log(key,key.length)
if(setting.activeFuction === "不加密" || key === ''){
// return sm4.encrypt(str, 'miaospringmiaospringmiaospringao')
return Base64.encode(str)
}else if(setting.activeFuction !== "SM4"){
key = aesjs.utils.utf8.toBytes(key);
var data = aesjs.utils.utf8.toBytes(str);
@@ -86,6 +94,8 @@ const encryptString = (key, str, setting) => {
var encryptedBytes = aesCtr.encrypt(data);
return Base64.encode(encryptedBytes);
}else{
key = [...aesjs.utils.utf8.toBytes(key.substring(3))];
// console.log(key)
return sm4.encrypt(str, key)
}
};