多签跨链桥频暴雷,该如何消除中心化风险、提高安全性?
ZKbridge、Optimistic Bridge、TEE Bridge 都是很不错的方案,它们都在试图构建更加 Trustless 的跨链桥,消除中心化风险,提高跨链桥的安全性。前情提要:案例探讨》Multichain事件暴露MPC 钱包管理的哪些问题? 背景补充:MultiChain攻击》Circle紧急冻结 6300 万美元 USDC,MULTI反涨 11
本文目录
多签桥为什么不值得信任?跨链桥将如何改进?ZK BridgeOptimistic BridgeTEE BridgeBOOL :ZKTEE Bridge小结Multichain 出事至今已近两个月,现在事件的进展还扑朔迷离,真相还未完全浮出水面。但可以确定的是,为 Multichain 提供流动性的 LP 们、以及持有 Multichain 发行的反射资产 anyToken 的使用者,恐怕是要遭殃了。这回受影响的资产数额太大,不知道会不会有人出来兜底。
7 月 6 日,超过 126 亿美元的资产从 MPC 托管地址中被人为转出,根据合约审计团队 Beosin 的分析,资金的转出完全是人为操作,与合约漏洞无关,证明 Multichain 的 MPC 托管地址私钥已经被外力掌控。
在 7 月 14 日 Multichain 释出的官方宣告中,明确宣布了 Multichain 创办人 zhaojun 已经在 5 月 21 日被警方带走的讯息。然而令人大跌眼镜的是,宣告中提到,Multichain 的 24 个 MPC 节点私钥全部由 Zhaojun 掌握,且所有节点服务完全在其个人伺服器中执行!WTF!!!
多签桥的中心化风险,就像一只肥硕的灰犀牛,它就在那里,大家都能看到,但又选择性的忽略。关键这头犀牛还驮着数百亿美金的钜额资产!
目前,市面上 TVL 靠前的跨链桥几乎全部都是多签桥。在 Multichain 之前,已经发生过 Axie Infinity 官方桥 Ronin Bridge、Harmony Chain 官方桥 Horizen bridge 因私钥泄露而爆雷的事件,分别造成 62 亿美金和近 1 亿美元的损失。
多签桥为什么不值得信任?
一般而言,跨链桥分为三种,分别是轻客户端型原生验证、见证人型外部验证、基于 hash 时间锁的原子交易型本地验证。
其中基于 hash 时间锁的原子交易,由于其使用者体验欠佳需要使用者进行 2 次以上的操作,以及无法支援任意讯息传递,鲜有采用。
轻客户端型跨链桥则由于其工程实现上相对困难、相容新链的成本较高,目前仅被应用在一些仅需支援少数链的专用桥当中。见证人型跨链桥则开发实现较为简单、可以轻易的进行多链适配,且效能较好速度快,费用低,而成为大多数专案的选择。
见证人型桥通过一组外部的 Bridge Nodes 对跨链讯息进行共识签名,以此来验证讯息的真实性,因此我们也称之为多签桥。
跨链桥一般采用 lockmint 逻辑来链间传递资产,使用者通过锁住链上原生资产例如 USDC ,来 mint 目标链上的反射资产 例如 anyUSDC,这些锁住的资产会成为桥的 TVL,一旦被盗,使用者或者 LP 手中的反射资产将与原生资产脱锚,无法足额赎回。
当这些外部的 Bridge Nodes 如果串谋,或者他们没有保管好自己的私钥碎片导致其中 2/3 以上被骇客获取,这样的事情就会发生!
binance官方大多数多签桥,少则只有个位数的 Bridge Nodes,多则也就 20 多个。在 TVL 较低时,这些主体可能不会去串谋作恶,但当多签桥的 TVL 达到数亿美金时,没有人保证他们不会动心。
如果利益足够大,串谋 20 个节点,并不算很困难。这还没有考虑到,很多跨链桥的诸多节点往往都是利息高度相关的 友商,甚至一些跨链桥存在一个主体控制多个节点的情况,例如,Ronin Bridge 的 9 个节点中有 4 个控制在 Star Mavis 公司手中, Multichain 的情况则更加过分,1 人掌握所有的 24 个节点 !
一个成年人的标志是,不再相信人性经得起考验。
跨链桥将如何改进?
Mulitichian 的事件对于跨链桥领域,或许将成为一个转型的契机。当大家都不再愿意容忍中心化带来的安全风险时,多签桥 自然就玩不下去了。 如果说 多签桥 主导的时代是跨链桥的 10 时代,那么 10 时代正在加速离去,跨链桥 20 时代的主角必然属于更加安全的跨链桥。
那我们应该用什么样的跨链桥呢,跨链桥如何改进,才能在保证效能可接受的情况下,消除中心化风险呢?我们观察到,业内主要有三个方向,分别是 ZKbridge、Optimistic Brige 和 TEE Bridge。
ZK Bridge
由于 ZK 叙事的升温,近期将 ZK 技术用于跨链的探索也倍受关注,已经有不少该方向的专案获得融资。
ZKBridge 是一种将 ZK 技术用于轻客户端扩容的跨链桥方案。我们知道,轻客户端跨链桥有着极高的安全性,其本质是由目标链的共识层直接验证来自源链的讯息,不引入任何第三方的信任假设,但轻客户端需要不断维护源链的区块头序列,此间需要对每个新区块头执行验证,这带来两大难点:
巨大的链上开销,可能会使得桥不具备经济可行性
如果要做一个通用桥,每新增支援一条链,都需要至少开发两个新的轻客户端,相容新链的成本较高,很难做成真正的通用桥。
引入 ZK 技术之后:
可以在链下验证新区块头,并将新区块头及其有效性证明Zk Proof一并提交到链上,链上可以直接验证 ZK Proof,即可等效于验证新区块头,但开销可以大幅缩减。更进一步,还可以把用区块头对交易执行 SPV 验证的过程也放到链上;
ZK 技术简化了轻客户端的开发,链上轻客户端仅需验证 ZK proof,比验证新区块头的合约逻辑要简单许多。
但 ZKbridge 的效能极限依旧弱于多签桥,以 EVM 为例,验证一个 ZK proof 的成本最低也在 500k gas,和多签桥只需验证一个签名的 21k Gas 相比,高了了将近 25 倍,这最终还是会转化为前端使用者高昂的跨链费用。尽管通过批处理,可以让多笔交易分摊一次处理的成本,但这又会带给使用者较长的等待时间。
此外,Zkbridge 作为轻客户端桥,需要接入链支援智慧合约,BTC 类的非智慧合约链是无法接入的。
Optimistic Bridge
Optimistic 桥是对多签桥信任根的改良。Optimistic 桥在多签桥的基础上,引入了挑战视窗期的概念和一个名为 挑战者 的角色。
我们知道,一个讯息在多签桥中的传递过程是这样的
发起:使用者在源链通过与 Source dApp 互动,发起跨链讯息传递
链下签名:讯息被传递给 Bridge Nodes,完成共识签名之后传递到目标链
链上验证签名:目标链验证该讯息是否由正确的 Bridge Nodes 的签名
执行:验证后的讯息被提交给 Taregt dApp 进行执行
在 Optimistic Bridge 中,讯息在完成第 步之后,不会立刻进入第 步,而是会进入一个计时环节,计时结束后,如果没有挑战者对该讯息提出质疑,该讯息才会进入执行环节,被 Taregt dApp 执行。
如果挑战者对讯息进行质疑,那么该讯息将被标记为 不可信,不可信 讯息将不会进入执行环节,挑战者将会把它提交会源链,由源链的仲裁合约进行仲裁,如果讯息在源链真实存在则证明挑战者误报,如果讯息在源链并不存在则证明 Bridge Nodes 欺诈,签名了虚假的讯息。仲裁结束后,会给诚实的一方奖励,而惩罚不诚实的一方。
通过该机制,Optimistic bridge 将多签桥的信任根从 mofn,提升到了 1ofn,只需要有一个诚实的挑战者,桥就是可靠的。
Optimistic Bridge 的缺点在于增加了使用者的等待时间,该时间一般会在 30min 左右,使用者必须等待挑战视窗期的结束,才能完成完成跨链操作,这在很多场景下都是行不通的,使用者并没有这个耐心。实践中, Optimistic Bridge 往往采用双模型机制,小额转帐或是非敏感操作会直接跳过挑战视窗期,只有大额转帐或者敏感操作,才会有挑战视窗期,具体阈值可以由应用程式自定义,或是由使用者在前端自己选择。
Optmistic Bridge 的机制无疑是对多签桥的巨大改良,既保障了安全,也兼顾了效能。但可惜的是安全和效能并没有真正意义上兼得,只是把安全优先还是效能优先的选择权交给使用者,不能算是完美的解决方案。
此外,由于必须通过合约实现链上仲裁,该方案依旧不能支援 BTC 类的非智慧合约链。
TEE Bridge
TEE Bridge 是指在多签桥的基础上,要求所有节点必须使用 TEE 装置接入网路。TEE 全称为可信执行环境 (Trusted Execute Environment),它是给定装置上执行的与主作业系统隔离的计算环境,就像一块飞地 (Enclave),这种隔离是通过硬体强制实现的。
在 TEE Bridge 中,节点使用 TEE 装置保管私钥碎片,签名程式也完全在 TEE 中执行,外部骇客将很难窃取。与 ZKbridge、Optimistic Bridge 不同的是,TEE Bridge 是通过节点硬体来提升跨链桥的安全性,而非改变链上的验证机制。
TEE Bridge 的优势在于
在提升安全性的同时,完全没有在多签桥的基础上牺牲效能可以相容 BTC 类的非智慧合约链但 TEE Bridge 依然存在内部串谋的风险。2/3 多数的节点如果串通,依然可以对桥发起攻击。
BOOL :ZKTEE Bridge
接下来,我要介绍一种更加巧妙的的跨链桥正规化:ZKTEE Bridge,它由跨链桥专案 Bool Network 首创。Bool Network 在 TEE Bridge 的基础上,结合 ZK 技术,实现了节点的完全匿名,从而无法串谋,保障了桥的超高安全性。
Bool Network 本身是一个众多 TEE 节点构成的非许可网路,任何主体都可以通过 Bool Network 申请建立一个或多个 DHCDynamic Hidden Committee。如果某个主体需要建立一座支援 10 条链的跨链桥,那就申请 10 个对应的 DHC 就可以了,每个 DHC 都管理着一组 MPC 私钥分片,他们将会负责验证和签名跨链讯息。
一个 DHC 一般会包含 10 到 20 个 TEE 节点成员,具体由 DHC 的建立者来设定,签名阈值一般是 2/3,但 DHC 的建立者也可以设定更高的阈值。
Bool Network 会随机的为所有 DHC 分配成员,并且会定期洗牌,重新分配。借助 ZK 技术,Bool Network 可以实现分配成员的过程是完全随机的,且分配完成之后,每个 TEE 节点都不知道自己被分配到了哪个 DHC,也不知道自己和哪些节点分到了一个 DHC,更不知道别的节点被分配到了哪个 DHC。这种感觉,就像参加假面舞会一样,谁也不知道谁是谁!
这是通过 Bool Network 的 Ring VRF 演算法实现的。具体来说,Ring VRF 在 DHC 分配节点成员的时候,会赋予每个 TEE 节点一个临时身份,该临时身份表现为一个 ZK proof,可以证明某个节点属于当前 DHC,但不暴露节点的具体资讯。DHC 成员之间将通过临时身份相互识别,并通过加密通讯完成 MPC 签名的工作。在当前 Epoch 结束之后,Ring VRF 会重新洗牌所有 DHC 的成员,此时所有临时身份都会失效,Ring VRF 将为每个节点分配新的临时身份。
总之,Bool Network 通过 ZK 技术与 TEE 技术的巧妙结合,实现了节点之间的完全匿名,杜绝了串谋的可能,在 TEE Bridge 的基础上进一步提升了安全性。
小结
ZKbridge、Optimistic Bridge、TEE Bridge 都是很不错的方案,它们都在试图构建更加 Trustless 的跨链桥,消除中心化风险,提高跨链桥的安全性。但 ZKBridge、Optimistic 依旧存在效能上的牺牲和可扩充套件性上的短板,TEEBridge 则存在串谋攻击的可能。
BOOL Network 提出的 ZK TEEBridge 则是一个从各方面都无可挑剔的方案,它的优势包括:
不牺牲的效能,跨链讯息传递的速度和费用保持和 多签桥 同一水平支援非智慧合约链,且适配新链的工程量较低杜绝了 TEE 桥中可能存在的串谋风险,实现了不亚于轻客户端桥的超高安全性本质上是一个去中心化的、Trustless 的签名机,将不限于应用在跨链领域,而是可以扩充套件到预言机、分散式私钥管理等领域相关报导MultiChain跨链桥拖累公链,Fantom该如何走下去?
Multichain也沦陷,跨链桥还能信吗?用户如何自救
Multichain CEO已失联一周!核心权限停摆,宣布暂停部分跨链服务
Web3入口革命》为何MPC钱包比Metamask 等传统钱包更安全、更适合新手?
Tags Harmony ChainMultiChainOptimistic BridgeRonin BridgeTEE BridgeZK BridgeZKTEE Bridge