我正在使用cryptico来加密和解密数据,但是当一次解密3-4个数据时,cryptico可能需要长达10秒钟的时间并冻结浏览器。有没有使用JavaScript解密RSA数据的更快方法?
答案 0 :(得分:2)
我必须承认cyrto算法不是我的强项。
但是请使用此处的详细信息-> https://github.com/diafygi/webcrypto-examples
我已经敲了一段代码,然后对消息进行解码。
async function test() {
const key = await window.crypto.subtle.generateKey(
{
name: "RSA-OAEP",
modulusLength: 2048, //can be 1024, 2048, or 4096
publicExponent: new Uint8Array([0x01, 0x00, 0x01]),
hash: {name: "SHA-256"},
},
false,
["encrypt", "decrypt"]
);
const data = new TextEncoder().encode("some private message..");
const enc_data = await window.crypto.subtle.encrypt(
{ name: "RSA-OAEP" },
key.publicKey,
data
);
const dec_data = await window.crypto.subtle.decrypt(
{ name: "RSA-OAEP" },
key.privateKey,
enc_data
);
const decoded = new TextDecoder().decode(dec_data);
console.log(decoded);
}
test();