当前位置: 首页 > article >正文

06.HTTPS的实现原理-HTTPS的握手流程(TLS1.3)

05.HTTPS的实现原理-HTTPS的握手流程(TLS1.3)

  • 简介
  • 1. TLS 1.3版本介绍与应用
  • 2. TLS 1.3握手过程的特点
  • 3. TLS 1.3的密钥交换和参数传输
  • 4. TLS 1.3的扩展和支持

简介

主要讲述了TLS 1.3相较于TLS 1.2版本的改进。TLS 1.3作为更高版本,旨在解决低版本在安全性、性能和兼容性方面的问题。它优化了算法,提高了安全性,并兼容低版本。性能上,TLS 1.3通过减少往返时延来提升效率,借鉴了TCP三次握手的逻辑,实现了客户端和服务器之间的快速握手和数据传输,从而提高了整体性能。

相关参考文章
05.HTTPS的实现原理-HTTPS的握手流程(TLS1.2)

1. TLS 1.3版本介绍与应用

1.TLS 1.3是TLS协议的更高版本,与TLS 1.2相比,主要目的是提升安全性和性能,解决兼容性问题。
2.TLS 1.3和TLS 1.2都是当前主流版本,广泛应用,而非TLS 1.3完全替代TLS 1.2

2. TLS 1.3握手过程的特点

1.TLS 1.3握手过程借鉴了TCP三次握手的逻辑,优化了数据传输的效率。
2.通过减少握手次数和简化过程,TLS 1.3显著减少了建立安全连接所需的时间和资源。
3.客户端和服务器在握手过程中直接交换关键参数,减少了额外往返的需要。

TLS 1.2和TLS 1.3工作流程图比较:

在这里插入图片描述

1.TLS 1.2的四次握手包括Client Hello、Server Hello、Client Key Exchange和ChangeCipherSpec。
2.TLS 1.3的三次握手包括Client Hello、Server Hello和ChangeCipherSpec。可以看出客户端进行Client Hello后,服务端就已经拿到了Client Key Exchange、Server Key Exchange、Client Random、Server Random这四个用于生成对称密钥的要素,此时已经可以开始生成对称密钥。相比TLS1.2减少了一个往返时延。

3. TLS 1.3的密钥交换和参数传输

1.TLS 1.3支持使用椭圆曲线等加密算法(不再支持RSA)进行密钥交换,提高了安全性和性能。
2.客户端在握手过程中发送其公钥给服务器,服务器用此公钥加密其参数后发送给客户端。
3.通过公钥直接交换的方式,TLS 1.3减少了握手过程中的参数传输次数和复杂度。

4. TLS 1.3的扩展和支持

1.TLS 1.3支持大量扩展,允许灵活配置和定制协议的各种参数和行为。
2.许多额外的参数和功能是通过扩展实现的,提供了更好的兼容性和功能覆盖。

往期文章参考:
01.HTTPS的实现原理-HTTPS的概念
02.HTTPS的实现原理-HTTPS与HTTP的区别详解
03.HTTPS的实现原理-HTTPS的工作流程
04.HTTPS的实现原理-HTTPS的混合加密流程
05.HTTPS的实现原理-HTTPS的握手流程(TLS1.2)


http://www.kler.cn/a/470444.html

相关文章:

  • 获取IP地区
  • 【iOS Swift Moya 最新请求网络框架封装通用】
  • HTML 显示器纯色亮点检测工具
  • Rocketmq 探索MQClientFactoryScheduledThread线程工作
  • MySQL入门学习笔记
  • Angular由一个bug说起之十三:Cross Origin
  • 数据分析思维(七):分析方法——群组分析方法
  • Go语言中的 os.Stat() 与 os.Lstat() 实际应用中,你该如何选择?
  • 高阶知识库搭建实战六、(向量数据库Faiss安装)(练习推荐)
  • Spring Boot 3 【八】整合实现高可用 Redis 集群
  • uniapp本地加载腾讯X5浏览器内核插件
  • TCP 如何获取端口信息
  • NLP项目实战——基于Bert模型的多情感评论分类(附数据集和源码)
  • go如何从入门进阶到高级
  • 【网络】ARP表、MAC表、路由表
  • 【Linux知识】Linux防火墙介绍
  • 【PtpBasics】- KRTS C++示例精讲(7)
  • docker中使用Volume完成数据共享
  • ESP32物联网无线方案,智能穿戴设备联网通信,产品无线交互应用
  • 从入门到精通:Ansible Shell 模块的应用与最佳实践
  • 智慧工地解决方案深度解析:统一架构平台,十大产品线与AI+智慧工地产品趋势
  • 微服务中任务失败后如何进行重试
  • 嵌入式硬件设计的基本流程
  • 从git分支获取一个新项目
  • Swift Concurrency(并发)学习
  • 在环境冲突情况下调整优先级以解决ROS Catkin构建中缺少模块的问题【ubuntu20.04】