JavaScript - 从USB令牌获取密钥/证书

4

我想问一下,是否仍然不可能使用JavaScript从USB令牌存储在浏览器中的证书中获取密钥。我读了很多文章,说WebCryptoApi无法实现这个功能。

有没有任何选项可以从令牌中获取密钥?也许有些东西已经改变了吗?


请参考此SO Answer中免费的Signer.Digital浏览器扩展程序的完整文档,以进行浏览器签名、加密/解密或证书下载。 - Bharat Vasant
2个回答

4
目前还不可能。WebCryptoApi 不支持使用存储在外部密钥库(如智能卡、Mozilla 密钥库或 Windows KeyStore(由 Chrome 和 Explorer 使用))中的密钥,并且根据最近会议的评论,这不是当前的重点。

还有另一个 W3C 的 Javascript API 规范可与 Web Cryptography Api 一起使用。请参见WebCrypto Key Discovery

本说明描述了一种用于发现命名、特定于来源的预配置加密密钥的 JavaScript API,以便与 Web Cryptography API 一起使用。

不幸的是,它仍然是一个正在开发中的工作组。


我了解过WebCrypto密钥发现,但是它还没有准备好使用。也许有其他方法来实现目标? - macieg_b
甚至连发布候选版都没有。恐怕兴趣不够。 - pedrofb
没有它,基于JS的浏览器加密就无法进行。 - Maarten Bodewes
我使用过一些会计公司和政府税务服务的网络应用程序,它们都使用令牌证书来进行身份验证和签署文件。如果没有WebCrypto密钥发现,它们是如何实现这一点的? - Allan Veloso
2
@AllanVeloso,使用双向SSL认证,可以通过USB令牌在浏览器中进行身份验证。如果SSL连接需要证书,则浏览器会提示用户输入证书。要签署文档,最常见的解决方法是在计算机上安装本地软件,并通过HTTP或WebSocket连接从JavaScript中使用它。 - pedrofb

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接