新闻详情

新闻详情

首页 / 资讯中心 / 详情

rustls 后量子混合密钥交换(X25519MLKEM768)的握手性能测量与优化实践

发布时间:2026/9/30 16:04:36来源:尧图网络
rustls 后量子混合密钥交换(X25519MLKEM768)的握手性能测量与优化实践
网络安全密码学网络【免费下载链接】rustlsA modern TLS library in Rust项目地址https://gitcode.com/gh_mirrors/ru/rustls点击查看免费下载本文基于 rustls 官方性能报告2024-12-17整理系统测量 X25519MLKEM768 这类混合后量子密钥交换给 TLS 1.3 握手带来的额外 CPU 开销并深入讲解一项共享 X25519 setup 成本的客户端优化当同时提供 X25519 与 X25519MLKEM768 两个 key share 时只做一次 X25519 密钥生成避免浪费一半预计算。读完本文你将掌握 rustls 后量子密钥交换的基准结果、HelloRetryRequest的成因与四种规避策略以及该优化在微基准与完整握手两个层面上的量化收益并能定位到仓库中对应的实现代码。为什么需要后量子密钥交换混合算法与威胁模型随着加密相关量子计算机Cryptographically Relevant Quantum Computers可能出现的讨论升温TLS 生态正在向混合hybrid密钥交换算法迁移。混合算法的思路是把两类算法拼接在一起并将整体视为一个 TLS 级别的密钥交换算法一个已大规模部署的经典算法例如X25519RFC 7748一个后量子安全的新算法例如ML-KEMNIST FIPS 203 标准化的 ML-KEM-768两者组合后的 TLS 密钥交换算法例如X25519MLKEM768见 draft-ietf-tls-ecdhe-mlkem。rustls 当前仓库对这套设计的实现可以直接在源码中印证。在 rustls/src/crypto/kx/mod.rs 中X25519MLKEM768的NamedGroup取值为0x11ec见第 563 行并与SECP256R1MLKEM768等组合共同构成了混合密钥交换族的 code point 集合。源码中的HybridLayout结构rustls/src/crypto/kx/mod.rs#L155-L199专门描述了混合 key share 的布局经典密钥共享长度、客户端/服务器后量子密钥共享长度以及后量子元素在前还是在后——例如X25519MLKEM768的后量子元素排在第二个位置。rustls 官方文档 rustls/src/manual/defaults.rs 进一步说明了默认策略X25519MLKEM768在使用 aws-lc-rs provider 时默认就是优先级最高的密钥交换算法它虽属预标准化pre-standardization算法但已被 Chrome、Cloudflare 等广泛部署部署过程中可能出现意外连接失败如 tldr.fail 案例官方欢迎用户上报这类互操作问题其两个组成部分都经过充分审视X25519 本身就是 rustls 默认使用的经典算法ML-KEM-768 则由 NIST 在 FIPS 203 中标准化纯MLKEM768单独也可用但出于保守考量默认不启用。rustls/src/manual/features.rs 的特性清单也将Post-quantum hybrid key exchange with X25519MLKEM768列为当前支持项并注明可经CryptoProvider等公开 API 扩展或调整。首要测量后量子密钥交换的额外成本报告的第一步是量化切换到后量子密钥交换后握手性能付出了多大代价。所有测量都在项目的 amd64 基准机上完成CPU 为 Xeon E-2386G对比三方如下rustls 非后量子 X25519 密钥交换rustls 后量子 X25519MLKEM768 密钥交换OpenSSL 3.3.2 非后量子 X25519 密钥交换。后两者的测量同样基于该硬件其测量方法、复现指令与基准到底测量什么的说明来自 上一份性能报告。作为背景上一份报告rustls 0.23.15 时代的表格数据可以直观体现 rustls 相对 OpenSSL 的握手吞吐余量例如 TLS 1.3 RSA 完整握手服务器侧rustls 为 2544.31 次/秒、OpenSSL 为 1913.38 次/秒TLS 1.3 恢复握手服务器侧rustls 为 9500.11 次/秒、OpenSSL 为 4866.2 次/秒。该报告还给出了可复现的测量命令例如在 rustls 仓库根目录执行BENCH_MULTIPLIER16 setarch -R make -f admin/bench-measure.mk measure对应的 Makefile 位于仓库根目录的 admin/bench-measure.mk。测量结论客户端与服务器两侧的握手结果分别见文首的客户端对比图与下图从结果中可以读出两条关键结论X25519MLKEM768 的额外成本清晰可见对客户端和服务器都是如此后量子密钥交换并非免费rustls 的性能余量几乎可以完全吸收这笔额外成本启用后量子密钥交换的 rustls性能仍优于未启用后量子密钥交换的OpenSSL唯一的例外是**客户端恢复会话client resumption**场景。报告同时给出一个重要提醒后量子密钥交换涉及发送和接收比经典算法大得多的消息而该基准设计只覆盖CPU 成本、不含网络开销因此真实世界的性能会比这些测量结果更差。当 OpenSSL 获得后量子密钥交换支持后rustls 团队计划在这一领域做进一步的对比基准。优化共享 X25519 setup 成本测量的第二部分介绍并验证了一项已经实现的优化其名称即共享 X25519 setup 成本Sharing X25519 setup costs。背景ClientHello 密钥共享与 HelloRetryRequest在 TLS 1.3 中客户端在其第一条消息ClientHello里就启动了密钥交换。ClientHello中既包含客户端支持的算法清单也包含零个或多个预设的密钥共享key shares。服务器随后评估自己愿意使用哪些算法直接选用某个预设 key share或者回复一个HelloRetryRequest指示客户端携带一个特定的、双方都能接受的 key share 重新发送ClientHello。HelloRetryRequest代价高昂因为它给握手引入了额外的一个往返round trip同时意味着客户端为预设 key share 所做的工作全部作废。因此客户端应当尽量避免HelloRetryRequest报告总结了四条可行路径策略说明预先了解服务器偏好draft-ietf-tls-key-share-prediction 正在标准化一种带外学习机制的方案记忆服务器偏好rustls 自 2017 年加入 TLS 1.3 支持起就实现该机制频繁连接同一服务器的客户端通常可避免重复的HelloRetryRequest发送多个预设 key share直接有效但代价是浪费的计算与更大的消息体积跟随生态偏好X25519 凭借其性能与实现质量在 TLS 1.3 实现中占据压倒性首选地位三种密钥共享布局从双共享到共享 X25519纯 X25519MLKEM768 布局下客户端的 key exchange 示意如下hybrid-only 布局但在过渡期内客户端连接的服务器未必升级到了支持 X25519MLKEM768 的版本。为了避免向这类服务器发起HelloRetryRequest往返客户端需要额外再提供一个独立的 X25519 key share于是变成双共享布局hybrid-both 布局报告明确指出这种布局并不理想虽然 X25519 setup 非常快但客户端把它做了两次而且注定要丢掉其中一半——因为服务器最终只能选定一个 key share。优化后的布局则完全不同hybrid-opt 布局优化的核心思想是只生成一次 X25519 密钥对让同一个 X25519 公钥同时充当两个 key share 中的经典组件——它既是独立 X25519 key share 的公钥也是 X25519MLKEM768 key share 里的经典部分。这样无论服务器最终选择哪个 key share客户端的 X25519 私钥都能与之匹配预计算不再有必然作废的一半。该优化方案在 draft-ietf-tls-hybrid-design 第 3.2 节中有进一步描述。从源码结构看rustls/src/crypto/kx/mod.rs 中的HybridLayoutclassical_share_len、post_quantum_client_share_len、post_quantum_server_share_len、post_quantum_first四个字段正是支撑上述拼接逻辑的基础设施收到对端共享后按长度切分出经典与后量子两个分量再分别交给对应的底层算法完成密钥协商。它保证了同一个经典密钥对复用进两个共享在协议消息层面是可表达的。微基准测试构建并序列化 ClientHello为了先隔离优化本身的收益报告对构造并序列化一个ClientHello做了微基准覆盖三种场景仅包含 X25519 key share包含 X25519MLKEM768 与 X25519 两个 key share启用共享 X25519 setup 的优化包含 X25519MLKEM768 与 X25519 两个 key share不启用优化。微基准同时在两台机器上运行覆盖两大 CPU 架构amd64Xeon E-2386G与 aarch64Ampere Altra Q80-30。结果证实了两点预期优化带来小但可测量的收益two machines 上均可复现ML-KEM-768 的密钥生成成本显著高于 X25519这也是为什么省掉一次 X25519 密钥生成值得专门做一次优化。完整握手测量优化在真实场景中的收益微基准只覆盖客户端的第一个消息接下来报告把同样的三种场景放到完整客户端握手中去测量观察优化效应被其余握手计算稀释后的真实表现。该部分测量仅在 amd64 基准机上进行结论是差异可见但很小因为它被握手的其他部分稀释了。量化结果为恢复会话resumption场景约4.3%完整 RSA 握手约2.8%ECDSA 握手约2.6%。也就是说共享 X25519 setup 的优化把收益集中在客户端首条消息上在整个握手的尺度上依然能稳定带来约 3% 4% 的吞吐提升同时彻底消除了双共享布局中必然浪费一半 X25519 预计算的问题。如何在 rustls 中启用与调整后量子密钥交换作为补充背景当前仓库还展示了后量子密钥交换能力在生态中的落地方式。历史上由 rustls-post-quantum 这个独立 crate 提供 ML-KEM 密钥交换包括纯与混合两种变体但自 rustls 0.23.22 起ML-KEM 密钥交换已移入 rustls 主 crate 本身从该版本开始用户可通过 rustls 的prefer-post-quantumfeature 决定是否优先选择 ML-KEM 密钥交换而非非后量子密钥交换。该 crate 的入口实现见 rustls-post-quantum/src/lib.rs。总结这份 2024-12-17 的性能报告给出了后量子时代 TLS 握手优化的一个完整闭环先用控制变量法测出 X25519MLKEM768 相对 X25519 的额外 CPU 成本再针对过渡期必须同时提供两个 key share这一现实约束设计并实现了共享 X25519 setup优化最后分别用微基准和完整握手基准验证收益。最终数据表明即便计入后量子密钥交换的额外开销rustls 在绝大多数场景下仍能保持优于非后量子OpenSSL 的握手性能而共享 X25519 setup 的优化在完整握手上稳定带来约 2.6%4.3% 的吞吐提升。对希望在客户端侧减少HelloRetryRequest往返、平滑迁移到后量子密钥交换的开发者而言这份报告及其配套源码rustls/src/crypto/kx/mod.rs、rustls/src/manual/defaults.rs既是基准依据也是可直接落地的实现参考。赞分享网络安全密码学网络【免费下载链接】rustlsA modern TLS library in Rust项目地址https://gitcode.com/gh_mirrors/ru/rustls点击查看免费下载相关推荐GenForce模型动物园详解50预训练GAN模型一站式获取与使用GenForce模型动物园详解50预训练GAN模型一站式获取与使用 GenForce是一个高效的PyTorch深度学习生成建模库提供了丰富的预训练GAN模cryptography 项目 HPKE混合公钥加密实战指南从 Suite 组合到后量子混合 KEMcryptography 项目 HPKE混合公钥加密实战指南从 Suite 组合到后量子混合 KEM 本篇技术指南以 cryptography 仓库的 H密码学上一篇【亲测免费】 AS-Editor 开源项目使用教程下一篇【亲测免费】 开源项目Atom 文本编辑器安装与使用教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

阿里云CPFS全栈自研高性能存储:AI训练成本降低69%的工程实践 2026/10/1 8:32:49

阿里云CPFS全栈自研高性能存储:AI训练成本降低69%的工程实践

1. 从"存储吃掉一半预算"说起:CPFS到底在解决什么问题做过大模型训练的人都有一个共同体会:算力账单虽然贵,但真正让人肉疼的往往是存储。一个千亿参数级别的模型,训练数据集动辄几十TB到上百TB,checkpoint每…

阅读更多 →
2026年亚太工业微生物培养基蛋白胨理化分析与选型指南 2026/10/1 8:32:49

2026年亚太工业微生物培养基蛋白胨理化分析与选型指南

文章目录一、工业微生物培养基配制中蛋白胨的营养屏障二、107213颗粒型酪蛋白胨物理形态与理化常数三、高溶解度与低粉尘颗粒化加工的物理化学机制四、环境潮湿条件与加样称量中时间因子的控制五、品牌内酪蛋白胨与大豆蛋白胨物理规格段落对比六、苛养微生物发酵与食品药性检测…

阅读更多 →
DeepSeek弹性计算精读:从vLLM部署到API接入的工程实践指南 2026/10/1 8:32:48

DeepSeek弹性计算精读:从vLLM部署到API接入的工程实践指南

拿到“DeepSeek Elastic Compute (DSec)精读”这个标题,我最开始以为又是哪个新出的模型命名,真正去翻了一圈资料才发现,它说的不是某个具体的模型,而是一整套把DeepSeek这类开源模型变成“可弹性伸缩的推理服务”的架构思路和工具…

阅读更多 →
AI生成法律文书选哪家国内推荐优质甄选服务覆盖全国 2026/10/1 8:32:42

AI生成法律文书选哪家国内推荐优质甄选服务覆盖全国

随着法律需求的普及和数字化工具的发展,AI生成法律文书已经成为很多律师、法务和普通用户提升办事效率的首选,不过市面上相关服务商质量参差不齐,很多用户不知道该怎么选到靠谱的服务。 行业普遍痛点与市场需求 当前法律AI文书服务行业普遍存…

阅读更多 →
零代码搭建AI-Agent实战:从入门到进阶的完整指南 2026/10/1 8:32:42

零代码搭建AI-Agent实战:从入门到进阶的完整指南

1. 为什么“零代码”是AI-Agent落地的第一站1.1 从“写代码”到“搭积木”的思维转变很多人第一次听到“AI-Agent”这个词,脑子里浮现的都是满屏的Python代码、复杂的API调用、各种向量数据库和模型部署。我刚开始接触的时候也是这个反应,觉得这东西门槛…

阅读更多 →
摆脱论文困扰!2026年实打实好用的专业AI论文平台 2026/10/1 8:32:36

摆脱论文困扰!2026年实打实好用的专业AI论文平台

2026年AI论文写作工具已从“单点辅助”升级为全流程学术智能解决方案,核心评价维度涵盖文献真实性、格式合规性、长文本逻辑、查重降重、AIGC合规等关键指标。本次测评覆盖6款主流工具,涵盖中英文、全流程与专项功能、免费与付费版本,帮你高效…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉