构建zkBridge跨链桥:B² Network如何用BitVM挑战机制落地双向管道?

异构链通常又有 BTC 和 EVM- Compatible 链,以及 EVM 和非 EVM 链之间(SUI、Aptos 等支持智能合约但标准和数据结构不统一的链),非 EVM 但支持智能合约的链,在此就不赘述了。难点是如何把 zkBridge 应用到和 BTC 主网的跨链桥上。

和一些以中心化托管机构信用背书的 BTC 跨链解决方案不太一样,以「模块化 B² Hub」、「BitVM 挑战者模式」等为核心构建的 BSquare 似乎倾向于更 Technical 的方式。B² Buzz 目前也已累计了超 6 亿美元 BTC 资产。那么 @BSquaredNetwork 如何基于 zkBridge 实现资产跨 BTC 到 layer2 的双向安全桥接?基于技术理解剖析下:

通常情况下,要实现两条链之间的资产安全跨链,最简单就是中心化托管机构撮合并统一管帐,但若要执着一种 Technical 的方案,就需要根据链原生特性做一些特别的设计:

同构链跨链桥

「同构链」指代双边都支持智能合约的链,比如 B² 和其他 EVM- Compatible 链之间的跨链,双边链可以基于统一的可交互操作通信标准,由智能合约控制资金的双向流动。存在两种资金管理模型:

1)智能合约管理流动性资金:可在链 A 和链 B 之上都建立一个开放透明的流动性池,两边池保持 Mirro 镜像管理模式,假定 A 链上有用户存入资产,资产会被锁在 A 链流动性池内,而 B 链上的流动性池则立即向用户释放镜像流动性资产。两边流动性池始终保持总量一致,有个中心化的服务器会监听两条链上的资金进出情况,并实时进行资产调度管理。

此种方案,需要双边链都存在一个跨链流动性池,这样才能保证资金的正常流动,如果 A 链流动性不足则该链上的用户就会停止跨链。不足之处是需要设计有效管理机制来防止双花和恶意攻击。

比如用户在 A 链和 B 链都有资产,且同时在 A、B 链都发起交易请求,万一监听出错,A、B 链的资产池没做到状态同步,就有可能让两笔交易同时发生,用户等于多花费了池子内的非所属资产。

2)基于 ZK 技术底层管理智能合约状态:在 A 链和 B 链分别部署智能合约,再搞一条 zkBridge 跨链桥来负责跨链通信管理,当 A 链用户向 B 链发送交易时,A 链智能合约会 Burn 掉一笔资产,然后生成 ZK Proof 证明传递给 B 链合约,B 链合约在验证过信息无误后,在 B 链新 Mint 一笔资产。通过 ZK 技术在跨链环境下的信任机制来实现资产的跨链流通。

刚刚以 10 亿估值融资的 @PolyhedraZK 采用的就是此种方案,依靠智能合约和 ZK 技术,实现了多 zkBridge 主体的去中心化跨链解决方案。但此类方案仅适用于同构 EVM 链之间,若遇到 BTC 这种无法支持智能合约的链环境,就无法有效实施。

异构跨链桥(BTC 和 EVM- Compatible 链)

异构链通常又有 BTC 和 EVM- Compatible 链,以及 EVM 和非 EVM 链之间(SUI、Aptos 等支持智能合约但标准和数据结构不统一的链),非 EVM 但支持智能合约的链,在此就不赘述了。难点是如何把 zkBridge 应用到和 BTC 主网的跨链桥上。B² 在处理资产流入和流出双向 Channel 跨链问题时,正面临这样的技术挑战;

1)从 Bitcoin 到 B2 资产流入时,B² 采用了 Ployhedra 提供的 zkBridge 跨链桥方案,具体而言:B² 公开了一个 MPC+TSS 可信安全多钱地址用来存入 BTC 资产,当 zkOracle 节点监控并记录到该资产的流入后,会将存入状态生成 ZK Proof 证明,比如交易金额、收款地址等信息,该证明会传递给部署在 B² 上的 AA 智能合约,经合约校验 ZK 证明信息无误后,向用户在 B² 链的地址 Mint 释放资产。

2)从 B² 向 Bitcoin 流出 Withdraw 资产时,B² 则联合 Polyhedra 特别定制了跨链桥。简单来说,当用户在 B² 发起资产 Withdraw 请求时,合约会先把用户的交易请求在 B² Hub 中发起一个 Proposal,经由其他 Validators 验证是否准予通过。

此前我在文章中分析了,B² Hub 的 Validators 其实是二层链的共识管理者,当大多数选择了 Approve 投票等同于该资产提现请求是合法的,然后该投票结果会以 ZK Proof 形式传递到 MPC+TSS 多签地址上,由该地址直接向用户释放资产。

若用户提出了提币请求,还被 Validator 非法拒绝了,怎么办呢?由于 B² Hub 的节点之间都受 BitVM 挑战机制的约束,用户可以向 B² Hub 发起挑战,证明自己是一笔合法提币请求,此时验证节点会因执行了错误的决策而遭到惩罚。所谓特别定制,其实就是在 zkBridge 的基础上加上了 B² 特有的 BitVM 挑战者机制,以此来确保资产向非智能合约平台流入时的状态处理安全。

以上

不难看出,模块化设计 + 特有的 BitVM 挑战者机制给了 B² 诸多技术实践落地的可能性,对 BTC layer2 后续开发者处理类似资金跨链方面也有较大的参考意义。

(声明:请读者严格遵守所在地法律法规,本文不代表任何投资建议)

(0)
上一篇 2024年3月18日 下午12:42
下一篇 2024年3月18日 下午1:48

相关推荐

发表回复

登录后才能评论
微信

联系我们
邮箱:whylweb3@163.com
微信:gaoshuang613