[openSSL]TLS 1.3握手分析
文章目录
- 前言
- 一、ECDHE密钥交换
- 二、TLS单向身份认证
- 三、TLS双向身份认证
前言
关于TLS握手网上资料很多,但是有一些写的很不清楚,导致学习时对概念和流程出现混淆,以下是我觉得写得比较清晰和准确的供学习参考。
浅析 TLS(ECDHE)协议的握手流程(图解)
图解ECDHE密钥交换算法
TLS原理与实践(三)tls1.3
以访问百度为例的TLS1.3握手详解
接下来针对ECDHE密钥交换、单向身份认证、双向身份认证来进行分析。注意这3个只是完整TLS握手流程中的一部分。
一、ECDHE密钥交换
ECDHE密钥交换流程中,每一次的流程,客户端和服务端都会临时生成ECDHE私钥和公钥。
注意ECDHE私钥和公钥并不是客户端或者服务器的私钥和公钥,两个概念要区分开。ECDHE私钥和公钥是每次会话都要重新生成的

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

单向认证指的是客户端对于服务端的身份认证。
- 服务器向客户端发送经过CA机构签名的证书,客户端收到后会使用系统预置的CA根证书来验证该证书的有效行。
- 当验证有效,那么客户端会提取出服务器的证书文件,其中包含了服务器的公钥。
- 服务器使用私钥对一段消息进行签名,之后发送给客户端,客户端使用提取出的服务器公钥进行验证,从而确认服务端的身份。
验证的主要原理是:一、使用CA根证书来验证服务器证书的有效行;二、使用服务器公钥来验证对方是持有了服务器私钥的,以此确认对方的身份。
三、TLS双向身份认证
双向认证即是既需要认证服务端,也需要对客户端进行认证。认证的基本流程和单向认证是类似的。

相关文章:
[openSSL]TLS 1.3握手分析
文章目录 前言一、ECDHE密钥交换二、TLS单向身份认证三、TLS双向身份认证 前言 关于TLS握手网上资料很多,但是有一些写的很不清楚,导致学习时对概念和流程出现混淆,以下是我觉得写得比较清晰和准确的供学习参考。 浅析 TLS(ECDHE…...
无人机之螺旋桨的安装与维护
一、安装:正确安装桨叶至关重要。请确保顺时针旋转的桨叶安装在对应的电机上,并使逆时针旋转的桨叶安装在相应的电机上。否则,无人机可能无法正常飞行或失去控制。 二、维护:为了确保无人机的安全及长久使用,请定期检…...
手机设备IP地址切换:方法、应用与注意事项
在当今数字化时代,手机已成为我们日常生活中不可或缺的一部分。无论是工作、学习还是娱乐,手机都扮演着重要角色。然而,随着网络环境的日益复杂,有时我们需要切换手机设备的IP地址以满足特定的需求,如保护隐私、绕过地…...
华为HCIP证书好考吗?详解HCIP证书考试难易程度及备考策略!
华为认证体系主要分为三个层次:HCIA(Huawei Certified ICT Associate),HCIP(Huawei Certified ICT Professional)和HCIE(Huawei Certified Internetwork Expert)。作为中级认证,HCIP证书主要面向具备一定技术基础和项目实践能力的专业人士。在…...
《SPSS零基础入门教程》学习笔记——05.模型入门
文章目录 5.1 回归模型5.2 分类模型5.3 降维和刻度模型5.4 生存分析和时间序列模型 5.1 回归模型 线性回归(分析 -> 回归 -> 线性)曲线估计(分析 -> 回归 -> 曲线估计) 二元Logistic回归(分析 -> 回归…...
如何用不到一分钟的时间将Excel电子表格转换为应用程序
我们大多数人对电子表格又爱又恨。当企业需要分析数据、为决策过程提供信息并可视化信息时,Excel和Google Sheets是首选。这些文档非常容易创建,它们帮助我们以直接的方式构建相关的想法和适用的数据。除此之外,事情可能会变得一团糟。 对于…...
WordPress 中 cURL 请求出现 504 网关超时错误的解决方法
错误原因 504网关超时错误通常发生在服务器作为网关或代理,不能在规定的时间内得到响应时。在WordPress中,这可能是因为目标服务器响应过慢,或请求的队列过长导致的。 解决方案 首先,您应该检查您的cURL请求是否设置了一个合理的…...
事件和委托的区别
在C#中,事件(Event)和委托(Delegate)是紧密相关但具有不同含义的概念。以下是它们的主要区别: 委托(Delegate): 委托是一种类型,它表示一个方法的签名(即方法…...
低功耗蓝牙协议栈如何学习?
目录 1. 基础知识 1.1 了解BLE基本概念 1.2 阅读BLE规范 2. 实践和开发工具 2.1 使用开发板 2.2 安装开发环境 3. 学习资源 3.1 官方文档和示例 3.2 在线课程和教程 4. 实践项目 4.1 简单项目 4.2 复杂项目 5. 深入理解协议栈 5.1 分析协议栈 5.2 调试和分析 6…...
ROS 2中,CMakeList.txt常见语法
在ROS 2中,CMakeList.txt 文件扮演着配置和管理构建过程的重要角色。这个文件遵循CMake的语法,用于定义如何编译和链接源代码。下面是一些在ROS 2项目CMakeList.txt文件中常见的语法和用法。 1. 基本结构和命令 cmake_minimum_required(VERSION )&…...
使用 prefetchComponents 进行组件预取
title: 使用 prefetchComponents 进行组件预取 date: 2024/8/17 updated: 2024/8/17 author: cmdragon excerpt: 摘要:本文介绍Nuxt.js中的prefetchComponents功能,用于预取组件以提高用户体验。通过在客户端后台下载和缓存组件,确保在用户…...
『 C++ 』IO流
文章目录 IO流概述iostream 的标准对象C流和C标准库I/O函数的同步 sync_with_stdiofstream 文件流文件流的打开标志二进制读写二进制读写的浅拷贝问题文本读写 字符串流注意 IO流概述 流是指数据的有序传输序列,路表示数据从一个地方流向另一个地方的过程,流可以是输入流也可以…...
enhanced Input Action IA_Look中Action value引脚没有分割结构体引脚的选项
UE5系列文章目录 文章目录 UE5系列文章目录前言二、使用步骤解决办法 前言 据说,unreal engine5中准备废弃“项目设置”中“输入”,操作映射,轴映射。取而代之的是: 使用增强的输入动作(Enhanced Input Actions&#…...
C# NetworkStream、ConcurrentDictionary、Socket类、SerialPort、局域网IP 和广域网IP
一、NetworkStream 什么是NetworkStream? NetworkStream 是 .NET Framework 中用于在网络上进行数据传输的流类。它属于System.Net.Sockets 命名空间,并提供了通过网络连接进行读写操作的功能。NetworkStream 主要用于处理从网络套接字(Soc…...
大模型--学习范式
1. 自监督学习(Self-Supervised Learning) 概念:自监督学习是一种特殊形式的监督学习,其中标签不是由人工标注的,而是从输入数据本身自动生成的。模型利用这些自动生成的标签进行训练。自监督学习通常用于预训练阶段&…...
Hadoop-yarn-unauthorized 未授权访问漏洞
一、漏洞描述: Hadoop是一款由Apache基金会推出的分布式系统框架,它通过著名的 MapReduce 算法进行分布式处理,Yarn是Hadoop集群的资源管理系统。YARN提供有默认开放在8088和8090的REST API(默认前者)允许用户直接通过…...
工作流调度系统(DolphinScheduler、Azkaban、Airflow、Oozie 和 XXL-JOB)
文章目录 1. DolphinScheduler1.1 DolphinScheduler介绍1.2 DolphinScheduler优点 2. Azkaban2.1 Azkaban介绍2.2 Azkaban优点 3. Airflow3.1 Airflow介绍3.1 Airflow优点 4. Oozie4.1 Oozie 介绍4.2 Oozie 优点 5. XXL-JOB5.1 XXL-JOB介绍5.2 XXL-JOB优点 6. 总结 1. DolphinS…...
PyTorch 基础学习(5)- 神经网络
系列文章: PyTorch 基础学习(1) - 快速入门 PyTorch 基础学习(2)- 张量 Tensors PyTorch 基础学习(3) - 张量的数学操作 PyTorch 基础学习(4)- 张量的类型 PyTorch 基础学…...
CI/CD 自动化:最大限度地提高极狐GitLab 群组的“部署冻结”影响
极狐GitLab 是 GitLab 在中国的发行版,专门面向中国程序员和企业提供企业级一体化 DevOps 平台,用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规,而且所有的操作都是在一个平台上进行,省事省心省钱。可以一键安装极狐GitL…...
单元训练10:定时器实现秒表功能-数组方式
蓝桥杯 小蜜蜂 单元训练10:定时器实现秒表功能-数组方式 /** Description:* Author: fdzhang* Email: zfdcqq.com* Date: 2024-08-15 21:58:53* LastEditTime: 2024-08-16 19:07:27* LastEditors: fdzhang*/#include "stc15f2k60s2.h"#define LED(x) …...
2026年在湖南选智能家居,有线和无线究竟该怎么选?
引言随着智能家居的普及,在湖南选择智能家居时,有线和无线方案的抉择成为许多消费者头疼的问题。华为鸿蒙智家株洲红星店凭借多年的行业经验和专业知识,为大家提供一些有价值的参考,帮助大家在2026年做出更合适的选择。有线智能家…...
2026年湖南旧房改造,原来老房升级智能家居有这些攻略?
引言随着智能家居的发展,越来越多湖南的旧房业主希望将老房升级为智能住宅。2026年,旧房改造智能家居有哪些实用攻略呢?华为鸿蒙智家株洲红星店凭借其独特的技术和产品优势,为旧房改造提供了优质的解决方案。旧房改造智能家居的必…...
2026年AI写作辅助网站实测精选:5款神器从选题到格式全流程护航
写论文的难处,是每个科研人和学生都心知肚明的“隐形负担”。选题无从下手,文献检索耗时费力,格式排版反复调整,查重降重更是让人抓耳挠腮。2026年的AI工具早已不再是冷冰冰的“文字机器”,而是进化成了能理解学术逻辑…...
可视化 React 水合(Hydration)问题
以下是 Next.js React 水合(Hydration)问题的 Mermaid 可视化,包含流程图(问题全景)和时序图(时间线视角),以及简要说明。1. 水合问题全景流程图 #mermaid-svg-tjAQ0VWDBl1ii9LA{fo…...
如何让Axure RP显示中文:三分钟搞定界面本地化
如何让Axure RP显示中文:三分钟搞定界面本地化 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文…...
别再踩坑了!Win10下AirSim v1.5.0 + UE4.26.2 + Python 3.7 保姆级环境搭建实录
Win10下AirSim v1.5.0 UE4.26.2 Python 3.7 避坑实战指南1. 环境配置前的关键准备在开始AirSim环境搭建之前,有几个关键点必须提前确认。我曾在不同配置的机器上反复尝试了7次安装,最终总结出这套成功率最高的方案。硬件要求检查清单:显卡&…...
为什么92%的DeepSeek部署失败?揭秘量化校准中被忽略的3个KL散度阈值临界点
更多请点击: https://intelliparadigm.com 第一章:为什么92%的DeepSeek部署失败?揭秘量化校准中被忽略的3个KL散度阈值临界点 在真实生产环境中,DeepSeek-R1/Distill系列模型的INT4量化部署失败率高达92%,核心症结并非…...
Ubuntu 24.04 SSH密钥登录失效原因与实战修复全指南
1. 为什么24.04的SSH配置不能照搬22.04的经验?Ubuntu 24.04 LTS(Noble Numbat)发布后,我第一时间在三台生产边缘节点上做了迁移测试——结果两台在SSH密钥登录环节直接卡死,ssh -v输出停在debug1: Next authentication…...
基于SpringBoot的校园心理健康匿名互助社区毕设源码
博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在构建一个基于Spring Boot与Vue框架的校园心理健康匿名互助社区系统以解决当前高校心理健康服务中存在的信息传播效率低下、公众参与度不足以及资源利用…...
DeepSeek推理内存暴涨400%的元凶找到了:详解PagedAttention在DeepSeek-VL中的适配陷阱与绕过方案
更多请点击: https://codechina.net 第一章:DeepSeek推理内存暴涨400%的现象复现与根因定位 在部署 DeepSeek-R1-7B 模型进行批量文本生成时,我们观测到 GPU 显存占用从预期的约 8.2 GB 飙升至 41.3 GB,增幅达 400%,显…...
