[openSSL]TLS 1.3握手分析

文章目录


前言

关于TLS握手网上资料很多,但是有一些写的很不清楚,导致学习时对概念和流程出现混淆,以下是我觉得写得比较清晰和准确的供学习参考。
浅析 TLS(ECDHE)协议的握手流程(图解)
图解ECDHE密钥交换算法
TLS原理与实践(三)tls1.3以访问百度为例的TLS1.3握手详解

接下来针对ECDHE密钥交换、单向身份认证、双向身份认证来进行分析。注意这3个只是完整TLS握手流程中的一部分。

一、ECDHE密钥交换

ECDHE密钥交换流程中,每一次的流程,客户端和服务端都会临时生成ECDHE私钥和公钥。

注意ECDHE私钥和公钥并不是客户端或者服务器的私钥和公钥,两个概念要区分开。ECDHE私钥和公钥是每次会话都要重新生成的

  1. ECDHE密钥交换的步骤即是客户端获得服务器随机数和服务器ECDHE公钥;服务器获得了客户端随机数和客户端ECDHE公钥。(密钥的生成可以看链接中的文章)
  2. 这样双方都有了己方的ECDHE私钥和对端的ECHDE公钥,便能够生成预主密钥。
  3. 之后根据两方的随机数以及预主密钥来生成对称密钥。

二、TLS单向身份认证

单向认证指的是客户端对于服务端的身份认证。

  1. 服务器向客户端发送经过CA机构签名的证书,客户端收到后会使用系统预置的CA根证书来验证该证书的有效行。
  2. 当验证有效,那么客户端会提取出服务器的证书文件,其中包含了服务器的公钥。
  3. 服务器使用私钥对一段消息进行签名,之后发送给客户端,客户端使用提取出的服务器公钥进行验证,从而确认服务端的身份。

验证的主要原理是:一、使用CA根证书来验证服务器证书的有效行;二、使用服务器公钥来验证对方是持有了服务器私钥的,以此确认对方的身份。

三、TLS双向身份认证

双向认证即是既需要认证服务端,也需要对客户端进行认证。认证的基本流程和单向认证是类似的。

相关推荐
KKKlucifer6 小时前
数据安全合规自动化:策略落地、审计追溯与风险闭环技术解析
人工智能·安全
wanhengidc6 小时前
云手机 高振畅玩不踩坑
运维·服务器·安全·web安全·智能手机
易连EDI—EasyLink7 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
JS_SWKJ8 小时前
网闸与光闸深度解析:高安全隔离设备核心知识与选型
安全
AIwenIPgeolocation8 小时前
出海应用合规与风控平衡术:可信ID的全球安全实践
人工智能·安全
长安链开源社区8 小时前
长安链2.3.8生产版本发布,安全、开放、灵活的企业级区块链底座
安全·区块链
数智化精益手记局9 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程
带娃的IT创业者9 小时前
Bitwarden CLI 供应链攻击深度分析:当密码管理工具本身成为安全威胁
安全·npm·安全漏洞·cli·供应链攻击·bitwarden
企业架构师老王9 小时前
2026制造业安全生产隐患识别AI方案:从主流产品对比看企业级AI Agent的非侵入式落地路径
人工智能·安全·ai
国冶机电安装9 小时前
化工厂生产线设备安装:从工艺安全到系统联动的完整解析
安全