【论文速递】DilithiumRK:基于Dilithium签名的后量子比特币区块链

  • XPTY
  • 发布于 2025-10-27 14:28
  • 阅读 11

本文介绍了首个针对比特币的后量子确定性钱包方案DilithiumRK,它基于Dilithium签名,通过可重随机化密钥实现隐私保护和量子安全。该方案在量子随机预言机模型下满足不可伪造性和不可链接性,为比特币在量子威胁来临前提供了迁移路径, 但公钥和签名尺寸显著增加,交易吞吐量下降。

Michel Seck and Adeline Roux-Langlois, Towards Post-Quantum Bitcoin Blockchain using Dilithium Signature. IACR Communications in Cryptology, vol. 2, no. 3, Oct 06, 2025, doi: 10.62056/ak5wom2hd.

核心贡献

Michel Seck和Adeline Roux-Langlois提出首个针对比特币的后量子确定性钱包方案DilithiumRK,通过可重随机化密钥的Dilithium签名实现隐私保护和量子安全。该方案在量子随机预言机模型(QROM)下满足不可伪造性(Uf-CMA-HRK)和不可链接性(Unl-PK),为价值2.4万亿美元的比特币市场在2028-2030量子威胁来临前提供了理论严格、实践可行的迁移路径。

关键权衡: 公钥扩大41倍(1312字节 vs 32字节),签名扩大34倍(2420字节 vs 71字节),交易吞吐量降至18%(维持1MB区块时),但换取量子时代的长期安全性。

图片

技术创新

比特币现用ECDSA的BIP32层级钱包通过加法派生子密钥: $pk{child} = pk{parent} + G \cdot h$。Dilithium基于MLWE问题的格结构不支持简单加法,需要重新设计密钥派生机制,同时保持热/冷钱包分离和隐私保护。

DilithiumRK方案

通过扩展Dilithium签名方案,添加两个确定性重随机化函数:

  • RandSK(sk, ρ): 从参数ρ确定性更新秘密密钥
  • RandPK(pk, ρ): 从相同ρ确定性更新公钥,保持密钥对一致性

利用MLWE的加法结构 $t = As_1 + s_2$,通过添加小向量实现更新:

$$ s_1' = s_1 + \delta_1, \quad s_2' = s_2 + \delta_2 $$ $$ t' = A(s_1 + \delta_1) + (s_2 + \delta_2) = t + A\delta_1 + \delta_2 $$

关键是从随机种子ρ确定性派生 $(\delta_1, \delta_2)$ 并维持安全性。UpdatePk算法 接收公钥 $pk = (\rho, t_1)$ 和参数ω,通过SHAKE256派生小向量 $(\delta_1, \delta2)$,确定性展开矩阵A,重构 $t{approx} = t_1 \cdot 2^d$ (此处丢失 $t0$ 精度),计算 $t' = t{approx} + A\delta_1 + \delta_2$,最后用Power2Round重新分割得到 $(t_1', t_0')$。

Power2Round问题: 该函数非同态性导致 $t_1'$ 可能偏离真实值,DilithiumRKC通过传输t1_diff增量纠正累积误差。

安全参数: 模数 $q = 8380417$ (支持256次单位根的NTT优化),维度 $k=6, l=5$ (Dilithium3),噪声界 $\eta=4, \beta=2\tau\eta=196$,范数界 $\gamma_1 = 2^{19}, \gamma_2 = (q-1)/32$。

图片

三种变体

DilithiumRK0(基础): 直接应用重随机化,公钥/签名尺寸与标准Dilithium相同(1952/3293字节)。

DilithiumRK(标准): 优化参数,公钥1472字节,签名2701字节。

DilithiumRKC(压缩): 通过t1_diff机制解决Power2Round非同态性问题,公钥压缩至约1000字节,但签名增至约3200字节。传输增量而非完整公钥,实现前向安全。

图片

确定性钱包设计

DilithiumDW(无状态)

热钱包存储 $(mpk, chaincode)$ 可独立派生子公钥生成接收地址,冷钱包存储 $(msk, chaincode)$ 可派生私钥签名。密钥派生: $\omega = H(mpk | chaincode | ID)$,然后调用UpdatePk/UpdateSk。无需维护派生历史,备份仅需主密钥和链码。

DilithiumSDW(有状态)

增加派生状态追踪,支持强化派生(需秘密密钥计算ω,热钱包无法派生),防止密钥重用,安全性更高但需维护索引集合。

安全性证明

不可伪造性(Uf-CMA-HRK)

定理: 如果格基签名方案在QROM下是 $(t, q_s, \epsilon)$-EUF-CMA安全,则DilithiumRK是 $(t', q_s, \epsilon')$-EUF-CMA-HRK安全,其中 $\epsilon' \leq \epsilon + \text{negl}(\lambda)$。

证明利用格基委派技术:给定 $pk = A$,对重随机化查询生成 $pk' = R_l A R_r$,使用BasisDel为 $\Lambda_q^{\perp}(AR_r)$ 生成短基,无需原始秘密密钥即可签名,将DilithiumRK伪造归约到底层格问题。

不可链接性(Unl-PK)

定理: DilithiumDW满足DWUNL安全,优势界 $\text{Adv}^{\text{unl-pk}}_{\mathcal{A}}(\lambda) \leq \frac{2q_H}{2^{256}} + \text{negl}(\lambda)$。

证明使用O2H(One-way to Hiding)引理:在挑战点重编程随机预言机,派生的子公钥与独立生成公钥计算不可区分,确保不同地址间隐私。

量子安全: 经典BKZ格归约需 $2^{138}$ 位运算,量子格筛算法需 $2^{125}$ 量子操作(Dilithium3达192位量子安全)。

代码实现

GitHub仓库

  • https://github.com/mseckept/dilithium-rk-wallet
  • 提供Python概念验证实现。基于Giacomo Pope的dilithium-py库,优先可读性而非常数时间或性能优化。

    src/
    ├── dilithiumrk.py         # 标准DilithiumRK
    ├── dilithiumrk0.py        # 基础变体
    ├── dilithiumrkc.py        # 压缩变体
    └── test-*.ipynb           # 交互式测试

实测数据(test-dilithiumrk.ipynb):

  • 公钥: 3712字节 (理论1952字节, +90%冗余)
  • 签名: 3232字节 (理论3293字节, -2%)
  • 验证: 成功通过密钥更新后签名验证

图片

核心算法示例

密钥更新(UpdatePk):

 def update_pk(pk, rho_prime):  
    rho, t1 = pk  
    delta1, delta2 = expand_from_seed(rho_prime)  
    A = expand_matrix(rho)  
    t_new = t1 * (2**d) + A @ delta1 + delta2  # 重构并更新  
    t1_new, _ = power2round(t_new, d)  
    return (rho, t1_new)  

拒绝采样签名: 平均需6.6次迭代,检查范数界 $\gamma_1 - \beta$ 和 $\gamma_2 - \beta$ (关键区别:调整了β项以适应重随机化)。

安全警告: 实现非常数时间,存在侧信道风险。生产环境需恒定时间库(如libpqcrypto)和形式化验证(CryptoVerif)。

性能与影响

尺寸对比

方案 公钥 签名 总和 量子安全
ECDSA 32B 71B 103B
Dilithium2 1312B 2420B 3732B 128位
Dilithium3 1952B 3293B 5245B 192位
DilithiumRKC ~1000B ~3200B ~4200B 192位
Falcon512 897B 690B 1587B 128位

比特币网络影响

交易吞吐量(1MB区块):

  • 当前ECDSA: ~2000笔/区块
  • Dilithium2: ~365笔/区块 (-82%)
  • 需增至4-8MB区块维持吞吐

存储增长:

  • 当前: 50-60 GB/年
  • Dilithium2: 270-324 GB/年 (5.4×)
  • 10年: ~3 TB vs 当前600 GB

经济影响: 节点运营成本增5.4倍,可能推动中心化;交易费用因容量稀缺上涨;激励Layer-2(闪电网络)采用。

计算性能与方案对比

方案 密钥生成 签名 验证
Dilithium2 124K周期 333K周期 118K周期
DilithiumRK +20-30% +10-15% +5-10%

密钥派生(UpdatePk/UpdateSk)增加20-30%开销,但绝对时间仍在毫秒级,实用可接受。

与先前工作对比: Alkadri等人(CCS 2020)首次提出基于qTESLA的通用后量子HD钱包框架,但缺乏针对NIST标准Dilithium的优化和完整QROM证明。本文创新点包括:首个Dilithium HD钱包实现,Power2Round问题的DilithiumRKC解决方案,完整的Uf-CMA-HRK和Unl-PK证明,以及详细的Bitcoin网络影响分析。

技术准备

协议层需硬分叉增加区块限制至4-8MB,引入新地址类型。钱包需升级至DilithiumDW/SDW标准,硬件钱包需扩容(当前2-5KB存储不足)。网络过渡期必须维持ECDSA+Dilithium混合签名,已暴露公钥的665万BTC在量子威胁下即刻脆弱。

结论

DilithiumRK证明后量子比特币在技术上可行,在QROM下可证明安全,迁移路径清晰可操作。代价是41倍公钥膨胀和82%容量下降(维持1MB),但这恐怕是这个价值2.4万亿美元的市场在量子时代生存的必要成本。

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
XPTY
XPTY
江湖只有他的大名,没有他的介绍。