http协议原了解析系列九之认证:https连接的原理和通讯的流程

作者 : 开心源码 本文共1201个字,预计阅读时间需要4分钟 发布时间: 2022-05-12 共171人阅读

前言:

前面我们讲述了http基本认证和摘要认证,分别讲述了它们在web服务器中的工作原理和使用的缺陷。今天我们讲述https协议,这个协议本质还是http协议,只是在http和tcp协议之间添加了一个加密层(ssl或者者是tls)。并且也是现在web应用中最通用的数字加密技术。

https的使用形式:

  • 1、url中,默认方案是http,如www.baidu.com,默认使用http协议,但是https开头的url,如https://www.baidu.com。那么和web服务器之间的连接就是https连接。这表明我们在网络上传输的报文都是使用ssl或者者是tls加密过的密文。

因为https协议的特殊性,我们先讲述一下当前加密的主要系统和它们的体现形式。

当前加密的主要存在的系统:

  • 1)对称密钥加密系统:发送端和接收端使用同样的密钥进行解密。如des和rc4等。

这时就存在一个问题,假如一个网络中的通信实体可以互联互通的话,每个实体就必需保存另外的N-1个密钥,而这个网络保存的密钥就会达到N2左右,会造成管理上的噩梦。

  • 2)非对称加密系统:发送端和接收端可以使用不一样的密钥进行加密。发送端先请求接收端的公有密钥,而后使用请求的密钥对发送包文进行加密,这个加密报文只有接收端才能解密,这样即可以处理对称密钥的密钥管理问题,由于此时每台设施只要要保留一个公钥和私钥就可。如RSA等。

但是非对称加密存在一个性能问题会影响实际的使用场景。

  • 3)混合加密系统:

    首先使用非对称加密,建立连接通道,而后使用对称加密进行数据传输。

这样就保证了对称加密的私钥实在安全的连接上进行传输的,同时在数据传输时没有非对称加密。

  • 4)数字签名:

数字签名的主要原理:A -> B,原始报文src1

  • A 对发送报文产生MD5摘要m1,而后使用私钥加密摘要产生S1。

  • A使用B的公钥对(S1,src1)进行加密,形成t1,而后发送给B。

  • B使用自己的私钥对t1解密,形成(S1,src1)。

  • B使用MD5计算src1的摘要,形成d1。

  • B使用A的公钥解密S1,形成d2.

  • 比较d1和d2能否相等。

以上就是签名验签的过程,和非对称加密流程正好相反,而是私钥加密,公钥解密。

  • 5)数字证书:

数字证书是知名权威CA机构颁发给web服务器厂商用于签名验签和数据传输的。一般情况下,假如是知名CA,浏览器在请求到服务端的数字证书之后,可以直接进行签名验签过程。验签之后,才会进行加密信息的传输。

https的传输原理和流程:

  1. 建立到服务端443端口的tcp连接。

  2. 向服务端发送用户端支持的加密协议,请求服务端的数字证书。

  3. 用户端根据根证书对请求的数字证书,进行校验。

  4. 校验成功,用户端和服务端之间进行签名验签操作,并将发送的随机数作为对称加密的密钥

  5. 发送加密报文

到现在为止,web服务器上的安全认证传输协议和方法已经完成了,下一张开始讲述网络上http报文是怎么进行传输和编码的。

http协议原了解析系列九之认证:https连接的原理和通讯的流程

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » http协议原了解析系列九之认证:https连接的原理和通讯的流程

发表回复