QianHeng乾珩 PQC Docs Hub量子文档 ✦ Ask AI✦ 问问文档 ⚐ Scan⚐ 扫一扫

Parameters & Sizes

Post-quantum keys, ciphertexts, and signatures are far larger than RSA-2048 or elliptic-curve equivalents. This page consolidates the sizes across standardized, selected, and notable candidate/historical schemes alongside the classical baselines, and explains what those sizes mean once they hit real protocols.

Consolidated size table

All values are in bytes. KEM rows give the public encapsulation key (ek) and ciphertext (ct); signature rows give the public key (pk) and signature (sig). Sizes are approximate where rounding or encoding varies.

SchemeTypeLevelPublic key / ekCiphertext / signature
RSA-2048classical256256
Ed25519classical3264
ML-KEM-512KEM1800768
ML-KEM-768KEM311841088
ML-KEM-1024KEM515681568
Classic McElieceKEM1–5~261,120–1,357,824~96–208
HQC-128KEM1~2249~4433
BIKE (L1)KEM1~1541~1573
ML-DSA-44signature213122420
ML-DSA-65signature319523309
ML-DSA-87signature525924627
Falcon-512signature1~897~666
Falcon-1024signature5~1793~1280
SLH-DSA-128ssignature132~7856
SLH-DSA-128fsignature132~17,088
SLH-DSA-192ssignature348~16,224
SLH-DSA-256ssignature564~29,792

Falcon signature sizes shown are the fixed-length padded values (666 / 1280). The standard Falcon-512 / Falcon-1024 produce variable-length signatures — typically ~650 / ~1270 bytes, up to 752 / 1462 — so libraries report the padded numbers here while falcon.html gives the variable-length detail.

HQC does not yet have a finalized FIPS standard, so its sizes may be adjusted slightly as the final standard draft is settled.

Note
The contrast is stark. A classical Ed25519 signature is 64 bytes; the smallest stateless PQC signature (SLH-DSA-128s) is over 7 KB; ML-DSA-65 sits at ~3.3 KB. KEM public keys jump from a 32-byte X25519 share to over 1 KB for ML-KEM-768. Plan capacity accordingly.

Reading the table — the tradeoffs

  • Lattice KEMs (ML-KEM) are well-balanced: roughly 1 KB each way, fast. This is why ML-KEM-768 is the common default.
  • Classic McEliece inverts the tradeoff: tiny ciphertexts but a public key over a quarter-megabyte, which makes it impractical to ship keys per-connection but attractive where a public key is pinned once and reused.
  • ML-DSA signatures sit in the 2.4–4.6 KB range — large but manageable.
  • Falcon: among the post-quantum signature schemes selected by NIST, Falcon/FN-DSA has a very compact overall size, at the cost of a difficult-to-secure signer.
  • SLH-DSA pays heavily in signature size, and its f ("fast") variants trade even larger signatures for faster signing versus the s ("small") variants.

What the sizes mean for protocols

Size is not a cosmetic concern — it interacts with hard protocol and network limits:

  1. TLS record and ClientHello limits. A hybrid key share (X25519 + ML-KEM-768) pushes the ClientHello toward or past common ~1.5 KB assumptions, and some middleboxes mishandle large or fragmented initial flights. A full PQC certificate chain (multiple ML-DSA-65 public keys and signatures) can run to tens of kilobytes, adding round-trips.
  2. MTU and fragmentation. The typical Ethernet MTU is 1500 bytes. KEM ciphertexts and signatures routinely exceed a single packet, forcing IP/QUIC fragmentation or extra TLS records, which raises latency and amplifies packet-loss impact.
  3. UDP-based protocols (DTLS, QUIC, IKE). These are especially sensitive: large handshake messages must be fragmented at the application layer, and oversized first flights enable amplification-attack concerns.
  4. Certificate storage and chains. Each hop in an X.509 chain now carries a multi-kilobyte signature plus a multi-kilobyte public key. Deep chains multiply this; consider chain shortening and intermediate suppression.
Warning
Before standardizing on Level 5 everywhere, measure handshake byte counts against your real MTU, load-balancer buffer limits, and any embedded-device constraints. The jump from ML-KEM-768/ML-DSA-65 (Level 3) to the Level 5 sets adds kilobytes per handshake that some deployments cannot absorb.

Why ML-KEM-768 / ML-DSA-65 are common defaults

They sit at the sweet spot: Level 3 security margin, sub-2 KB public keys, sub-3.5 KB signatures/ciphertexts, fast constant-time implementations, and the widest interoperability across libraries and TLS stacks. Unless you have a confidentiality horizon that demands Level 5 or a size budget that forces Falcon, this pairing is the safe starting point.

Related

Standards & references

参数与体积

后量子的密钥、密文和签名远大于 RSA-2048 或同等强度的椭圆曲线方案。本页对标准化、已选定及重要候选/历史方案的体积进行汇总,并列出经典基线,进而说明这些体积一旦落到真实协议上意味着什么。

体积汇总表

所有数值单位为字节。KEM 行给出公开封装密钥(ek)与密文(ct);签名行给出公钥(pk)与签名(sig)。因取整或编码差异,部分数值为近似值。

方案类型等级公钥 / ek密文 / 签名
RSA-2048经典256256
Ed25519经典3264
ML-KEM-512KEM1800768
ML-KEM-768KEM311841088
ML-KEM-1024KEM515681568
Classic McElieceKEM1–5约 261,120–1,357,824约 96–208
HQC-128KEM1约 2249约 4433
BIKE(L1)KEM1约 1541约 1573
ML-DSA-44签名213122420
ML-DSA-65签名319523309
ML-DSA-87签名525924627
Falcon-512签名1约 897约 666
Falcon-1024签名5约 1793约 1280
SLH-DSA-128s签名132约 7856
SLH-DSA-128f签名132约 17,088
SLH-DSA-192s签名348约 16,224
SLH-DSA-256s签名564约 29,792

表中 Falcon 签名尺寸为定长 padded 值(666 / 1280)。标准 Falcon-512 / Falcon-1024 产生变长签名——通常约 650 / 1270 字节,上限 752 / 1462——因此此处按库报告的 padded 数值给出;变长口径详见 falcon.html

HQC 尚未发布最终 FIPS 标准,尺寸可能随最终标准草案微调。

注意
反差极为悬殊。经典 Ed25519 签名仅 64 字节;最小的无状态 PQC 签名(SLH-DSA-128s)已超过 7 KB;ML-DSA-65 约为 3.3 KB。KEM 公钥也从 X25519 的 32 字节份额跃升到 ML-KEM-768 的 1 KB 以上。请据此规划容量。

读懂这张表 各种取舍

  • 格 KEM(ML-KEM)较为均衡:双向各约 1 KB,速度快。这正是 ML-KEM-768 成为常见默认值的原因。
  • Classic McEliece 反转了取舍:密文极小,但公钥超过四分之一兆字节,因而不宜为每条连接传输密钥,却适合公钥一次固定、反复复用的场景。
  • ML-DSA 签名落在 2.4–4.6 KB 区间——偏大但尚可管理。
  • Falcon:在 NIST 已选中的主流后量子签名方案中,Falcon/FN-DSA 的整体尺寸非常紧凑,代价是签名端难以保证安全。
  • SLH-DSA 在签名体积上付出沉重代价,其 f(fast)变体相比 s(small)变体以更大的签名换取更快的签名速度。

体积对协议意味着什么

体积绝非外观层面的小事——它会与协议和网络的硬性上限相互作用:

  1. TLS 记录与 ClientHello 限制。混合密钥份额(X25519 + ML-KEM-768)会把 ClientHello 推向甚至越过常见的约 1.5 KB 假设,部分中间盒会错误处理过大或分片的首批数据。一条完整的 PQC 证书链(多个 ML-DSA-65 公钥与签名)可达数十 KB,从而增加往返次数。
  2. MTU 与分片。典型以太网 MTU 为 1500 字节。KEM 密文与签名往往超过单个数据包,迫使 IP/QUIC 分片或拆成多条 TLS 记录,既抬高时延,又放大丢包影响。
  3. 基于 UDP 的协议(DTLS、QUIC、IKE)。这类协议尤为敏感:大型握手消息须在应用层分片,而过大的首批数据会引发放大攻击隐患。
  4. 证书存储与链路。X.509 链上每一跳如今都携带数 KB 的签名外加数 KB 的公钥。深层链路使之成倍累积;可考虑缩短链路并抑制中间证书。
警告
在全面采用 Level 5 之前,请对照真实 MTU、负载均衡器缓冲上限以及任何嵌入式设备约束来测量握手字节数。从 ML-KEM-768/ML-DSA-65(Level 3)跃升到 Level 5 参数组,会使每次握手增加数 KB,部分部署难以承受。

为何 ML-KEM-768 ML-DSA-65 成为常见默认值

它们恰处于甜点区:Level 3 安全裕度、不足 2 KB 的公钥、不足 3.5 KB 的签名/密文、快速的恒定时间实现,以及跨各类库与 TLS 栈的最佳互操作性。除非你的机密期长到必须用 Level 5,或体积预算紧到不得不选 Falcon,否则这对组合就是稳妥的起点。

相关链接

标准与参考

⚑ Report an error⚑ 纠错与校正