Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用WebCryptoAPI从浏览器存储访问密钥_Javascript_Security_Internet Explorer_Cryptography - Fatal编程技术网

Javascript 使用WebCryptoAPI从浏览器存储访问密钥

Javascript 使用WebCryptoAPI从浏览器存储访问密钥,javascript,security,internet-explorer,cryptography,Javascript,Security,Internet Explorer,Cryptography,我确实发现IE11支持web加密API。是否可以通过Javascript使用此API访问浏览器存储中的密钥?我找不到任何用于此的接口。不幸的是,这是不可能的。但另一个API()目前正在开发中,其目的是允许访问WebCrypto中的预配置密钥 如工作摘要草案所述: 本规范描述了用于发现命名, 用于的特定于源的预设置加密密钥 Web加密API。预配置密钥是已配置的密钥 通过发电以外的方式提供给UA, Web加密API的派生、导入功能 但是,由于该过程仍处于早期阶段,我认为目前还没有任何浏览器实现此A

我确实发现IE11支持web加密API。是否可以通过Javascript使用此API访问浏览器存储中的密钥?我找不到任何用于此的接口。

不幸的是,这是不可能的。但另一个API()目前正在开发中,其目的是允许访问WebCrypto中的预配置密钥

如工作摘要草案所述:

本规范描述了用于发现命名, 用于的特定于源的预设置加密密钥 Web加密API。预配置密钥是已配置的密钥 通过发电以外的方式提供给UA, Web加密API的派生、导入功能


但是,由于该过程仍处于早期阶段,我认为目前还没有任何浏览器实现此API。

事实并非如此,而且可能永远都不可能实现。浏览器正转向严格执行同源策略安全模型,这将消除可能成为此类解决方案基础的机制


预先设置的“命名密钥”,可能会被支持,正如前面的回答者指出的,但是这对于DRM系统来说是非常有用的,就像Netflix所使用的,而不是像你感兴趣的提供情况一样。

你好马库斯,上面的链接提供C++接口。但是我的查询是在javascript WebCrypto上的,将来,请确保使用适当的标记,并在您的问题中明确说明。谢谢。但是,当你说“不适合你感兴趣的配置案例”时,我没有理解你的意思。我没有提到我感兴趣的任何用例。现在让我来看看用例。根据我从webcrypto文档中了解到的情况,在S/MIME、web表单签名等用例中提到了这一点。但是,当人们无法访问客户端预先存在的密钥和证书时,使用这样的标准有什么意义呢。除此之外,我们鼓励人们将这些密钥存储在加密硬件中。web Crypto没有任何接口来访问这些密钥抱歉,我显然做出了错误的假设。当我和人们谈论这一领域时,我看到的最常见的情况是与智能卡的交互,以及最近keygen的交互,因为它正在消失。在我读到你的问题时,我产生了这种偏见。也就是说,答案仍然是一样的,webcrypto的密钥是绑定在浏览器上的,您不能使用它访问浏览器之外的任何内容,包括存储在操作系统中的智能卡或密钥。至于浏览器绑定密钥的价值,目前拥有客户端证书的人相对较少。这与浏览器安全模型相结合,在浏览器安全模型中,应用程序只能与提供服务的“同一来源”进行交互,因此增加对该情况的支持成为低优先级。您仍然可以实现您提到的所有情况,它们只需要以符合浏览器安全模型的方式来实现。