如何理解GoatNetwork提供的比特币原生扩展白皮书?
时间:2024-07-10 来源:区块链网络 作者:金色精选
作者:Htaotian 来源:X,@tmel0211 如何理解@GOATRollup 最新发布的比特币Native扩展白皮书?简单而言,GOAT网络将基于乐观挑战证明(OCP)提供的BTC脚本锁定原生安全机制和 @ProjectZKM Entangled Rollup提供的可交互操作统一流动性结算层,提出了一种去中心化且安全的比特币layer2解决方案。具体如何做呢? 由于BTC主网脚本语言存在天然限制,无法通过常规ZK Proof of Validity来保证资产跨链存提的交易即时最终性确认,这使得常见的比特币二层扩展方案都需要一个“第三方可信主体”。 针对此问题 @babylon_chain 提供了一种组合时间锁、一次性签名(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在比特币脚本功能实现上性能优化细节等等。 查看更多 |