摘要

参考递归组合为每个认证族分配一条 66 层 Poseidon2b 遍历,以直接测量完整图的成本。内存随认证族数量增长,并超过一台 30 GB 机器的容量。最终实现把各族模式局部化到同一个共享槽域内,通过一次全局遍历、一次共享状态传递和一个合并后的多项式恒等式处理全部九个认证族。

参考组合及其扩展极限

Poseidon2b 是一种四字状态密码学置换,用于对证明数据进行哈希与认证。递归验证器必须重放多组基于 Poseidon2b 的认证族。每个认证族由一种重复出现的哈希关系及其承诺绑定组成,例如来源树节点、来源叶节点、在某一折叠层共同打开的一对符号,或 Merkle 路径节点。参考组合有意为每个认证族分配独立的槽位调度、独立选择层与层之间传递的四个状态字,并建立独立的深链遍历;后者是一条约束轨迹,会为每个已占用槽位重放全部六十六层 Poseidon2b。这种直接构造为测量完整认证图提供了清晰基线。

在代数层面,每个认证族都容易单独检查;在运行层面,完整图基准却显示内存随认证族数量增长,因为每次独立遍历都会具化另一大组轨迹列。完整的九族形状超出一台 30 GB 内存机器的容量,由此确认独立遍历不是可行的组合拓扑。

组合结论

“每个认证族一次遍历”是一种有用的参考构造,但其内存成本随认证族数量扩展。正式组合必须共享计算成本高昂的置换遍历。

找出共享对象

每个认证族最终都在问同一个问题:这组宽度为四的状态序列是否遵循 Poseidon2b 置换?各族的区别不在置换,而在输入来源、固定调度以及消费输出的关系。

联合构造使用一个固定周期为 P 的共享槽位域。每个认证族占据周期内互不重叠的区间。四个已承诺的状态传递列 C0..C3 保存从一层传入下一层的四个 Poseidon 状态字。这些列、遍历输入和 Poseidon2b 遍历由所有认证族共享;只有各族的输入列和固定模式不同。

认证族 A源叶局部化槽位与模式
认证族 B…NMerkle 与折叠族局部化槽位与模式
共享一次状态传递一组 C0…C3 列
共享一次深链遍历覆盖所有已占用槽位

局部化各族等式

合并域会产生一个细微问题。原本定义在某个认证族自身步长上的固定模式会周期重复。若直接复制到共享域,其常数会在其他认证族的槽位内触发。未受选择器控制的状态传递等式也可能越过认证族边界读取数据。

联合原语把每个模式重建为长度 P 的表,只在分配给该族的区间写入其值,其余位置全部写零。因此,某个族的项会在自身区域之外消失。没有固定因子的项会得到显式区域选择器。需要从空状态开始的认证族经过排列,使第一个活动节点永远不会读取前一区域传来的状态。

Σ family_terms(w) = Σe αe+1 · s₀[e](w)    over one shared slot domain

在 A 槽位,只有 A 项生效;在 B 槽位,只有 B 项生效。右侧与认证族无关,因为两种情况下描述的都是同一置换输入关系。

双认证族对抗性测试

最小端到端实验组合了两个真正不同的深链认证族:来源叶节点链与 Merkle 路径。一次状态传递选择、一次深链遍历和一个合并后的多项式恒等式——即各族局部化等式之和——贯穿外层多项式承诺方案(PCS)与公共输入输出边界。Merkle 方向位保留单独的布尔性 sumcheck,但不再建立第二次置换遍历。

回归测试修改一个输入符号或同级节点,同时让轨迹保持可满足。被修改的承诺列随后在打开证明边界失败。这一点很重要:测试不仅说明联合构造能够接受自己组装的见证数据,还证明每个认证族仍然绑定回各自的承诺。

完整九族组合

完整实验组合了源绑定图:源树族、源叶查询,以及每个折叠层对应的一组配对符号打开——在实测形状中共九种认证族。它们共同使用:

  • 一个槽位域;
  • 一次状态传递选择;
  • 一次 Poseidon2b 深链遍历;
  • 一个合并后的多项式恒等式;
  • 一份真实的 FRI 低次数证明通道调度。

Fiat–Shamir 交互记录只执行一次:先吸收 Merkle cap——用于认证各承诺树根的紧凑根列表——再依次经过混合打开协议的挑战值、轮根、最终码字与来源绑定根,最后导出共享查询索引。这些挑战值同时进入代数断言和来源打开断言。每个认证族仍保留自己的承诺输入列,却不再实例化独立的验证器遍历。

相互独立的内存控制

单次全局遍历消除了主要的乘法因子。其他实验分别把约束矩阵改为压缩稀疏行(CSR)存储、精确调整 BaseFold 多项式承诺验证器使用的两个交替工作缓冲区、限制线性约束检查(lincheck)的临时数据、按字节约束暂存空间,并对重复矩阵系数进行字典编码。

这些改变解决不同问题。CSR 与字典编码缩小静态矩阵表示;有界暂存空间控制临时分配;全局遍历则改变组合拓扑本身。若把三者都笼统称作“内存优化”,就会掩盖原始方案失败的原因。

构造的适用范围

该构造适用于共享 Poseidon2b、且能局部化进同一固定域的异构轨迹族。它不是任意验证器子计算的编译器。其有效范围非常具体:一次昂贵的共享遍历,配合各族在输入和输出边界上的专属代数。

可复用的经验

当多项递归检查包含同一个昂贵子计算时,应先批处理该子计算,再优化其实现。即使把每次遍历都做得更快,内存仍会与认证族数量成正比。

为何完整图基准至关重要

单族测试确立局部正确性与每族成本;完整认证图则测量这些局部测试有意省略的乘法拓扑。因此,30 GB 边界是一项组合测量,并非 Poseidon2b 或某个认证族的缺陷。它解释了为何选定设计先共享拓扑,再施加底层内存控制。