传输层安全性协定 TLS(Transport Layer Security),及其前身安全套接层 SSL(Secure Sockets Layer)是一种安全协议,目的是为网际网路通讯,提供安全及数据完整性保障。html
如图,TLS 在创建链接时是须要git
而这一流程 服务端的证书 是是相当重要的。算法
证书用来证实公钥拥有者身份的凭证安全
首先咱们须要知道 证书是怎么来的。服务器
数字证书通常由数字证书认证机构签发,须要微信
证书包含了dom
证书的格式和验证方法广泛遵循 X.509 国际标准。加密
数字证书认证机构(英语:Certificate Authority,缩写为CA),也称为电子商务认证中心、电子商务认证受权机构,是负责发放和管理数字证书的权威机构,并做为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。操作系统
其实任何个体/组织均可以成为CA(自签证书),可是你发发布的证书客户端是不信任的,也是就前文说起的须要权威。好比 Symantec、Comodo、Godaddy、Digicert。cdn
客户端信任这些CA,就会在其本地保持这些CA的 根证书(root certificate),根证书是CA本身的证书,是证书验证链的开头。根证书没有机构(已是权威了)再为其作数字签名,因此都是自签证书。
CA会经过 中介证书(intermediate-certificate) 替代根证书的去作服务器端的证书签名,确保根证书密钥绝对不可访问。
Godaddy 给出了解释
What is an intermediate certificate?https://sg.godaddy.com/help/what-is-an-intermediate-certificate-868
前文提到,在向CA 申请证书时是须要 CA的私钥 去对整个证书的签名摘要作非对称加密的,也就是证书是能够经过 CA的公钥 去解密获得证书的签名摘要的。当咱们再次用 相同的摘要算法(证书里面有保存所使用的算法)对整个证书作签名,若是获得的签名和证书上的签名是一致的,说明这个证书是可信任的。
同理,中介证书 也是能够被这样的方式证实其可信任。这样的一整个流程称为 信任链(Chain of trust)。
就是我绝对相信你(A>B);你绝对相信他(B>C);等于我绝对相信他(A>C)
如下是整个流程:
www.wikiwand.com/zh/根证书www.wikiwand.com/zh-hans/信任鏈www.wikiwand.com/zh-hans/证书颁…www.cnblogs.com/JeffreySun/…www.ruanyifeng.com/blog/2011/0…
更多优秀内容,请 关注微信公众号 获取,加群还能够与小伙伴们交流讨论哦!