javascript - 使用 JavaScript/OpenSSL 提取 SSL 证书的详细信息

标签 javascript ssl firefox-addon openssl

我正在构建一个 Firefox 附加组件,它需要提取收到的 SSL 证书的详细信息,例如 CA 的名称, CA(证书颁发机构)所在的国家/地区。我想知道是否可以使用 JavaScript 提取上述详细信息,或者我是否需要使用 OpenSSL从而将两者联系起来?

有没有更好的解决方案?

最佳答案

Firefox 中的“页面信息”对话框已经显示了证书信息,因此最好查看 how it is implemented .总结:

代码示例:

var status = gBrowser.securityUI
                     .QueryInterface(Components.interfaces.nsISSLStatusProvider)
                     .SSLStatus;
if (status && !status.isUntrusted)
{
  // This shows: OU=Equifax Secure Certificate Authority,O=Equifax,C=US
  alert(status.serverCert.issuerName);

  // This shows: Equifax Secure Certificate Authority
  alert(status.serverCert.issuerOrganizationUnit);
}

请注意,该界面不提供提取发行人国家/地区的方法,您必须解析 status.serverCert.issuerName重视自己。此外,您只能通过这种方式获得有关直接颁发者的信息,而不是根 CA。要获得根 CA,您应该使用 status.serverCert.issuer属性(property)并走上链。

关于javascript - 使用 JavaScript/OpenSSL 提取 SSL 证书的详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8024197/

相关文章:

javascript - 如何去掉url中的id

javascript - 使用 Angularjs 进行文本打印时出现延迟

java - 如何将指纹添加到 keystore

javascript - 使用 Firefox Addon SDK 检索插件版本

JavaScript:如果定义了参数,函数将搜索参数在数组中出现位置的索引

javascript - 是否可以从 "GET"请求中检索 MS/延迟? (Javascript/Jquery)

javascript - 使用 firefox 扩展创建通知系统

firefox - 如何禁用 Firefox 加载项在启动时进行更新检查

python - 带有 SSL "Connection reset by peer"错误的 MQTT

ssl - 由于未知授权机构签署的证书,Chaincode 容器无法连接到本地对等方