许多人没有意识到最终用户SSL证书只是证书链的一部分。那么就让我们一起来聊聊中间CA和根CA证书吧。SSL(或更准确地说,TLS)是大多数终端用户几乎一无所知的技术。
即使安装了SSL证书的人也对SSL证书之外的事知之甚少,大多数人只是在服务器上安装SSL证书,让他们的网站可以开启HTTPS服务。这就是为什么当你开始提到中间证书CA、根证书CA时,大多数人的目光开始变得呆滞。那么,下面就让我们一起来好好了解吧!
什么是根证书?
根证书,通常称为可信根,是信任SSL/TLS的信任模型的中心。每个浏览器都包含根存储。有些浏览器是自己运行,有些浏览器是使用第三方商店。根存储是安装在设备上的预下载根证书的集合。根证书是无价的,因为使用其私钥签名的任何证书都将被浏览器自动信任。
可信根属于证书颁发机构,即验证和发布SSL证书的组织。
什么是证书链?
首先,我们先了解下,浏览器是如何信任一个网站的SSL证书的,浏览器会查看网站的SSL证书,并执行一个快速过程来验证证书的真实性。证书链是什么呢?要获得SSL证书,您可以通过生成证书签名请求(CSR)和私钥开始。在其最简单的迭代中,您将CSR发送到证书颁发机构,然后它用来自其根的私钥对SSL证书进行签名,并将其发送回来。
当浏览器看到SSL证书时,它看到证书是由一个可信的根签名的(或者更准确地说,是用根的私钥签名的)。因为它信任根,因此,它信任该根下的任何证书。在这个例子中,服务器证书直接链接到根目录。
什么是中级证书?
证书颁发机构不直接从其根源发布服务器证书(最终用户SSL证书)。这是很危险的,因为如果出现任何错误发布或要求撤销每个使用root签名的证书,那么将立即不受信任。
因此,为了自我隔离,CAS通常会发出所谓的中间根。CA用它的私有密钥对中间根进行签名,这使得它可信。然后CA使用中间证书的私钥来签署最终用户SSL证书。这个过程可以执行多次,其中中间根对另一个中间根进行签名,然后CA使用它来对证书进行签名。
根证书与中间证书的区别
数字签名扮演什么角色?
在这种情况下,数字签名有一种数字形式的公证。当根证书对中间证书进行数字签名时,它实质上就是传递信任的作用。因为签名直接来自可信根证书的私钥,所以它是自动信任的。
无论何时向浏览器或设备提供SSL证书,它都会接收证书本身以及与证书相关联的公钥。使用公钥,它解密数字签名并查看它是由谁签署的——什么样的证书签署它。
当浏览器在网站上对最终用户SSL证书进行身份验证时,它使用提供的公钥来解密签名并将一个链接向上移动。它继续重复这个过程——对签名进行解密,并遵循链到对其签名的证书——直到最终到达浏览器信任存储区中的根证书之一。
如果它不能将证书链接回其可信根之一,它将不信任证书。
那么,根CA和中间CA之间的区别是什么?
这其实相当简单。根CA是拥有一个或多个可信根的证书颁发机构。这意味着它们在主要浏览器的信任商店中扎根。中间CAS或子CAS是签发中间根的证书颁发机构。它们在浏览器的信任存储中没有根,而是它们的中间根链接回可信的第三方根。这有时被称为交叉签名。
根证书和中间证书之间的区别,在这里它可能会有点混乱。CAS通过发放中间人,然后与那些人签署证书来增加安全层。这有助于在发生误发布或安全事件时最小化和划分损坏。与其撤消根证书和它通过扩展签名的每个证书,不如只撤消中间件,这只会导致从中间件发出的证书组受到信任。
链式根和单根有什么区别?
这实际上是我们最后一个问题的答案。CA拥有单个根。它可以直接颁发证书,使得部署证书和简化安装更加简单。链式根是子CA用来颁发证书的内容。它是一个中间证书,但是,因为Sub CA没有自己的可信根,所以必须将其链接到具有可信根的第三方CA。
这也带来了不同。这就是为什么:链接根使得安装更加复杂,因为中间根将需要加载到托管证书的每个服务器和应用程序上。链锁的根在他们被束缚的CA的支配下。他们无法控制根部,所以如果根CA破产了,那么后果是很严重的。
我们刚刚描述的——涉及证书授权、证书链和加密签名的信任模型——本质上是PKI或公钥基础设施。了解了它,大家就可以了解企业如何部署私有CA和自签名证书了。与可信CA一起工作,组织生成根证书和私钥(这被称为密钥仪式)。然后,组织将根添加到自己的根存储区,遍及所有的系统和设备。从那时起,组织就可以使用来自其根的私钥自签署的证书,并且它们将在其网络上受到信任。
来源:freebuf.com 2018-10-26 10:31:16 by: Vitrus
请登录后发表评论
注册