HTTPS 详解

HTTPS 是以安全为目标的 HTTP 通道,它在 HTTP 中加入 SSL 层以提高数据传输的安全性。HTTP 被用于在 Web 浏览器和网站服务器之间传递信息,但以明文形式发送内容,不提供任何方式的数据加密,如果攻击者截取了 Web 浏览器和网站服务端之间的传输报文,就可以直接读懂其中的信息,因此 HTTP 不适合传输一些敏感信息,比如身份证号码、密码等。为了数据传输的安全性,HTTPS 在 HTTP 的基础上加入了 SSL 协议,SSL 依靠证书来验证客户的身份,并对客户端和服务端之间的通信进行数据加密,以保障数据传输的安全性,其端口一般是 443

HTTP 的加密流程如下:

  1. 发起请求:客户端在通过 TCP 和服务端建立连接之后(默认使用 443 端口),发出一个请求证书的消息给服务端,在该请求消息里包含自己可实现的算法列表和其他需要的消息。
  2. 证书返回:服务端在收到消息后回应客户端并返回证书,在证书中包含服务端的信息、域名、申请证书的公司、公钥、数据加密算法等
  3. 证书验证:客户端在收到证书后,判断证书签发机构是否正确,并使用该签发机构的公钥确认签名是否有效,客户端还会确保在证书中列出的域名为正在连接的域名。如果客户端确认证书有效,则生成对称密钥,并使用公钥将对称密钥加密
  4. 密钥交换:客户端将加密后的对称密钥发送给服务端,服务端在接收到对称密钥后使用私钥解密
  5. 数据传输:客户端和服务端完成了密钥对的交换,在之后的数据传输过程中,客户端和服务端就可以基于对称加密(加解密使用相同密钥的加密)将数据加密后在网络上传输,保证了网络数据传输的安全性
相关推荐
johnrui1 小时前
WebFlux 与普通HTTP(Spring MVC)详细对比
spring·http·mvc
坐吃山猪1 小时前
Python19_WebSocket模拟pipeline进展
网络·websocket·网络协议
天上的光2 小时前
云计算——RPC中间件
网络协议·rpc·云计算
汤愈韬3 小时前
防火墙设备管理
网络协议·网络安全·security
Tong Z11 小时前
TCP中的常见概念
网络·网络协议·tcp/ip
以太浮标12 小时前
华为eNSP模拟器综合实验之- IS-IS路由协议实践配置解析
网络协议·网络安全·华为·智能路由器·信息与通信
北京耐用通信15 小时前
耐达讯自动化CAN转EtherCAT网关:3步配置,赋能电机启动器智能化升级
人工智能·物联网·网络协议·自动化·信息与通信
小红的布丁16 小时前
TCP 核心原理:三次握手、四次挥手、粘包拆包、TCP 与 UDP 区别
网络协议·tcp/ip·udp
Hello_Embed19 小时前
嵌入式上位机开发入门(二十二):RTU/TCP 双协议互斥访问寄存器
笔记·网络协议·tcp/ip·嵌入式