域名频道资讯站
我们一直在努力制造惊吓

【转载】HTTPS和证书原理

 安全的原理其实非常多,基础的诸如数字签名,加密解密等等,这边不会细讲,会略微提一下。主要讲讲常见的web相关的安全原理,比如HTTPS,证书,双向证书等。

 HTTPS的协商过程:HTTPS的协商目的主要是基于使用非对称加密(一种被广泛地应用于各种传输场景的密钥交换协议,加密和解密使用的是两个不同的密钥)做传输会拖慢速度,因而客户端和服务器端首先需要基于非对称加密协商出一个对称加密的key。所以简化过的HTTPS的协商流程是这样的。

  1. 浏览器首先向服务器发起请求

  2. 服务器响应浏览器,并将自己的证书传递给浏览器,浏览器从证书得到公钥

  3. 浏览器生成sessionKey,这个key今后会被用来用作对称加密,浏览器用证书中的公钥加密这个sessionKey并发送到服务器

  4. 服务器使用自身私钥解密出sessionKey

  5. 后续的传输只需要建立在http上,双方都使用这个sessionKey做对称加解密就能完成整个通信

【转载】HTTPS和证书原理

 这个过程是简化后的,实际上握手的过程还会传输SSL版本,随机数,加密方法,压缩方法等等,sessionKey的生成也有所不同。但总体思路大致如此。

  更多请参考SSL/TLS协议运行机制的概述数字证书原理

 

  证书:直观的看,证书包括以下这些内容:

  1. 证书序列号

  2. 证书过期时间

  3. 站点组织名

  4. 站点DNS主机名

  5. 站点公钥

  6. 证书颁发者名

  7. 证书签名

 【转载】HTTPS和证书原理


  证书链:证书链的出现,其本质是因为如果证书颁发机构过多的话,不容易识别,防伪和管理,于是形成了少数几家国际权威的证书颁发机构,这些机构非常权威,默认是所有人都可信的,它们成为根证书。但是除了这些机构外,其他的机构也需要被信任,因而,需要这些权威的机构去授信颁发证书,于是就形成了一级证书机构,一级证书机构又可以继续授信下级机构,于是成为树状结构,对于任何一个组织到根证书就是链状结构。

 【转载】HTTPS和证书原理

 如图:假设你想要成为一个受信任的网站或机构,只需要找你的上级机构去颁发证书给你,颁发时你将自己的公钥,host等信息发送到颁发机构,该机构会将自己的证书附上你的信息,并用自己的私钥签名,做成一张新的证书发给你;而这个上级机构他的证书又是同样的方法由CA颁发的。

  那么,其他人怎么确认你的证书是合法的呢。首先你的证书会在https握手过程中被传递到浏览器,浏览器从你的证书中找到了颁发者,从颁发者的证书(如果你电脑上有的话)又找到了CA的证书(CA证书会在操作系统安装时就安装好,所以每个人电脑上都有根证书),使用CA证书中带的公钥来对颁发者证书做验签,一旦匹配,说明你电脑上的颁发者证书不是伪造的,同理,再用颁发者证书中的公钥去验证你的证书,以此证明你的证书不是伪造的。这样整个链状的验证,从而确保你的证书一定是直接或间接从CA签发的,这样浏览器地址栏会显示一个绿色的盾牌,表示你的网站能通过证书验证

  如果你的电脑上没有颁发者证书(断链)或者你自己本身就是自签名证书(自己做CA,但是要记得,人家电脑上并没有装你的自签名根证书),那么浏览器会报警提示不能验证证书,问你是否还需要继续。

 【转载】HTTPS和证书原理


 

本文章素材来自互联网

赞(0)
分享到: 更多 (0)

中国专业的网站域名及网站空间提供商

买域名买空间