跨链简史:从资产桥到互操作
跨链一开始的目标在于让资产能从一条链转移到另一条链,又可以安全的返回,后来扩展到解决两个或多个不同链上资产及状态的互相传递、转移、交换的问题。随着现在跨链基础设施的日趋成熟,对于跨链概念的炒作已经冷却。在这样一个时刻,我们来对现有的跨链技术形态,做一个冷峻的观察。
跨链技术被认为是区块链领域发展的圣杯,是实现万链互通的关键技术。现在的跨链技术形态,有些是在实现资产互通,有些是提出了一套通信协议,实现区块链间的通信,还有些是提出了新的系统架构和运行模式,支持更多区块链的接入。
根据跨链技术的演进和实现方式,以太坊的创始人 Vitalik 曾经总结了 3 类跨链技术,分别是哈希时间锁(HTLC),公证人,侧链/中继。我们将把公证人,和侧链/中继进一步分类,各自分成两个小类,这样,我们将分别介绍五种跨链方案。
哈希时间锁合约
哈希时间锁合约是通过一套密码学方法,来实现跨链的去信任资产交易,比如我的 BTC 和你的 ETH 交易,就可以通过哈希锁来实现交易的原子性。
其原理大致如下:用户 A 生成随机数 s,并计算出该随机数的哈希值 h=hash(s) 发送给用户 B,A 和 B 通过智能合约先后锁定各自的资产。A 公开出示 s 可获得 B 锁定的资产,同时 B 也获得了 s,可获得 A 的锁定资产,若超过设定的时间,A 没有出示 s,智能合约中锁定的资产会自动回退给双方。
公证人
公证人机制是指由公证人建立一个中间账户,用户将资产转入中间账户,由公证人跨链发行一种映射原 Token 的影子 Token 给到用户。当用户需要赎回的时候,将影子 Token 销毁,并向公证人提供证明,公证人将中间账户中的原始 Token 转到该用户的地址。
公证人必须是可信的。公证人可以凭借自身信用,也可以通过智能合约做超额抵押来获得信任。公证人可以是单个主体,也可以是多个主体通过某种规则组合形成的联盟。
根据公证人的单主体还是多主体,以及公证人的信誉来源是超额抵押还是自身信用,我们可以把公证人方案划分为 4 个子类:
其中,HBTC,BTTC,imBTC 均属于 ② 方案,tBTC 属于 ③ 方案,X-BTC,WBTC 属于 ④ 方案,采用方案 ① 的项目暂未发现。你可能发现,全是比特币跨链项目,为什么如此,我们后文在对比分析中会有详述。
我们并不需要关注公证人的数量,因此,我们将公证人方案,仅按信任来源,分为两个子类。
超额抵押
公证人通过超额抵押建立信用,这意味着,公证人抵押的资产 v2,必须大于中间账户中的资产价值 v1。当公证人出现作恶行为或者过失行为,导致中间账户里的资产遭受损失,那么抵押的资产将可以用来赔付给受损失的用户。然而,超额抵押会给公证人带来资金成本,这些成本,会转化为高额的跨链的手续费,而高额的跨链手续费会让用户望而却步。
自身信用
公证人也可以通过自身信用来背书,让用户信任。但这种信任是中心化的,和区块链的基本精神是背离的。但由于这种方式手续费低廉,甚至免费,因此还是吸引了大批用户。这种由中心化机构担保的跨链方式,对于跨链资金体量小,安全诉求低的用户而言,也是很好的选择。
侧链/中继
第三种是侧链/中继的方案。侧链和中继其实是同一个概念,中继链就相当于多条链共同的侧链,为了简化表述,我们后文统一称为桥接链方案。
桥接链方案我们分两类来说,分别是通用方案和同构跨链专用方案。
通用方案
桥接链通用方案和公证人方案一样,仍然存在一个中间账户,但中间账户的安全,不靠公证人来保护,而是靠智能合约来规范,这意味着中间账户将是一个合约账户,其资产管理规则被智能合约的代码约束,而不是由公证人约束。如果代码本身没有问题,只要部署该合约的链是安全的,那么合约中的资产就是安全的。
当然,如果桥接链本身有问题,也会影响合约账户里的资产安全。因此,验证人们必须 Stake 一定价值的 Work Token 来保障桥接链的安全运行。假设这个价值是 v3,那么这个 v3 是可以远远小于合约账户里的资产价值 v1 的。
为什么 v3 可以小于 v1 呢?因为现在较为通行的 BFT-PoS 类共识,几乎杜绝了能够篡改账本的“双花”攻击(如果桥接链账本被篡改,则有可能间接威胁到合约账户中的资产安全),实现了更强的共识安全。BFT-PoS 可以做到即时确定性,而非概率确定性,攻击者即便掌握了半数以上的 Staking Work Token,最多只能做到拒绝签名区块,让封块速度减慢,让网络无法处理交易,已经形成最终确定性的区块中的交易是无法被逆转的。我们可以认为,只要 BFT-PoS 链没有代码故障,无论 Token 市值多小,都是安全的。
虽然恶意的验证人,无法动摇中间账户内的资产安全,但网络瘫痪,停止验证新交易,也不是我们希望看到的状况。因此,v3 最好也不要太小,我们还是希望桥接链的 Token 市值越大,Staking 比例越高,去中心化程度越高越好。
v3 可以小于 v1,因此不会有超额抵押带来的高额跨链手续费,使用跨链桥将可以做到很廉价。那么有没有方法进一步降低跨链成本呢?可能有的朋友会想到让多条链复用同一座桥,这便是 Poly Network 的思路。
同构跨链专用方案
桥接链通用方案,看起来已经很完美了!但我们对于跨链,还有更高的追求。其一,多链复用的资产桥,可以尽可能多的兼容现有的链,但新的链不断涌现,要再去扩充兼容太麻烦了,能否有一个通用的链框架,让新链遵循框架,能够一劳永逸的实现跨链呢?其二,我们对于跨链的追求,并不只是想实现资产桥,我们还希望链间能传递更丰富的信息,有强大的互操作性,例如可以跨链调用合约,让多个链真正连接起来,形成有机整体。
基于对以上两者的追求,区块链世界里有了波卡和 Cosmos 这样的同构跨链项目。两者都采用了“1 母链 + N 子链”的架构,其中母链是所有子链的公共桥接链,任何开发者都可以按照规定的框架开发子链,并申请接入母链。
Cosmos 母链名为 Hub,子链名为 Zone,通过内置的 IBC 协议,Zone 之间可以实现跨链通讯,既能传递资产,也能传递其他格式的信息,实现跨链互操作性。波卡母链名为中继链,子链名为平行链,平行链之间通过 XCMP 协议来通讯,以实现跨链互操作。事实上,波卡的中继链不光起到桥接作用,还可以让接入的平行链共享其共识层的安全性,而对于 Cosmos 的 Zone 而言,链的安全是需要自己负责的。
对比分析
哈希时间锁虽然能实现跨链交易的原子性,但无法实现资产的跨链流通。这意味着,通过哈希时间锁,我的 BTC 和你的 ETH 进行安全的交易,但并不能让 BTC 流通到 ETH 上,也无法让 ETH 流通到比特币链上。但哈希时间锁的通用性最强,对链的属性没有任何限制。
公证人方案,可以在一条图灵完备的链和一条非图灵完备的链之间实现资产跨链。当然,这种资产跨链是单向的,只能由非图灵完备的链上跨到图灵完备的链上。例如把 BTC 引入 ETH,反之把 ETH 引入比特币链则不行。这并不是公证人方案的限制。事实上,公证人方案也可以实现两条图灵完备的链间的资产双向跨链流通,但由于其要么费率较高(超额抵押方案),要么倾向于中心化(自身信誉方案),人们更多的会采用桥接链方案。
前文提到一个问题,为什么比特币的跨链更多采用了公证人方案,而非桥接链方案呢?这是因为比特币链不是图灵完备的。在这里解释一下,为什么桥接链只能在双图灵完备的链间跨链呢,是因为桥接链不是一个独立的存在,而需要部署在两端链上的合约配合,就像一座桥不能悬空存在,必须在两岸有桥墩作为依托。
在双图灵完备链间跨链,桥接链方案更有优势,主要体现在无需超额抵押,且可以多链复用,可以更低的成本实现资产跨链。像波卡,Cosmos 这样的跨链项目则直接搭建了一个全新的多链架构,超越了资产桥,在同构链之间实现了丰富的互操作性。
我们阐述了三大类(五小类)的跨链方案,我们将各方案的特性对比做成表格。
以上我们对各跨链方案的阐述顺序,其实有一条清晰的时间脉络。最早的主流链有比特币和以太坊,人们想要实现 BTC 和 ETH 之间的交易,最先能想到的便是哈希时间锁这样的,不需要借助任何外力的纯密码学方法。2013年5月, Nolan 在 BitcoinTalk 论坛提出了原子转移(atomic transfers)思路。后来,人们开始建设基础设施,建立资产桥,让链间的资产能够互通,在这当中,比特币作为市值最大的加密资产,吸引了很多人想把比特币资产导入到其他链,但由于比特币不支持智能合约,人们只好使用公证人机制。
由于理念的不同,有的项目采用了去中心化的,成本较大的超额抵押方案,有的项目则采用了简单直接的中心化托管方案。为了降低跨链成本,人们想到了,让多链共用一座链桥的方式。为了一劳永逸,实现对新链的兼容性,人们制定了新链开发的框架和标准,如 Substrate 和 Tendermint,为了实现更多维度的互操作性,人们创造了同构多链架构,如 Polkadot,Cosmos。现如今,区块链跨链基础设施日趋成熟,以至于人们已经不再常常讨论跨链,就像我们看到灯亮起时,不再谈论“电”的原理一样。
区块链的从业者们从未停止思考,从未停止追求更优方案,在他们的推动下,区块链世界像生物一样向着更复杂,也更简单的方向不断演化着。
Bifrost 启示
由于 Bifrost 所创造的衍生品,必须有充足的流动性才能发挥其释放质押资产流动性的作用。其中,衍生品是否能跨链流通对于其流动性非常重要,vToken 有必要作为 DeFi 基础资产,参与到除波卡生态以外的其他生态中,尤其是以太坊生态。从波卡到以太坊,已经有不少现成可选的桥接链,在 Bifrost 的 RoadMap 中有自己开发桥接链的计划作为备选方案。
众所周知,区块链行业对于有价值的新创造溢价极高,同时我们发现,区块链行业的环境也越来越适合新的创造,因为基础设施越来越完善,人们不必重造车轮。Bifrost 专注于自身业务,不断打磨优化产品逻辑,做好质押资产的流动性释放即可。桥接链和波卡 Substrate 对于 Bifrost 而言是基础设施。然而,对于那些以 vToken 为底层资产的 DeFi 应用,Bifrost 又何尝不是其基础设施?整个行业的协同创新,往往就是这样层递式的。
Bifrost 是什么?
Bifrost(彩虹桥)是波卡生态 DeFi 基础协议,致力成为质押资产提供流动性的基础设施,推出面向 Staking 和波卡平行链卡槽(Crowdloan)的衍生品vToken。目前已获得 NGC、SNZ、DFG、CMS 等机构数百万美金融资和 Web3 基金会 Grant,同时也是 Substrate Builders Program、Web3 Bootcamp 成员。
vToken 可在 DeFi、DApp、DEX、CEX 等多场景下优化 Trading,通过 vToken 实现 Staking、Crowdloan 等质押权益的转让通道,实现质押资产风险对冲,扩充场景如 vToken 作为抵押物进行借贷时,其 Staking 收益可抵销部分利息,实现低息借贷。