HTTP与HTTPS-HTTPS 的应用数据是如何保证完整性的?

资料来源 : 小林coding
小林官方网站 : 小林coding (xiaolincoding.com)

HTTPS 的应用数据是如何保证完整性的?

TLS 在实现上分为握手协议和记录协议两层

  • TLS 握手协议就是我们前面说的 TLS 四次握手的过程,负责协商加密算法和生成对称密钥,后续用此密钥来保护应用程序数据(即 HTTP 数据)
  • TLS 记录协议负责保护应用程序数据并验证其完整性和来源,所以对 HTTP 数据加密是使用记录协议

TLS 记录协议主要负责消息(HTTP 数据)的压缩,加密及数据的认证,过程如下图

具体过程如下:

  • 首先,消息被分割成多个较短的片段,然后分别对每个片段进行压缩
  • 接下来,经过压缩的片段会被加上消息认证码(MAC 值,这个是通过哈希算法生成的),这是为了保证完整性,并进行数据的认证。通过附加消息认证码的 MAC 值,可以识别出篡改。与此同时,为了防止重放攻击,在计算消息认证码时,还加上了片段的编码
  • 再接下来,经过压缩的片段再加上消息认证码会一起通过对称密码进行加密
  • 最后,上述经过加密的数据再加上由数据类型、版本号、压缩后的长度组成的报头就是最终的报文数据

记录协议完成后,最终的报文数据将传递到传输控制协议(TCP)层进行传输。


这期就到这里 , 下期见!

相关推荐
网安小白的进阶之路18 分钟前
A模块 系统与网络安全 第四门课 弹性交换网络-4
网络·web安全·php
七夜zippoe21 分钟前
高性能网络编程实战:用Tokio构建自定义协议服务器
linux·服务器·网络·rust·tokio
wsx_iot27 分钟前
TCP/IP 五层协议栈
网络·网络协议·tcp/ip
午安~婉1 小时前
浏览器与网络
前端·javascript·网络·http·浏览器
无聊的小坏坏1 小时前
基于 TCP 线程池服务器封装 HTTP 服务器:从协议解析到适配落地
服务器·tcp/ip·http
0和1的舞者4 小时前
网络通信的奥秘:网络层ip与路由详解(四)
大数据·网络·计算机网络·计算机·智能路由器·计算机科学与技术
Dobby_054 小时前
【Docker】容器网络探索(二):实战理解 host 网络
网络·docker·云原生
小糖学代码4 小时前
网络:4.应用层自定义协议与序列化
网络
RAN_PAND6 小时前
计算机组成原理实验
网络·计算机组成原理
守城小轩7 小时前
轻量级HTTP&Socks代理GOST: Win编译安装
网络·网络协议·代理网络