使用Forge访问浏览器证书

时间:2012-04-11 08:07:41

标签: javascript security pki

我们正在开发一个使用PKI的安全应用程序。作为需求的一部分,我们需要构建一个独立于浏览器和平台的应用程序,它支持浏览器和eTokens中的所有类型的证书。我们使用这些证书进行加密和解密。所有与PKI相关的工作都应该在客户端进行。

我找到了一个名为Forge的JavaScript库 https://github.com/digitalbazaar/forge/downloads

代码是什么? a)使用伪造和访问从浏览器获取证书列表 b)获取证书的公开信息 c)获取加密数据的私钥

1 个答案:

答案 0 :(得分:2)

目前,没有用于在浏览器中访问证书的JS API。您通常可以将它们导出到PKCS#12(p12)文件,Forge可以读取。请记住,用户绝对不希望服务器访问其私钥(也可以导出到PKCS#12容器)。

如果您真的需要访问JS中的私钥,并且您无权访问WebCrypto API(大多数浏览器尚未完成),您将不得不以降低的安全性运行。也就是说,服务器将能够访问用户的私钥 - 他们应该知道这些私钥。为此目的应该生成新的密钥对;用户可能在其他地方使用的现有密码不应重复使用。将来,JS应该可以访问使用私钥的加密函数 - 而不会将密钥材料暴露给浏览器(保护它不受服务器影响)。在此之前,如果必须使用JS,唯一的选择是让用户在某种程度上信任服务器。 Forge可用于生成密钥对,创建证书以及创建p12等。