首页/安全/加密与证书速查/ML-KEM 密钥封装(FIPS 203)
本包目录(305 条)
加密算法基础95 条
TLS 与 HTTPS60 条证书与 PKI30 条OpenSSL 实战30 条证书运维排查49 条密钥管理41 条

ML-KEM 密钥封装(FIPS 203)

基于模块格难题的密钥封装机制(源自 Kyber),通过 encaps/decaps 交换 32 字节共享秘密;TLS 1.3 中通常与 X25519 组成混合组使用。

加密与证书速查安全更新于 2026-10-12

参数集与体积

参数集NIST 安全类别封装公钥密文共享秘密
ML-KEM-5121(约 128 位)800 字节768 字节32 字节
ML-KEM-7683(约 192 位)1184 字节1088 字节32 字节
ML-KEM-10245(约 256 位)1568 字节1568 字节32 字节

KEM 使用思路(伪代码)

KEM 使用思路(伪代码)
# 接收方发布封装公钥 ek
c, ss_recv = ML-KEM.Encaps(ek)      # 发送方
ss_send   = ML-KEM.Decaps(dk, c)    # 接收方
# 得到相同共享秘密后,再用 HKDF 派生会话密钥
KEM 不是公钥加密函数:它只产生共享秘密,密钥用途由上层协议(如 TLS 1.3 密钥调度)决定。

易错点

  • ML-KEM 封装体积远大于 X25519(握手数据增大),部署前要评估分片与 MTU 影响
  • 对 ML-KEM 使用暴力枚举思路没有意义,但实现层要防侧信道(常量时间/掩码)

数据来源与参考

  • FIPS 203(Module-Lattice-Based Key-Encapsulation Mechanism)
  • draft-ietf-tls-ecdhe-mlkem(TLS 混合组)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌