TLS通信加密 对称加密 公钥加密
TLS通信加密在了解TLS之前我们先来了解一下公钥加密和对称加密两种加密方式对称加密对称加密Symmetric Encryption是一种加密方式它使用同一个密钥Key进行加密和解密。明文原始信息 | | 使用密钥加密 ↓ 密文看不懂的数据 | | 使用同一个密钥解密 ↓ 明文恢复原信息以下是常见的对称加密算法算法特点AES (Advanced Encryption Standard)目前最常用安全性高广泛用于文件、通信、数据库加密DES (Data Encryption Standard)较老密钥长度短已不安全3DES (Triple DES)DES 的增强版但速度慢逐渐淘汰ChaCha20高性能常用于移动设备和网络通信优点速度快加密和解密效率高——适合加密大量数据资源消耗低对CPU和内存的要求较小问题密钥如何安全的传递假设A使用密钥K加密了文件此时B需要通过这个密钥K解密文件问题是如何将A手中的密钥K传给B如果在传输的过程中被攻击者截取K,那么加密就失效了——这个问题叫做密钥分发问题密钥管理困难每两个人之间可能就需要一个密钥当用户量很大的时候就需要很多密钥数量会快速增长公钥加密公钥加密Public Key Encryption也叫非对称加密Asymmetric Encryption是一种使用一对密钥的加密方式公钥Public Key可以公开给任何人私钥Private Key必须自己保管不能泄露发送方 接收方 ​ 拿到你的公钥 | | 加密消息 ↓ 密文 ----------------------- 私钥解密 | ↓ 原文也就是说使用公钥进行加密但是解密只有接受方的私钥可以解密解决了密钥交换问题黑客只有公钥而获取不到私钥进行解密数字签名私钥签名 → 公钥验证这种用法通常用在数字签名或者是身份验证的情况而且准确来说此时公钥解密的不是会话内容而是服务端发来的证书是CA机构签名的CA用服务端持有的私钥给证书签名而客户端使用CA提供的公钥去解签用来证明身份私钥 ↓ 生成签名 ↓ 消息 签名接受方如果可以使用公钥也就证明了这个人的身份在生活中可以确认是不是官方文件有没有被修改缺点——速度慢TLSTLSTransport Layer Security传输层安全协议是现代互联网安全通信的核心协议。你每天使用的 HTTPS、网银、邮箱、API 调用背后基本都依赖 TLS。前面我们讲了对称加密速度快适合大量数据但密钥分发困难公钥加密解决密钥交换和身份认证问题但速度慢TLS 的目标就是利用非对称密码技术建立信任和交换密钥再利用对称加密高速保护通信数据。在客户端和服务器进行通信中有几个要求保密性Confidentiality别人不能看懂数据完整性Integrity数据不能被修改身份验证Authentication接收方身份正确TLS通信完整流程TLS 1.3一次HTTP连接客户端 服务器 ​ ClientHello ------------- ​ ------------- ServerHello ​ ------------- Certificate ​ ------------- Finished ​ Client Finished ---------- ​ 开始加密通信 这里我们讲的是验证服务器身份而不验证客户端身份第一步Client Hello客户端向服务端发送“TLS版本支持的密码算法随机数临时公钥”这个随机数是哪里来的在 TCP 连通的瞬间客户端调用操作系统的安全随机接口RAND_bytes用系统采集的物理噪声作为原料在内存里现打出一个32 字节256 bit的随机值直接塞进第一个网络包里发出去了第二步Server Hello服务端向客户端发送“选择的TLS版本选择加密算法临时公钥证书链随机数”此时双方都有一对临时密钥对——这个密钥对是用来计算预主密钥的请继续向下看客户端私钥 客户端公钥 ​ 服务器私钥 服务器公钥说明客户端和服务端分别在自己的内存中随机产生一个只有自身知道的——临时私钥两个私钥完全不同绝对不通过网络传输然后在客户端和服务端分别将自己生成的数字通过OPENSSL库产生两个新的数字也就是两个临时公钥之后把公钥发给对方此时我们需要注意临时密钥对每一次握手都会生成会互相发送只在内存中存活用完即焚; 长期密钥对证书只有服务端有。服务端会把长期公钥发送给客户端用来进行身份验证对应的长期私钥锁在服务器的硬盘中客户端没有长期私钥TLS │ ┌────────┴────────┐ │ │ 身份认证长期 密钥交换临时 │ │ 证书/签名 ECDHE │ │ “你是谁” “共同秘密是什么”第三步Certificate为了防止攻击者伪装成服务器在服务端发送临时公钥或者发送的同时我们需要进行身份验证服务端向客户端发送数字证书Certificate里面有服务端长期公钥然后发送一个关键消息——CertificateVerify。该消息包含一个数字签名是服务器用其长期私钥对整个“握手记录”到目前为止所有握手消息的签名。客户端收到后用证书中的长期公钥验证签名就可以证明对方确实有这个证书对应的私钥确认服务器的身份第四步ECDHE密钥交换目标是双方在不传输自己的秘密的前提下计算出同一个密钥F代表OPENSSL之类的加密客户端先F客户端临时私钥然后把再把接收到的服务端的公钥加进去F服务端公钥F客户端临时私钥服务端执行和客户端一样的操作就会发现这样算出来的两个结果是一样的这个结果就叫预主密钥客户端 自己的私钥 对方的公钥 ↓ 共享秘密 服务器 自己的私钥 对方的公钥 ↓ 共享秘密在这个过程中虽然客户端和服务端的临时公钥是公开的但是攻击者仍然得不到临时私钥所以肯定得不到最后的预主密钥第五步真正的数据加密密钥ECDHE ↓ 预主密钥 ↓ HKDF 密钥派生 ↓ 各种 TLS Traffic Secret ↓ 具体加密密钥AES KEY之前我们分别生成了统一的预主密钥我们接着对这个密钥进行加密——HKDF密钥派生函数一次TLS会话需要多个不同的密钥而我们将会话密钥当作原材料进行HKDF之后就可以派生多个相互独立的密钥这些密钥会用来加密传输过程并没有说的这么简单简单理解称ECDHE共享秘密 ↓ HKDF ↓ Handshake Secret ↓ HKDF ↓ Handshake Traffic Secret ↓ HKDF ↓ 具体加密密钥还会生成Client Handshake Traffic Secret Server Handshake Traffic Secret Client Application Traffic Secret Server Application Traffic SecretHKDF是如何工作的HKDF基于HMAC的密钥派生函数是一个标准化的密钥派生函数它由两个核心步骤组成提取Extract输入原始密钥材料IKM和一个“盐值Salt”输出一个固定长度的伪随机密钥PRK。这一步是为了“提纯”原始材料。展开Expand将上一步的PRK结合不同的“上下文信息Info”通过多次计算输出任意长度的最终密钥。第六步握手完成双方确认彼此派生出相同的密钥客户端和服务器各自发送一条Finished消息。这条消息的内容是所有握手消息的哈希值并用握手流量密钥加密。对方收到后用自己计算出的密钥解密并验证哈希值。如果一致则证明双方密钥派生完全正确且握手过程未被篡改。第七步应用数据加密总结一张图服务器 │ ┌────────┴────────┐ │ │ 长期密钥对 临时密钥对 │ │ 私钥 公钥 私钥 公钥 │ │ ↓ ↓ 身份认证 ECDHE │ │ │ ↓ │ Shared Secret预主密钥 │ │ │ ↓ │ HKDF │ │ │ ↓ │ Traffic Secret还有HKDF的操作最终生成使用的AES KEY │ │ │ ↓ │ AEAD用密钥加密实际数据 │ │ └────────────→ 加密通信

相关新闻

在西门子 IoT2050 上创建 Python venv 完整指南

在西门子 IoT2050 上创建 Python venv 完整指南

一、为什么在 IoT2050 上必须用 venv? IoT2050 的示例镜像基于 Debian Linux。从 Debian 12(Python 3.11+) 开始,系统 Python 被视为关键系统组件: 如果 pip 随意写入 /usr/lib/python3.x,可能破坏 apt、系统工具和升级路径 因此 Debian 直接禁止 pip install xxx / pi…

2026/8/16 23:55:06 阅读更多 →
Word文档修订痕迹高效处理与完整保留的3种专业方案

Word文档修订痕迹高效处理与完整保留的3种专业方案

1. 项目概述:为什么“一键接受修订”是个伪需求?在文档协作和审阅的日常里,我们经常遇到一个看似简单、实则暗藏玄机的需求:如何快速处理一份满是修订痕迹的Word文档?很多朋友,尤其是经常需要汇总多方意见的…

2026/8/16 23:55:06 阅读更多 →
Windows系统重置与重装:核心区别、操作指南与数据备份全攻略

Windows系统重置与重装:核心区别、操作指南与数据备份全攻略

1. 项目概述:为什么我们需要重置或重装Windows? 电脑用久了,难免会变得卡顿、报错,或者被一些“全家桶”软件搞得乌烟瘴气。这时候,很多朋友的第一反应就是:“得重装系统了”。重置和重装Windows&#xff0…

2026/8/16 23:55:06 阅读更多 →

最新新闻

嵌入式开发三级进阶:从C语言到RTOS的避坑指南与实战解析

嵌入式开发三级进阶:从C语言到RTOS的避坑指南与实战解析

1. 项目缘起:为什么我们需要一份“嵌入式三级知识点与错题”清单? 最近在带新人,也和一些准备面试的朋友交流,发现一个挺普遍的现象:很多人对嵌入式开发的知识体系是“碎片化”的。他们可能刷了不少八股文,…

2026/8/18 9:20:46 阅读更多 →
ncmdump 免费教程:不装软件不敲命令,一键把网易云 NCM 转成 MP3

ncmdump 免费教程:不装软件不敲命令,一键把网易云 NCM 转成 MP3

ncmdump 免费教程:不装软件不敲命令,一键把网易云 NCM 转成 MP3 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你有没有过这种遭遇:收藏了好久的歌,拷进车载 U 盘后全部显示"无法…

2026/8/18 9:20:46 阅读更多 →
AlwaysOnTop窗口置顶工具免费使用教程:三步让任何Windows窗口始终显示在最前

AlwaysOnTop窗口置顶工具免费使用教程:三步让任何Windows窗口始终显示在最前

AlwaysOnTop窗口置顶工具免费使用教程:三步让任何Windows窗口始终显示在最前 【免费下载链接】AlwaysOnTop Make a Windows application always run on top 项目地址: https://gitcode.com/gh_mirrors/al/AlwaysOnTop 被窗口遮挡支配的瞬间,你一定…

2026/8/18 9:20:46 阅读更多 →
猫抓(cat-catch)浏览器资源嗅探扩展实用攻略:从网页视频嗅探到M3U8合并下载

猫抓(cat-catch)浏览器资源嗅探扩展实用攻略:从网页视频嗅探到M3U8合并下载

猫抓(cat-catch)浏览器资源嗅探扩展实用攻略:从网页视频嗅探到M3U8合并下载 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat…

2026/8/18 9:20:46 阅读更多 →
2026年学术写作工具测评与避坑指南

2026年学术写作工具测评与避坑指南

1. 2026年学术写作工具全景扫描 去年帮导师审阅研究生论文时,一个现象让我震惊:超过60%的投稿存在明显的AI写作痕迹。这促使我系统测评了市面主流的36款学术辅助工具,用三个月时间构建出这份动态评估体系。不同于简单的好用/不好用二分法&…

2026/8/18 9:20:46 阅读更多 →
猫抓cat-catch资源嗅探浏览器扩展快速上手教程:3步搞定网页视频批量下载

猫抓cat-catch资源嗅探浏览器扩展快速上手教程:3步搞定网页视频批量下载

猫抓cat-catch资源嗅探浏览器扩展快速上手教程:3步搞定网页视频批量下载 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 猫抓cat-catch…

2026/8/18 9:19:46 阅读更多 →

日新闻

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF 【免费下载链接】extract-video-ppt extract the ppt in the video 项目地址: https://gitcode.com/gh_mirrors/ex/extract-video-ppt 如果你还停留在"看网课 不停暂停 截图 …

2026/8/18 0:00:57 阅读更多 →
思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查

思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查

思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 你是不是也经历过这种时刻:设计稿里…

2026/8/18 0:00:58 阅读更多 →
华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate

华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate

华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, …

2026/8/18 0:00:59 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/18 9:15:35 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/18 9:06:28 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/18 9:04:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/17 18:54:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/17 18:55:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/17 18:55:55 阅读更多 →