【问题标题】:SSL certificate same as signing certificate? [closed]SSL证书与签名证书相同吗? [关闭]
【发布时间】:2012-03-20 15:24:25
【问题描述】:

代码签名证书是否与 SSL 证书相同?

【问题讨论】:

    标签: ssl-certificate code-signing-certificate


    【解决方案1】:

    没有。当然,SO不会让我只回答“不”,所以我们必须解释一下。

    基本上,代码签名证书会为您提供一个私钥,该私钥可以根据已知权威机构认证的公钥进行验证。您使用该密钥进行数字签名,而另一端可以在您签名时验证您拥有来自可信来源的证书。

    SSL 证书只是一个签名的“文档”,可以验证它来自受信任的来源。你不能用它加密或签名,因为它没有任何你自己的密钥材料;这只是一份签名文件,上面写着“我证明我相信这个人所说的是谁。”

    【讨论】:

    • 对不起,你在这里完全错了。 SSL 证书背后总是有一个私钥。当它在 Web 服务器上使用时,私钥在服务器上,并被 Web 服务器软件(apache、IIS 等)用于加密连接。
    【解决方案2】:

    代码签名证书本质上与 SSL 证书相同。两者都用于对一些数据进行签名,以证明数据(软件包或网页内容)来自证书的“主题”。我能想到的主要区别有两个:

    1. 它们在证书中有不同的“增强密钥使用”OID。代码签名证书只能用于签署一段代码。没有什么可以阻止您使用错误的证书进行签名,但是客户端(例如 Web 浏览器)将检查证书中列出的所有“增强的密钥用法”,如果证书不包含适当的 OID(例如“代码签名”),则拒绝签名.这意味着一个证书可能同时具有“代码签名”和“服务器身份验证”OID,以便它可以用于这两种情况。但出于安全原因,任何人都不应这样做。

    2. SSL 证书一旦过期就会失效。但是代码签名证书得到了一些特殊的处理。例如,如果您在 10 年前购买了一些软件,用于签署它的代码签名证书可能今天已经过期。但结合时间戳服务,可以证明软件包在 10 年前已正确签名。

    【讨论】:

      猜你喜欢
      • 2010-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-03
      • 2023-03-17
      • 2015-05-23
      • 2019-12-11
      • 2012-11-01
      相关资源
      最近更新 更多