本文分析了以太坊后量子抗性交易中 Falcon 签名方案的效率。通过对比密钥恢复、标准签名及签名聚合三种模式,研究发现:在当前区块交易量下,具有密钥恢复功能的非聚合模式在存储成本和系统复杂度之间达到了最佳平衡;虽然签名聚合在大规模场景下有优势,但目前对以太坊区块大小的边际收益有限。
随着以太坊等区块链网络开始考虑抗量子(Post-Quantum, PQ)安全性,签名大小成为了一个亟待解决的问题。目前的 ECDSA 签名仅约 64 字节,而 NIST 标准化的抗量子签名方案(如 Falcon 和 Dilithium)生成的签名要大得多。
Falcon-512 的签名大小约为 666 字节,虽然在 PQ 方案中已属较小,但在内存池(mempool)中大量传播时,仍会带来显著的带宽压力。本文探讨了如何利用 Falcon 的结构特性进行签名聚合,以优化 PQ 内存池的效率。
Falcon 基于 NTRU 格上的 GPV 框架。其核心在于通过陷门(trapdoor)在格中寻找一个接近目标向量的短向量。
一个 Falcon 公钥是一个多项式 $h$,签名则是满足以下方程的短向量对 $(s_1, s_2)$: $$s_1 + s_2 \cdot h = H(m) \pmod q$$ 其中 $H(m)$ 是将消息映射到环上的哈希值。
在内存池或区块中,通常包含大量来自不同用户的交易。聚合的目标是将 $n$ 个签名压缩为一个更小的结构。
与支持配对(Pairing)的 BLS 签名不同,格签名(如 Falcon)不具备天然的加法聚合特性:
为了在 PQ 内存池中实现有效的聚合,我们可以从以下几个方向入手:
通过随机线性组合,我们可以同时验证多个签名: $$\sum ci (s{i,1} + s_{i,2} \cdot h_i) = \sum c_i H(m_i) \pmod q$$ 虽然这加快了验证速度,但并没有直接减少传输的数据量。
由于所有 Falcon-512 签名都使用相同的模数 $q=12289$ 和环结构,我们可以通过共享部分计算结果或使用更高效的编码方式来压缩 $s_2$ 组件。
在内存池场景下,我们希望构建者(Builder)能够将收到的交易签名进行非交互式聚合。研究表明,通过精心设计的数学变换,可以在保持安全性的前提下,将多个 Falcon 签名的有效信息压缩到更小的空间内。
实现 Falcon 签名聚合将带来显著收益:
虽然 Falcon 的聚合不像 BLS 那样直观,但通过深入挖掘其格结构特性,我们依然可以实现显著的压缩效果。这对于构建实用的抗量子区块链系统至关重要。未来的研究将集中在优化聚合算法的计算开销以及确保其在 EVM 环境下的兼容性。
- 原文链接: ethresear.ch/t/revisitin...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!