小编Ton*_*nke的帖子

Webcrypto AES-CBC 解密:操作错误 - 由于特定于操作的原因,操作失败

我有以下代码来使用 Javascript Webcrypto-API 解密 AES 加密数据,但它会导致“OperationError”,并显示消息“操作因操作特定原因而失败”:

function loadHexToArrybuffer(hex)
{
	return new Uint8Array(hex.match(/[\da-f]{2}/gi).map(h => parseInt(h, 16)));
}

var iv = loadHexToArrybuffer("47b79d24e3ec47c528abdaed8f3fafde");
var rawKey = loadHexToArrybuffer("8af4d72873e4016cd73a1d5b851e9cb2");
var encryptedData = loadHexToArrybuffer("2bb7a12a7e59f9fa3c3d4ff0eb502cde3187338cc3137af785995b364fc5b3fe9c208f225c7472bb3de55de18a665863f63030d652b870c4610a70bc771e8bc584df7c3bd2ce3fc1940115e556178e740891f7cac450204a4959916ac9c9cd5aedd92cc7e74a7a581a6d47a6c29fb46eee13ffd3f70616844f8e2bb929c60ad9")

async function test()
{
	var algorithm = {name: "AES-CBC", iv: iv};
	var key = await window.crypto.subtle.importKey("raw", rawKey, algorithm, false, ["decrypt"]);

	try
	{
		var decrypted = await window.crypto.subtle.decrypt(algorithm, key, encryptedData);
	}
	catch (e)
	{
		console.log(e); // OperationError: The operation failed for an operation-specific reason
	}
}

test();
Run Code Online (Sandbox Code Playgroud)

有人可以帮我吗?先谢谢了!

javascript webcrypto-api

6
推荐指数
1
解决办法
7199
查看次数

标签 统计

javascript ×1

webcrypto-api ×1