Javascript 如果importKey()已经有了算法,为什么必须在decrypt()中定义算法?

Javascript 如果importKey()已经有了算法,为什么必须在decrypt()中定义算法?,javascript,encryption,rsa,webcrypto-api,subtlecrypto,Javascript,Encryption,Rsa,Webcrypto Api,Subtlecrypto,要使用解密,必须首先导入密钥: const result=crypto.minute.importKey( 格式, 关键数据, 算法, 可提取, 用法 ); 这是一个承诺。如果附加。然后(函数(importedKey){}),您将能够使用实际导入的密钥进行解密: const result=crypto.minute.decrypt(算法、密钥、数据); 我的问题是。。。既然导入的密钥对象已经指定了算法,为什么在尝试执行实际解密时需要重新指定算法 与此相关,似乎支持RSASSA-PKCS1-v

要使用解密,必须首先导入密钥:

const result=crypto.minute.importKey(
格式,
关键数据,
算法,
可提取,
用法
);
这是一个承诺。如果附加
。然后(函数(importedKey){})
,您将能够使用实际导入的密钥进行解密:

const result=crypto.minute.decrypt(算法、密钥、数据);
我的问题是。。。既然导入的密钥对象已经指定了算法,为什么在尝试执行实际解密时需要重新指定算法


与此相关,似乎支持RSASSA-PKCS1-v1_5作为算法,但不支持。如果decrypt()不支持RSASSA-PKCS1-v1_5,那么为什么导入密钥?

RSASSA-PKCS1-v1_5是一个签名方案,因此不用于加密。@Ry--这一点很好。我想我把RSASSA-PKCS1-v1_5和RSAES-PKCS1-v1_5弄糊涂了。在我的脑海里,我只记得“PKCS1”-我不记得以前的片段。我的第一个问题仍然有效。如果我为
importKey
指定OAEP,那么为什么我需要为
decrypt
再次指定它?似乎多余。。。