

自9月30日起在以太坊主网上线。协议默认设置:每个哈希链包含1,000次支付。发现并修复了前运行(Front-running)漏洞,修复措施于10月21日生效。以“Hadamard”为名的创始人于10月24日在Ethereum Research发帖描述了该设计,并寻求批判性反馈。
普通以太坊账户使用ECDSA签名授权交易,而足够强大的量子计算机若运行Shor算法,理论上可破解此类签名。尽管目前尚无机器能做到这一点,但对钱包密钥泄露的警告促使开发者寻找替代方案。BB84是OP Stack Rollup在以太坊主网上的一个实例(链ID为42069000),其网络完全移除了签名机制。
每个账户由一个通过Keccak-256反复哈希生成的秘密衍生而来,形成一条值链。只有链中的最后一个值是公开的。进行支付时,钱包会揭示前一个值,任何人都可以通过一次哈希运算来验证。网络随后记录该值,并将账户沿链向下移动一步。协议默认步数为1,000步,而BB84的开发工具CLI(命令行界面)为每个一次性地址创建包含10个步骤的短链。即使支付失败,也会消耗一个步骤,且链将拒绝任何常规签名的交易。
支付仅支持桥接的USDC和EURC。用户提交承诺(commit)和揭示(reveal)交易均免费,付款人为每个接收方创建全新的一次性地址。
文章阐述了其中的安全权衡。在网络内部,一切依赖于Keccak-256难以逆转的特性,Grover量子搜索算法仅将其安全性降低至约2^128次操作。然而,地址被缩短为160位,这使得地址本身仅保留约2^80的抗量子能力。BB84的文档宣传的是128位后量子安全性,但未注明此局限性。此外,以太坊主网仍使用ECDSA:存款从普通以太坊钱包开始,取款也支付到这些钱包。
由于揭示秘密意味着使其公开,任何旁观者都可能将其复制到自己的交易中用于收款。为防止这种情况,钱包首先发送一笔承诺交易,在不显示秘密的情况下将其锁定给特定的支付。默认情况下,揭示必须在五块内完成。
弱点在于承诺交易没有签名,因为此时没有东西可供签名。在第一个版本中,新的承诺只是简单地替换待处理的承诺。攻击者若在待处理的揭示中发现秘密,可以插入一个将该秘密绑定到自己支付的承诺。Hadamard表示,团队在撰写文章时发现了这一漏洞,并于10月21日通过新规则进行了修复。根据新规则,第一个提交的承诺获胜;只有在匹配的揭示或过期后,插槽才会清除;钱包在揭示前等待其承诺上链;公共RPC不暴露待处理交易。
Hadamard建议采用更严格的“盖伊·福克斯(Guy Fawkes)”规则,即追加承诺而非替换,但表示尚未实施。BB84的文档比文章更进一步,指出承诺和揭示意味着排序器无法窃取提款。
由于每条链的步数固定,钱包必须在最后一步通过在该最终支付中包含新的承诺来续期。如果错过这一步,地址将失效。保持计数同样重要:Hadamard表示,应用程序和链在生产环境中曾不同步,因此钱包必须能够从链数据重新同步。
秘密仍需像密钥一样受到保护。CLI警告其钱包文件以明文存储花费密钥,并将加密列为路线图项目。移除签名改变了支出的授权方式,但并未消除保护秘密的需求。
提现意味着信任运营商。BB84没有故障证明(Fault Proofs)。经批准的提议者通过自定义争议游戏将网络状态发布到以太坊,该游戏立即解决,且没有证明系统。Hadamard写道,根据L2BEAT框架,该链“甚至不属于第0阶段”。因此,提款依赖提议者的信任。
文档仍将提款描述为遵循OP Stack故障证明流程,具有七天的成熟延迟,但正如Optimism的解释所述,故障证明的存在是为了挑战错误的状态,而在此等待期间没有任何内容可以被挑战。排序器也由BB84运行。
| 从以太坊存入 | 普通ECDSA钱包和桥接合约 | 在BB84上支付 | 哈希链秘密、承诺规则和BB84排序器 | 标准提款(7天或以上) | 经批准的提议者 | 商户快速提款(2小时) | 提议者加上注册表运营商 |
文章以超越单一链的问题结束。最大的问题是哈希链账户能否成为通用Layer 2网络上类似EIP-7702风格或原生账户抽象的验证模式,这将使该理念无需迁移到专用链即可应用。
故障证明:Hadamard表示,额外的检查使用Optimism现有的Cannon工具包即可轻松证明。更安全的承诺规则:只追加的设计将弥补干扰和排序器的漏洞。完整论文:一份包含完整规则的更长篇幅的写作正在准备上传至arXiv。以太坊的广泛迁移:其量子路线图还包括验证者签名、数据承诺和证明系统。本文仅提供信息目的,不构成财务或投资建议。实验性网络存在技术和托管风险。
声明:文章不代表币圈网立场和观点,不构成本站任何投资建议。内容仅供参考!
免责声明:本站所有内容仅供用户学习和研究,不构成任何投资建议.不对任何信息而导致的任何损失负责.谨慎使用相关数据和内容,并自行承担所带来的一切风险.