要使用Web Crypto API解密某些内容,您必须首先导入密钥:
const result = crypto.subtle.importKey(
format,
keyData,
algorithm,
extractable,
usages
);
这将返回一个承诺。如果您附加.then(function(importedKey) {})
到它,您将能够使用实际导入的密钥来解密:
const result = crypto.subtle.decrypt(algorithm, key, data);
我的问题是......既然导入的密钥对象已经指定了算法,为什么在尝试进行实际解密时需要重新指定算法?
与此相关,importKey似乎支持 RSASSA-PKCS1-v1_5 作为算法,但解密不支持。如果 decrypt() 不支持 RSASSA-PKCS1-v1_5 那么为什么 importKey?