摘要

本研究考察递归区块证明是否需要一种介于两种正式类别之间的几何。B64 覆盖最多 64 个物理用户页面的区块;B255 在不改变所证明关系的前提下覆盖 65 至 255 页。测试包含实际部署的完整证明路径、经过认证的矩阵,以及最高 1,020 个输入的钱包聚合。中间几何曾被实现,随后被移除:它会在共识中增加一条选择规则和一个验证分支,却没有改善任何已证实的工作负载。

B64 与 B255 分别表示什么

State 是由当前未花费输出与共识计数器组成的认证集合。HistoryStep 是把区块的精确 State 转换与前一个 HistoryStep 连接起来的递归证明,由此形成一条已证明状态链。B64 与 B255 是同一证明关系的两种固定容量。物理用户页是 PagedSpend 交易格式中的一个定长部分;一笔逻辑支出可以占用多页。B64 覆盖最多 64 个此类页面,B255 覆盖 65 页至共识上限 255 页。两者执行相同的有效性规则;较大的类别只是为证明提供更多容量。

本研究要回答的是:增加一种介于二者之间的几何,能否显著提高区块生成速度或效率,从而足以抵消它给协议带来的复杂度。

为何类别数量属于共识决策

每增加一个 HistoryStep 类别,就要向矩阵包中加入一份新的认证约束矩阵,并增加一条选择规则和一个验证器分支。这里的矩阵包是随发行版提供的矩阵集合,其摘要由验证器固定。只有当中间类别覆盖现有类别无法覆盖的工作区间时,它才有存在价值。

研究使用正式实现中的组装器、证明者、终端编解码器与验证器、冻结矩阵包,以及完整的本地钱包路径来测试 B64 和 B255。HistoryStep 准备时间依据十五秒参考门槛实测,而不是根据行数推断。这是确定性的证明生成预算,并不意味着单个矿工必须在十五秒内找到满足工作量证明的 nonce。

实测参考主机

下表中的 m 是填充后见证域与约束域大小的以二为底对数:m23 包含 2^23 个域位置,m24 包含 2^24 个。p50 是二十次保留运行的中位数,p95 是按最近秩法得到的第 95 百分位数。

样本运行使用 Intel Core i7-1365U:10 核、12 线程、AVX2 与 VPCLMULQDQ、无 AVX-512、启用轻量链接时优化(Thin LTO)、使用一个代码生成单元,并设置 target-cpu=native。桌面处于活动状态,机器也已经热机。父证明构造、钱包授权、工作量证明搜索和持久化区块提交均不在计时区间内。

类别有效行准备 p50 / p95验证 p50 / p95终端
B64 / m=235,705,30711.472 / 14.387 秒0.666 / 0.720 秒766,549 B
B255 / m2415,368,23324.189 / 29.755 秒0.770 / 1.012 秒807,189 B

B64 以 613 毫秒余量通过采用最近秩法计算的 p95 准备门槛。保留的二十个样本中,有一个达到 15.333 秒。B255 在同一主机上仍超出门槛:要达到十五秒,其 p95 准备吞吐量需要提高到当前的 1.984 倍。

网络的十五秒区块目标是工作量证明的期望间隔。nonce 搜索具有概率性,取决于难度和矿工在全网哈希率中的份额,因此被有意排除在证明类别基准之外。该结果只适用于一台实测笔记本与一个发行配置:主机满足 B64 的准备门槛,但不满足 B255。

两个类别覆盖的范围

类别求值域物理用户页面观测角色
B64m = 230–64参考笔记本准备类别
B255m = 2465–255最大区块页面类别

一笔逻辑 PagedSpend 可以包含 128 个页面、1,020 个输入和 256 个输出。一个区块可以包含 255 个物理用户页面、1,020 个输入和 510 个输出。固定的父证明表示可同时覆盖 m=23 与 m=24;这些交易上限不需要第三种递归几何。

1,020 个输入共享一份授权证明

钱包测试测量页面构造、逻辑哈希,以及一份随机化的授权证明封装;该证明对象表明同一个所有者秘密控制全部所选输入。测试还包括原子交易意图的编解码与本地准入;原子交易意图是所有物理页面共同组成的单笔逻辑交易封装。网络延迟和 HistoryStep 证明不计入其中。

场景页面总计 p50总计 p95证明 / intent
1 个输入1228.30 毫秒352.47 毫秒56.49 / 56.81 KiB
100 个输入13217.32 毫秒255.46 毫秒56.58 / 60.69 KiB
1,020 个输入128233.06 毫秒285.81 毫秒56.11 / 96.50 KiB

交易意图数据的字节数随输入聚合规模增长。授权证明封装的大小与证明时间基本不变,因为授权按所有者分组,而不是按物理页面分组。

发行配置对比

基线的二十次样本使用默认发行构建配置,并保持关系、见证数据、矩阵包和基准流程完全相同。Thin LTO 与单个代码生成单元只改变机器码:

类别默认准备 p50 / p95Thin-LTO p50 / p95
B6412.174 / 15.182 秒11.472 / 14.387 秒
B25526.203 / 32.009 秒24.189 / 29.755 秒

性能分析显示,证明时间几乎全部用于多项式承诺方案(PCS)和提交承诺之后的递归阶段。配置变化改善了这些跨 crate 路径,而没有改变共识数据或矩阵几何。

复现认证矩阵包

完整的双叶矩阵包从空输出根重新生成,并与发行版固定摘要逐字节比较:

  • 生成时间:5,596.2 秒;
  • B64 压缩叶:4,584,391 字节;
  • B255 压缩叶:11,912,603 字节;
  • 运行时元数据:1,732,922 字节;
  • 完整固定矩阵包:18,229,916 字节。

重新生成的元数据与两个叶均匹配各自记录的摘要。

记录的决策

B64 与 B255 覆盖了两个已经验证的工作区间。研究期间还实现了一个 128 页中间类别、另一种授权证明封装布局,以及把认证分散到多棵 Merkle 树的设计。测量没有发现需要这些额外认证几何的工作负载,因此它们在类别库冻结之前被移除。