拆分部分文件
This commit is contained in:
1 parent
d5cb96d713
commit
08e7820f37
12 files changed
+448
-210
No files matched your search
@@ -28,11 +28,8 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, onMounted } from "vue";
|
||||
import aesjs from "aes-js";
|
||||
import { Base64 } from "js-base64";
|
||||
import { saveAs } from "file-saver";
|
||||
import { useSettingStore } from "@/pinia/store";
|
||||
import { sm4 } from "sm-crypto";
|
||||
import {decrypt, decryptString, downloadFromUint8Array} from '../func/download'
|
||||
import {NInput,NFlex,NDataTable,NButton} from 'naive-ui'
|
||||
|
||||
var downloadFileID = ref();
|
||||
@@ -46,83 +43,85 @@ var baseUrl =
|
||||
location.protocol + "//" + location.hostname + ":" + serverPort + "/";
|
||||
// console.log(baseUrl);
|
||||
|
||||
const blob2Uint8Array = function(blob) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let reader = new FileReader();
|
||||
reader.readAsArrayBuffer(blob);
|
||||
reader.onload = function() {
|
||||
let buffer = reader.result;
|
||||
let uint8array = new Uint8Array(buffer);
|
||||
resolve(uint8array);
|
||||
};
|
||||
reader.onerror = function() {
|
||||
reject(reader.error);
|
||||
};
|
||||
});
|
||||
};
|
||||
const decrypt = (key, data) => {
|
||||
return blob2Uint8Array(data).then(data => {
|
||||
// 无加密
|
||||
if(key.length === 0){
|
||||
return data
|
||||
}
|
||||
// SM4
|
||||
if (key.length >= 34) {
|
||||
key = key.substring(3);
|
||||
// console.log([...data])
|
||||
var decryptedBytes = new Uint8Array(
|
||||
sm4.decrypt([...data], key, { output: "array" })
|
||||
);
|
||||
return decryptedBytes;
|
||||
} else {
|
||||
// AES
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(
|
||||
key,
|
||||
new aesjs.Counter(5)
|
||||
);
|
||||
var decryptedBytes = aesCtr.decrypt(data);
|
||||
return decryptedBytes;
|
||||
}
|
||||
});
|
||||
};
|
||||
const decryptString = (key, str) => {
|
||||
// 无加密
|
||||
if(key.length === 0){
|
||||
return sm4.decrypt(str, 'miaospringmiaospringmiaospringao');
|
||||
}
|
||||
// SM4
|
||||
// console.log(key,key.length)
|
||||
if (key.length >= 34) {
|
||||
key = key.substring(3);
|
||||
return sm4.decrypt(str, key);
|
||||
}
|
||||
// AES
|
||||
var data = new Uint8Array(
|
||||
Base64.decode(str)
|
||||
.split(",")
|
||||
.map(n => parseInt(n))
|
||||
);
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var decryptedBytes = aesCtr.decrypt(data);
|
||||
var decryptedStr = aesjs.utils.utf8.fromBytes(decryptedBytes);
|
||||
return decryptedStr;
|
||||
};
|
||||
// const blob2Uint8Array = function(blob) {
|
||||
// return new Promise((resolve, reject) => {
|
||||
// let reader = new FileReader();
|
||||
// reader.readAsArrayBuffer(blob);
|
||||
// reader.onload = function() {
|
||||
// let buffer = reader.result;
|
||||
// let uint8array = new Uint8Array(buffer);
|
||||
// resolve(uint8array);
|
||||
// };
|
||||
// reader.onerror = function() {
|
||||
// reject(reader.error);
|
||||
// };
|
||||
// });
|
||||
// };
|
||||
// const decrypt = (key, data) => {
|
||||
// return blob2Uint8Array(data).then(data => {
|
||||
// // 无加密
|
||||
// if(key.length === 0){
|
||||
// return data
|
||||
// }
|
||||
// // SM4
|
||||
// if (key.length >= 34) {
|
||||
// key = key.substring(3);
|
||||
// // console.log([...data])
|
||||
// var decryptedBytes = new Uint8Array(
|
||||
// sm4.decrypt([...data], key, { output: "array" })
|
||||
// );
|
||||
// return decryptedBytes;
|
||||
// } else {
|
||||
// // AES
|
||||
// key = aesjs.utils.utf8.toBytes(key);
|
||||
// var aesCtr = new aesjs.ModeOfOperation.ctr(
|
||||
// key,
|
||||
// new aesjs.Counter(5)
|
||||
// );
|
||||
// var decryptedBytes = aesCtr.decrypt(data);
|
||||
// return decryptedBytes;
|
||||
// }
|
||||
// });
|
||||
// };
|
||||
// const decryptString = (key, str) => {
|
||||
// // 无加密
|
||||
// if(key.length === 0){
|
||||
// return sm4.decrypt(str, 'miaospringmiaospringmiaospringao');
|
||||
// }
|
||||
// // SM4
|
||||
// // console.log(key,key.length)
|
||||
// if (key.length >= 34) {
|
||||
// key = key.substring(3);
|
||||
// return sm4.decrypt(str, key);
|
||||
// }
|
||||
// // AES
|
||||
// var data = new Uint8Array(
|
||||
// Base64.decode(str)
|
||||
// .split(",")
|
||||
// .map(n => parseInt(n))
|
||||
// );
|
||||
// key = aesjs.utils.utf8.toBytes(key);
|
||||
// var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
// var decryptedBytes = aesCtr.decrypt(data);
|
||||
// var decryptedStr = aesjs.utils.utf8.fromBytes(decryptedBytes);
|
||||
// return decryptedStr;
|
||||
// };
|
||||
|
||||
// const downloadFromUint8Array = (data, fileName) => {
|
||||
// let uint8Array = data;
|
||||
// let blob = new Blob([uint8Array], { type: "text/plain" });
|
||||
// // 使用file-saver.js
|
||||
// saveAs(blob, fileName);
|
||||
|
||||
// //let url = URL.createObjectURL(blob);
|
||||
// //let a = document.createElement("a");
|
||||
// //a.href = url;
|
||||
// //a.download = fileName;
|
||||
// //a.click();
|
||||
// //URL.revokeObjectURL(url);
|
||||
// };
|
||||
|
||||
const downloadFromUint8Array = (data, fileName) => {
|
||||
let uint8Array = data;
|
||||
let blob = new Blob([uint8Array], { type: "text/plain" });
|
||||
// 使用file-saver.js
|
||||
saveAs(blob, fileName);
|
||||
|
||||
//let url = URL.createObjectURL(blob);
|
||||
//let a = document.createElement("a");
|
||||
//a.href = url;
|
||||
//a.download = fileName;
|
||||
//a.click();
|
||||
//URL.revokeObjectURL(url);
|
||||
};
|
||||
// 刷新展示的下载进度
|
||||
const updateDownloadQuene = (code, key, value) => {
|
||||
for (let index in downloadQuene.value) {
|
||||
|
||||
@@ -37,52 +37,50 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, onMounted } from "vue";
|
||||
import aesjs from "aes-js";
|
||||
import { Base64 } from "js-base64";
|
||||
// import aesjs from "aes-js";
|
||||
// import { Base64 } from "js-base64";
|
||||
import { useMessage, useNotification } from "naive-ui";
|
||||
import useClipboard from "vue-clipboard3";
|
||||
import { useSettingStore } from "@/pinia/store";
|
||||
import { sm4 } from 'sm-crypto'
|
||||
// import { sm4 } from 'sm-crypto'
|
||||
import {NUpload,NUploadDragger,NText,NP,NFlex,NDataTable,NButton,NInputNumber} from 'naive-ui'
|
||||
import {encrypt,encryptString,generateKey} from '../func/upload'
|
||||
|
||||
const setting = useSettingStore();
|
||||
const { toClipboard } = useClipboard();
|
||||
const message = useMessage();
|
||||
const notification = useNotification();
|
||||
|
||||
// 目前使用加密
|
||||
const activeFuction = setting.activeFuction;
|
||||
// 启用的密钥组成
|
||||
const activeKeyButtons = setting.activeKeyMap;
|
||||
|
||||
// 服务端端口
|
||||
const serverPort = setting.serverPort;
|
||||
|
||||
// console.log(activeFuction,activeKeyButtons)
|
||||
var charMap = ""
|
||||
for(let i of setting.activeKeyMap){
|
||||
if(i === 'A-Z'){
|
||||
charMap = charMap + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
||||
}else if(i === "a-z"){
|
||||
charMap = charMap + 'abcdefghijklmnopqrstuvwxyz'
|
||||
}else if(i === '0-9'){
|
||||
charMap = charMap + '0123456789'
|
||||
}
|
||||
}
|
||||
// 生成密钥
|
||||
const generateKey = function() {
|
||||
if(setting.activeFuction === "不加密"){
|
||||
return ''
|
||||
}
|
||||
var returnStr = "",
|
||||
length = setting.activeFuction === "AES128" ? 16 : 32
|
||||
// charMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||
// var charMap = ""
|
||||
// for(let i of setting.activeKeyMap){
|
||||
// if(i === 'A-Z'){
|
||||
// charMap = charMap + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
||||
// }else if(i === "a-z"){
|
||||
// charMap = charMap + 'abcdefghijklmnopqrstuvwxyz'
|
||||
// }else if(i === '0-9'){
|
||||
// charMap = charMap + '0123456789'
|
||||
// }
|
||||
// }
|
||||
// // 生成密钥
|
||||
// const generateKey = function() {
|
||||
// if(setting.activeFuction === "不加密"){
|
||||
// return ''
|
||||
// }
|
||||
// var returnStr = "",
|
||||
// length = setting.activeFuction === "AES128" ? 16 : 32
|
||||
// // charMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||
|
||||
for (var i = 0; i < length; i++) {
|
||||
var index = Math.round(Math.random() * charMap.length);
|
||||
returnStr += charMap.substring(index, index + 1);
|
||||
}
|
||||
return returnStr;
|
||||
};
|
||||
// for (var i = 0; i < length; i++) {
|
||||
// var index = Math.round(Math.random() * charMap.length);
|
||||
// returnStr += charMap.substring(index, index + 1);
|
||||
// }
|
||||
// return returnStr;
|
||||
// };
|
||||
|
||||
// 上传文件用
|
||||
const uploadRef = ref(null);
|
||||
@@ -99,69 +97,68 @@ const baseUrl =
|
||||
location.protocol + "//" + location.hostname + ":" + serverPort + "/";
|
||||
|
||||
|
||||
const blob2Uint8Array = function(blob) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let reader = new FileReader();
|
||||
reader.readAsArrayBuffer(blob);
|
||||
reader.onload = function() {
|
||||
let buffer = reader.result;
|
||||
let uint8array = new Uint8Array(buffer);
|
||||
resolve(uint8array);
|
||||
};
|
||||
reader.onerror = function() {
|
||||
reject(reader.error);
|
||||
};
|
||||
});
|
||||
};
|
||||
// 包含AES128和AES256
|
||||
const AES = (key,data)=>{
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var encryptedBytes = aesCtr.encrypt(data);
|
||||
return encryptedBytes;
|
||||
}
|
||||
const SM4 = (key,data)=>{
|
||||
// console.log(key)
|
||||
var encryptedBytes = sm4.encrypt(data,key,{padding: 'pkcs#7',output:'array'});
|
||||
// console.log(encryptedBytes, sm4.decrypt(encryptedBytes, key,{output:'array'}))
|
||||
return new Uint8Array(encryptedBytes);
|
||||
}
|
||||
const encrypt = (key, data, fileName) => {
|
||||
return blob2Uint8Array(data).then(data => {
|
||||
let encrypted_data = null
|
||||
if(setting.activeFuction === "不加密"){
|
||||
encrypted_data = data
|
||||
}else if(setting.activeFuction != "SM4"){
|
||||
message.info(`开始加密${fileName}`);
|
||||
encrypted_data = AES(key,data)
|
||||
message.info(`${fileName}加密完成`);
|
||||
}else{
|
||||
message.info(`开始加密${fileName}`);
|
||||
encrypted_data = SM4(key,data)
|
||||
message.info(`${fileName}加密完成`);
|
||||
}
|
||||
return encrypted_data
|
||||
});
|
||||
};
|
||||
const encryptString = (key, str) => {
|
||||
// console.log(key)
|
||||
if(setting.activeFuction === "不加密"){
|
||||
return sm4.encrypt(str, 'miaospringmiaospringmiaospringao')
|
||||
}else if(setting.activeFuction !== "SM4"){
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var data = aesjs.utils.utf8.toBytes(str);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var encryptedBytes = aesCtr.encrypt(data);
|
||||
return Base64.encode(encryptedBytes);
|
||||
}else{
|
||||
return sm4.encrypt(str, key)
|
||||
}
|
||||
};
|
||||
// const blob2Uint8Array = function(blob) {
|
||||
// return new Promise((resolve, reject) => {
|
||||
// let reader = new FileReader();
|
||||
// reader.readAsArrayBuffer(blob);
|
||||
// reader.onload = function() {
|
||||
// let buffer = reader.result;
|
||||
// let uint8array = new Uint8Array(buffer);
|
||||
// resolve(uint8array);
|
||||
// };
|
||||
// reader.onerror = function() {
|
||||
// reject(reader.error);
|
||||
// };
|
||||
// });
|
||||
// };
|
||||
// // 包含AES128和AES256
|
||||
// const AES = (key,data)=>{
|
||||
// key = aesjs.utils.utf8.toBytes(key);
|
||||
// var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
// var encryptedBytes = aesCtr.encrypt(data);
|
||||
// return encryptedBytes;
|
||||
// }
|
||||
// const SM4 = (key,data)=>{
|
||||
// // console.log(key)
|
||||
// var encryptedBytes = sm4.encrypt(data,key,{padding: 'pkcs#7',output:'array'});
|
||||
// // console.log(encryptedBytes, sm4.decrypt(encryptedBytes, key,{output:'array'}))
|
||||
// return new Uint8Array(encryptedBytes);
|
||||
// }
|
||||
// const encrypt = (key, data, fileName) => {
|
||||
// return blob2Uint8Array(data).then(data => {
|
||||
// let encrypted_data = null
|
||||
// if(setting.activeFuction === "不加密"){
|
||||
// encrypted_data = data
|
||||
// }else if(setting.activeFuction != "SM4"){
|
||||
// message.info(`开始加密${fileName}`);
|
||||
// encrypted_data = AES(key,data)
|
||||
// message.info(`${fileName}加密完成`);
|
||||
// }else{
|
||||
// message.info(`开始加密${fileName}`);
|
||||
// encrypted_data = SM4(key,data)
|
||||
// message.info(`${fileName}加密完成`);
|
||||
// }
|
||||
// return encrypted_data
|
||||
// });
|
||||
// };
|
||||
// const encryptString = (key, str) => {
|
||||
// // console.log(key)
|
||||
// if(setting.activeFuction === "不加密"){
|
||||
// return sm4.encrypt(str, 'miaospringmiaospringmiaospringao')
|
||||
// }else if(setting.activeFuction !== "SM4"){
|
||||
// key = aesjs.utils.utf8.toBytes(key);
|
||||
// var data = aesjs.utils.utf8.toBytes(str);
|
||||
// var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
// var encryptedBytes = aesCtr.encrypt(data);
|
||||
// return Base64.encode(encryptedBytes);
|
||||
// }else{
|
||||
// return sm4.encrypt(str, key)
|
||||
// }
|
||||
// };
|
||||
|
||||
const clickUpload = function(){
|
||||
// for(let i of uploadRef.value)console.log(i)
|
||||
// console.log(uploadRef.value)
|
||||
message.info(`开始上传`);
|
||||
uploadRef.value.submit();
|
||||
}
|
||||
|
||||
@@ -184,13 +181,13 @@ const customRequest = ({
|
||||
onError,
|
||||
onProgress
|
||||
}) => {
|
||||
// console.log(file);
|
||||
file = file.file;
|
||||
var fileName = file.name;
|
||||
const key = generateKey();
|
||||
const encryptedFileName = encryptString(key, fileName);
|
||||
const key = generateKey(setting);
|
||||
const encryptedFileName = encryptString(key, fileName, setting);
|
||||
var f = new Blob([file]);
|
||||
encrypt(key, f, fileName).then(data => {
|
||||
encrypt(key, f, fileName, setting, message).then(data => {
|
||||
message.info(`开始上传${fileName}`);
|
||||
const params = {
|
||||
fileName: encryptedFileName,
|
||||
downloadCredit:downloadCredit.value == null ? -1 : downloadCredit.value
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
import aesjs from "aes-js";
|
||||
import { Base64 } from "js-base64";
|
||||
import { saveAs } from "file-saver";
|
||||
import { sm4 } from "sm-crypto";
|
||||
|
||||
const blob2Uint8Array = function (blob) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let reader = new FileReader();
|
||||
reader.readAsArrayBuffer(blob);
|
||||
reader.onload = function () {
|
||||
let buffer = reader.result;
|
||||
let uint8array = new Uint8Array(buffer);
|
||||
resolve(uint8array);
|
||||
};
|
||||
reader.onerror = function () {
|
||||
reject(reader.error);
|
||||
};
|
||||
});
|
||||
};
|
||||
const decrypt = (key, data) => {
|
||||
return blob2Uint8Array(data).then(data => {
|
||||
// 无加密
|
||||
if (key.length === 0) {
|
||||
return data;
|
||||
}
|
||||
// SM4
|
||||
if (key.length >= 34) {
|
||||
key = key.substring(3);
|
||||
// console.log([...data])
|
||||
var decryptedBytes = new Uint8Array(sm4.decrypt([...data], key, { output: "array" }));
|
||||
return decryptedBytes;
|
||||
} else {
|
||||
// AES
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var decryptedBytes = aesCtr.decrypt(data);
|
||||
return decryptedBytes;
|
||||
}
|
||||
});
|
||||
};
|
||||
const decryptString = (key, str) => {
|
||||
// 无加密
|
||||
if (key.length === 0) {
|
||||
return sm4.decrypt(str, "miaospringmiaospringmiaospringao");
|
||||
}
|
||||
// SM4
|
||||
// console.log(key,key.length)
|
||||
if (key.length >= 34) {
|
||||
key = key.substring(3);
|
||||
return sm4.decrypt(str, key);
|
||||
}
|
||||
// AES
|
||||
var data = new Uint8Array(
|
||||
Base64.decode(str)
|
||||
.split(",")
|
||||
.map(n => parseInt(n))
|
||||
);
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var decryptedBytes = aesCtr.decrypt(data);
|
||||
var decryptedStr = aesjs.utils.utf8.fromBytes(decryptedBytes);
|
||||
return decryptedStr;
|
||||
};
|
||||
|
||||
const downloadFromUint8Array = (data, fileName) => {
|
||||
let uint8Array = data;
|
||||
let blob = new Blob([uint8Array], { type: "text/plain" });
|
||||
// 使用file-saver.js
|
||||
saveAs(blob, fileName);
|
||||
|
||||
//let url = URL.createObjectURL(blob);
|
||||
//let a = document.createElement("a");
|
||||
//a.href = url;
|
||||
//a.download = fileName;
|
||||
//a.click();
|
||||
//URL.revokeObjectURL(url);
|
||||
};
|
||||
|
||||
export { blob2Uint8Array, decrypt, decryptString, downloadFromUint8Array };
|
||||
@@ -0,0 +1,93 @@
|
||||
import aesjs from "aes-js";
|
||||
import { Base64 } from "js-base64";
|
||||
import { sm4 } from 'sm-crypto'
|
||||
|
||||
// const setting = useSettingStore();
|
||||
// const message = useMessage();
|
||||
|
||||
// 生成密钥
|
||||
const generateKey = function(setting) {
|
||||
if(setting.activeFuction === "不加密"){
|
||||
return ''
|
||||
}
|
||||
var charMap = ""
|
||||
for(let i of setting.activeKeyMap){
|
||||
if(i === 'A-Z'){
|
||||
charMap = charMap + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
||||
}else if(i === "a-z"){
|
||||
charMap = charMap + 'abcdefghijklmnopqrstuvwxyz'
|
||||
}else if(i === '0-9'){
|
||||
charMap = charMap + '0123456789'
|
||||
}
|
||||
}
|
||||
var returnStr = "",
|
||||
length = setting.activeFuction === "AES128" ? 16 : 32
|
||||
// charMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||
|
||||
for (var i = 0; i < length; i++) {
|
||||
var index = Math.round(Math.random() * charMap.length);
|
||||
returnStr += charMap.substring(index, index + 1);
|
||||
}
|
||||
return returnStr;
|
||||
};
|
||||
const blob2Uint8Array = function(blob) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let reader = new FileReader();
|
||||
reader.readAsArrayBuffer(blob);
|
||||
reader.onload = function() {
|
||||
let buffer = reader.result;
|
||||
let uint8array = new Uint8Array(buffer);
|
||||
resolve(uint8array);
|
||||
};
|
||||
reader.onerror = function() {
|
||||
reject(reader.error);
|
||||
};
|
||||
});
|
||||
};
|
||||
const AES = (key,data)=>{
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var encryptedBytes = aesCtr.encrypt(data);
|
||||
return encryptedBytes;
|
||||
}
|
||||
const SM4 = (key,data)=>{
|
||||
// console.log(key)
|
||||
var encryptedBytes = sm4.encrypt(data,key,{padding: 'pkcs#7',output:'array'});
|
||||
// console.log(encryptedBytes, sm4.decrypt(encryptedBytes, key,{output:'array'}))
|
||||
return new Uint8Array(encryptedBytes);
|
||||
}
|
||||
const encrypt = (key, data, fileName, setting, message) => {
|
||||
return blob2Uint8Array(data).then(data => {
|
||||
let encrypted_data = null
|
||||
if(setting.activeFuction === "不加密"){
|
||||
encrypted_data = data
|
||||
}else if(setting.activeFuction != "SM4"){
|
||||
message.info(`开始加密${fileName}`);
|
||||
encrypted_data = AES(key,data)
|
||||
message.info(`${fileName}加密完成`);
|
||||
}else{
|
||||
message.info(`开始加密${fileName}`);
|
||||
encrypted_data = SM4(key,data)
|
||||
message.info(`${fileName}加密完成`);
|
||||
}
|
||||
return encrypted_data
|
||||
});
|
||||
};
|
||||
|
||||
// setting为pinia存储的setting。。。
|
||||
const encryptString = (key, str, setting) => {
|
||||
// console.log(key)
|
||||
if(setting.activeFuction === "不加密"){
|
||||
return sm4.encrypt(str, 'miaospringmiaospringmiaospringao')
|
||||
}else if(setting.activeFuction !== "SM4"){
|
||||
key = aesjs.utils.utf8.toBytes(key);
|
||||
var data = aesjs.utils.utf8.toBytes(str);
|
||||
var aesCtr = new aesjs.ModeOfOperation.ctr(key, new aesjs.Counter(5));
|
||||
var encryptedBytes = aesCtr.encrypt(data);
|
||||
return Base64.encode(encryptedBytes);
|
||||
}else{
|
||||
return sm4.encrypt(str, key)
|
||||
}
|
||||
};
|
||||
|
||||
export {encrypt,encryptString,generateKey}
|
||||
+2
-1
@@ -1,4 +1,5 @@
|
||||
import { defineStore } from "pinia";
|
||||
import config from "../../miaoShareConfig.json"
|
||||
|
||||
|
||||
var activeFuctionLocal = localStorage.getItem('activeFuction')
|
||||
@@ -17,7 +18,7 @@ export const useSettingStore = defineStore("setting", {
|
||||
state: () => ({
|
||||
activeFuction: activeFuctionLocal,
|
||||
activeKeyMap:JSON.parse(activeKeyMap),
|
||||
serverPort:"17058"
|
||||
serverPort:config.PORT
|
||||
}),
|
||||
getters: {
|
||||
// double: state => state.count * 2
|
||||
|
||||
Reference in new issue
Block a user