刚刚出现了一则关于比特币的非常有趣的新闻——Robin Linus (,ZeroSync 和 BitVM 的开发者 ),推出了一种叫做 Binohash 的东西,可能会极大改变网络中智能合约的局面。基本上,这是一种让比特币脚本“读取”交易属性的方法,无需软分叉,也不需要修改共识规则。听起来像科幻小说,但它确实是真实的。



直到现在,没人能解决的一个问题却很简单:比特币脚本被刻意限制了。它无法访问诸如输入、输出、金额或交易中的其他字段等直接细节。当你想搭建高级协议时——比如在比特币与其他链之间的 BitVM 桥——这会让问题变得异常棘手。你需要证明:某一笔特定交易确实发生过,并且具有某些特定属性——例如对应正确地址的 peg-out (——否则你就只能依赖可信的预言机或轻客户端,而这又带来了诚实性方面的假设。

这就是 Binohash 发挥作用的时候。这个方案非常有创意:它会为整笔交易创建一种抗碰撞的哈希,能够在脚本里直接计算并读取。由于它具有抗碰撞性,你不可能通过用另一笔交易替换一笔具有相同哈希的交易来欺骗系统。这就像是交易的“身份文件”。

那么它在实践中是如何运作的呢?Robin 利用了比特币遗留的两个旧版操作码行为——具体来说是带有 FindAndDelete 步骤的 OP_CHECKMULTISIG。基本原理是:在验证签名时,系统会在计算 sighash 之前,把 scriptCode 中提供的所有签名都删除掉。Robin 巧妙地利用了这一点:在锁定脚本里预先放入很多预定义的“虚构”签名,然后在花费时选择其中的一个子集。不同的子集会生成不同的 scriptCode,从而产生不同的 sighash。随后,花费者会“grind”)测试很多种组合(,直到 sighash 满足类似 proof-of-work(工作量证明)那样的难题。

数字令人印象深刻。采用工作量参数 W₁ = W₂ = 42 bits,你可以得到约 84 bits 的抗碰撞强度——对大多数用例来说非常强。一个诚实的用户只需要大约 ~44,6 bits 的 grind(工作量/尝试量),成本低于 US)(云 GPU 的成本)。事实上,已经有一笔真实交易在比特币主网中被挖出,用来证明了这一点。

其影响极其重大。它让 BitVM 桥具备无需信任的内省能力——你可以在不依赖预言机或完整轻客户端的情况下验证 peg-in 和 peg-out、状态差异,等等。这基本上是在不改动共识规则的前提下,把类似 covenant 的功能引入到比特币中。这类创新也正是展示了为什么比特币仍在以人们意想不到的方式不断演进。
BTC0.04%
查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
请输入评论内容
请输入评论内容
暂无评论