作者:Haotian

简单而言,GOAT 网络将基于乐观挑战证明(OCP)提供的 BTC 脚本锁定原生安全机制和 ZKM Entangled Rollup 提供的可交互操作统一流动性结算层,提出了一种去中心化且安全的比特币 layer2 解决方案。具体如何做呢?

由于 BTC 主网脚本语言存在天然限制,无法通过常规 ZK Proof of Validity 来保证资产跨链存提的交易即时最终性确认,这使得常见的比特币二层扩展方案都需要一个「第三方可信主体」。

针对此问题 Babylon 提供了一种组合时间锁、一次性签名(EOTS)、多签共识等多种技术构建的独特跨链安全模型。

不过,Babylon 的设计依赖主网提供安全性,更像是一个共享安全层。和传统意义上把交易放在二层执行的 layer2 扩展方案相比,这类安全共识缺乏二层账本以及二层账本在一层的验证机制,若 Layer2 过度依赖 Babylon 的方案相当于会失去对自身链的安全控制,因此 Babylon 更偏好一些资产管理类的扩展方案,而并非常见通用型的安全解决方案。

而 Goat Network 就定位为一种具有 Native 安全跨链特性的,更通用的去中心化二层扩展方案。

它的 Native 原生跨链机制是基于 BitVM2 思路实现了一种乐观挑战协议(Optimistic Challenge Protocol),所有的计算和交互都在二层离线执行,当「挑战」出现时会在比特币主网执行链上协议,比特币 layer1 会充当仲裁者来确保安全性。

具体而言:

1)用户在 layer2 存入(Peg-in)的资产会先由 GOAT 网络资金池来管理,并锁定在一个 n-of-n 的比特币多重签名脚本中;

2)用户在 layer2 发起提现(Peg-out),GOAT 网络节点 Operator 会立即将资产转移给用户,相当于「预支」;

3)完成代付后,Operator 会向 GOAT 网络资金池发起一个包含挑战脚本和资产脚本的交易,要求将自己代付的资产以及相应奖励和手续费等划入节点账户;

4)为防止节点 Operator 作恶,在此引入了挑战机制,任何用户都可以支付一定 BTC 资产来调用挑战脚本,若挑战成功,节点 Operator 的行为被证实不诚实,节点的提款请求会失效,其质押的相应资产会划转到挑战者账户,若挑战不成功,则一定时间后,节点 Operator 会收到包含预支费用在内的全部资产;

通俗理解,GOAT Network 相当于基于 Entangled Rollup 构建了中间件网络协议,用户每存取一份资产都由 Entangled Rollup 网络上的节点做「预支」,用户端得到了绝对的安全保障,而节点端则通过挑战者机制(OCP)来排除潜在作恶的可能性,比如,节点 Operator 构造一个虚假的提款用户,从真实用户的资金池里提取合法资金。

和 BitVM2 提供的挑战思路有所区别,BitVM2 是基于 NAND 电路解决方案,并通过逻辑门 Commitment 追踪交易以及 Bisection 协议来进行挑战,这个过程受比特币主网脚本大小限制,若构造的交易比较复杂效率会较低。

而 GOAT Network 则基于 ZKM 实现了 SNARK 证明,且使用 Winternitz 签名来优化,因此可以达成最小的 Taproot 存储单位来达成比特币主网的脚本有效性验证。

有了 OCP 挑战者证明机制可以保证用户的资产池安全受到比特币主网的「仲裁」保护,但大多数情况下,用户在 BTC layer2 上执行交易,二层 Sequencer 负责验证和排序交易,依然存在 MEV 以及宕机等各种潜在安全隐患。因此 GOAT 网络同样基于 BTC 脚本锁定和一次性签名机制实现了 Sequencer 的去中心化,以此进一步巩固安全信任机制。

之前,我专门写文章分析过 Entangled Rollup 协议,它是一种统一的可交互操作性层,可以实现节点 Operator 之间的资产和消息传递,同时用一套去中心化的安全治理机制来保证安全性。

综上,GOAT Network 通过 OCP 挑战者机制和 Entangled Rollup 统一可交互层为其作为通用型 Native 跨链比特币二层解决方案提供了基础。

Note:以上解读只为基本的技术逻辑和框架,更多细节内容请详细阅读白皮书内容,可进一步了解:1)OCP 挑战者机制如何应用并优化 BitVM2 的实现效果;2)Entangled Rollup 如何实现跨链统一流动性;3)ZKM 在比特币脚本功能实现上性能优化细节等等。