使用worker进行加解密,防止主线程卡死

This commit is contained in:
539943419 committed 2024-07-19 17:04:54 +08:00
1 parent 8d08392cad
commit 3c2dc0f183
5 files changed
+144 -75

No files matched your search

+19
View File
@@ -0,0 +1,19 @@
import sm4_worker from '@/worker/sm4?worker'
export default async (key, data) => {
// console.log(key)
// key = aesjs.utils.utf8.toBytes(key)
const encryptedBytes = await new Promise((resolve) => {
const aesWorker = new sm4_worker()
aesWorker.onmessage = (event) => {
resolve(event.data)
}
aesWorker.postMessage({ data, 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)
}