详解代码签名证书中的根证书和中间证书
根证书和中间证书是信任链或证书路径,它定义了实际代码签名证书和受信任CA之间的关系。下面来详细说说根证书和中间证书。
1、根证书
根证书是位于信任链头部的 X.509 数字证书。据说它是PKI(Public Key Infrastructure)的支柱。
每个设备都包含一个具有可靠CA标志的根存储。除了以前下载的证书外,这个商店还包括他们的公钥。
当浏览器需要确认CA的可靠性时,它们会从它们的根存储中匹配相同的内容。但是,如果 CA 名称与其根存储中提到的名称不同,浏览器将向用户显示错误警告,说明他们正在尝试访问不安全的站点。
根证书是领导者,其他颁发的证书是追随者。因此,如果偶然地,根密钥被泄露,它将成为对证书颁发机构的威胁。因此,这个被破坏的CA将从根存储中删除,更不用说他们签署的证书将全部被取消。
通过将根密钥存储在安全的地方,即硬件安全模块,可以避免此类灾难。该物理计算设备保护数字密钥,该密钥具有加密处理器芯片以防止网络犯罪分子的侵权。与任何其他证书相比,根证书的有效期最长。
2、中间证书
证书颁发机构 (CA) 在颁发代码签名证书时非常谨慎。他们避免通过根直接颁发服务器证书,因为这很危险并且可能会助长欺诈行为。
根很宝贵,因此不建议使用多个根CA。为了屏蔽这些根源并解决这个问题,引入了中间CA。它们通过接管根CA的所有任务来充当额外的安全层。
根CA的密钥不可访问,因此中间证书充当根CA和最后一个证书之间的中介。
当签名(使用私钥)时,中间根由CA发布;他们变得更加可靠。CA的下一步是使用相同的私钥签署端点代码签名证书。最后,将签名后的代码签名证书颁发给相应的站点所有者。
在涉及多个中间证书的情况下,同样的过程会进行多次。在这里,一个中间根签署下一个中间根,所有这些都可以被 CA 用来签署最终的代码签名证书。