问题何在?
假设此刻我们回到中世纪,A村以卷心菜闻名,B村村民靠养鸡为生。如果一个A村民想要鸡翅,他就需要去附近的交易站,看看有没有来自B村,正好想要“以物易物”。
这时,我们首先要确认:有人愿意接受“卷心菜”作为款项吗?可是问题来了,这笔交换双方互不认识,彼此如何能够相信对方,做到一手交鸡翅,一手交卷心菜呢?或者,还有其他什么方法吗?
如果B村民人高马大,他要是拿走卷心菜而不交出鸡翅,瘦小的A村民似乎一点办法也没有。
或许您会认为,这位B村民最好遵守规则,否则他在坊间的声誉不佳就不会再有人愿意跟他以物易物了。但这个观点能否成为A村民交易的保险,且次次管用吗?想象一下,如果B村此刻饥荒肆虐,这是这位村民手里的是他有的最后一只鸡,那声誉对他来说还有多重要呢?
传统解决方案
传统解决方案是引入一个第三方,给其一定的权威性。在刚刚的故事中,就是为何交换要先去交易站,因为那里或许有一个警察监视着所有的以物易物。警察同样人高马大,而且他还有一根“警棍”。于是只要他在,所有人都乖乖按规则交易。这个警察从所有交易中抽成作为回报,于是皆大欢喜。但其实还有一个选项,可以去一个没有警察的交易站进行以物易物。
或许您会认为,这个警察手中权力过大。您说的没错,我们稍后会探讨这一点。首先,我们先来快进一下看看几千年后,在更为文明的时代,人们是如何进行公平交易的。
‘钱’的出现
现代生活,我们不再需要以物易物,取而代之的是,我们使用钱来购买产品和服务。当然,“警察”还在,他们监视着交易。偶尔,他们依然带着“警棍”,因此这一部分没有太大变化。
尽管钱有各种形式,我们都称其为“货币”吧。比如,出国时,我们需要用一国货币兑换另一国货币,这也是一种以物易物形式。当然,此时的交易站变身成为银行,它是监视所有过程的“权威机构”。不过前提是,交易一方必须相信这个权威机构。银行家不使用“警棍”,但它把钱锁在地下保险柜中,因此一般人无法进入其中,除非先给它钱,否则没法从银行那里换到钱。尽管此时看似一切已经近乎公平了,但并非毫无问题。
权威之惑?
刚刚我们已经提到了多个权威者/机构,可以是警察、银行或是法律制定者,他们手中握有很大的权力。而历史中也不乏有些国家因为不法行为、贪腐或是无能的权威机构,导致经济受到严重打击。
放眼全球,2008年金融危机可以说是由银行和金融机构的不法行为导致的。
此外,权威机构属于单点故障,这意味着如果一个“警察”所管理的一个市场受到攻击、被破坏,整个市场会立刻处于风险之中。因此,一般基于权威机构的系统运行良好,但它确实存在一些问题。这个系统我们已经使用了千年,难道真的没有改进的余地吗?
进入区块链时代
并非巧合,2009年比特币区块链诞生了,恰逢金融危机。在其著名的白皮书中,第一句话是这么写的:“一个纯粹的点对点(peer-to-peer)版本的电子现金,它使在线支付得以由一方直接发送给另一方,而无需通过金融机构。”
从比特币之后,涌现出了更多的区块链,但是它们大致基于两项原则:
- 所有交易公开,一旦确认通过,它们将被写入一个永久的公开记录册,这个就是账簿(ledger),所有人可见。
- 交易由公开共识确认:许多独立参与者必须同意——交易须遵守区块链规则。
需要注意:没有任何个体的权力高于其他人。简言之,它用算法和集体中的“信任”替代了中心权威机构中的“信任”。
算法中显而易见的优势在于:它无法改变(因此对贪腐免疫)且为公开(因此在决定是否参与前可以充分了解)。
另一方面,算法会奖励行为规范的参与者,只要大部分行为符合逻辑,集体共识就可以信任。每一个区块链的特殊共识规则是使其免受行为不符逻辑或恶意操作带来的风险。
比如,开头隐喻中的交易站,我们不再需要“警察”,取而代之是一个验证者(validator)实时网络,负责验证每一笔交易,判断其是否为大部分验证者所接受。验证者们将交易费用分摊给所有人,同时验证者也可以是交易者。验证者越多,他们越独立,整个系统也会更安全。
一旦用户相信区块链技术,他无需其他“信任”机制:
* 所有交易,要么成功完成,要么从未发生。不会出现一方带着交易双方的“筹码”悄然离开。因而,此处无需“警棍”。
* 账簿不可伪造,因此关于他们账户中所拥有的资产,抑或是他们是否真的是这些资产的所有者,这一切都无法“瞒天过海”。
* 一些区块链允许智能合约运行。这些智能合约就好比是在交易站公告牌上列出了所有指令,所有人可见,由验证者达成共识执行。可以将其看作是公开的《操作指南》,交易者可以决定是否遵照其指示,并受验证者监管。
因此,在区块链中(也就是验证者在交易站监管所有一切的意思),交易能够安全进行,无需信任中心化权威机构。此外,通过智能合约,许多操作能够自动进行;同样地,无需第三方介入其中。
值得注意的是:基于验证者的数量,达成共识可能会是一个缓慢过程。一般情况下,交易不会立刻完成。这是因为当共识有待达成时,是否通过验证交易会因为用户所询问不同验证者而得到不同的结果。因此,在提交交易后会需要一段时间,这个交易可能被质疑,也可能被退回,也称为“回滚(rollback)”。这种情况必须小心处理。
最后,所有区块链都开发了各自的原生货币(比如BTC,ETH),因为要支付验证者费用或简化交易,这种做法顺理成章。然而,这些原生货币仅在各自的区块链中有效。就好比,每一个交易站都创造了各自的货币,其他交易站均不通用。
现在,我们来看看如何移除这些挡在交易站之间的障碍吧。
交易所和去中心化交易所
加密货币交易所聚集着一群专门进行货币交易的交易员。他们中的一些人也可以进行传统法币交易(美元、欧元等),当然这是另一个话题了。有些人还能够交易来自不同区块链的原生货币。他们是如何做到的呢?
中心化交易所(CEX),也叫做托管交易所,比如币安或者Coinbase,它们替用户管理资产。用户把货币交给CEX(没错,就像交给银行那样),交代需要做的事项,然后CEX代办。事项完成后,用户即可兑回他的货币。
再回到“交易站”这个比喻,CEX就是一个拥有良好关系网的交易者,他接受您提供的原生货币,他让在另一个交易站的代理人为您的账户转入您需要的另一种货币。因此,您需要对CEX非常信任。正如我们前文所提及,这种基于权威机构的方式有很多问题,其中包括贪腐风险。当然,CEX也是众多黑客的诱人目标。
针对这些问题,区块链式的解决方案是通过去中心化交易所,即DEX,比如Uniswap、SushiSwap。它们提供CEX相同的功能但是通过智能合约执行。记住:智能合约仅仅是张贴在公示板上的指令(就像《操作指南》),所有验证者遵守这些指令且同意其结果:要使用DEX,您需要告诉验证者您想用加密货币A换加密货币B,只需要按照张贴在公示板的DEX指南操作即可。
这其中的即时性好处包括:
* 智能合约要么完全执行,要么根本没有发生。所以交易的资产要么兑换成功,要么依然在您的账户中:不会发生一方获得交易双方的资产,当然也无需把您的资产交给第三方。
* 交易所的规则公开:所有人可见,因而没有贪腐的风险。
* 智能合约(正确编写的话)是很难被破解的,就像要破解其运行的区块链一样难。
不足在于DEX只能在其智能合约所运行的区块链内运作。这是最后一块拼图发挥作用之处。
区块链之“跨界”
终于到了我们本期博客的“重头戏”:如何在区块链之间移动资产?
想要在不同区块链之间“以物易物”的交易者再次陷入了信任问题:他们彼此没有理由相信对方,因为区块链的保证仅适用于从始至终在一条区块链上的交易(因为验证者能够监视到整个过程)。
不过,在解释这个问题的解决方案前,我们需要清晰定义一下。
首先,加密货币,不是“卷心菜”,它们无法在原生区块链之外存在。因此,我们没法把比特币(原生于比特币网络)挪到以太坊区块链上。
这点很重要。记住:您永远无法在比特币网络外看见一枚比特币。
换一种说法,在交易站,小鸡村使用小鸡币,他们不接受卷心菜村的交易站所使用的卷心菜币。
通常,区块链使用收据(receipt)来缓解这个问题:
想象一下,在小鸡村和卷心菜村之间有一座桥,位于两个交易站(区块链)之间,每一个交易站仅接受自家村的货币。
想要把卷心菜币转移到小鸡村,您需要把它们放在一个巨大箱子中,这个箱子属于卷心菜村的交易站,然后翻过这座桥去到小鸡村,然后有一个运营者会监督整个过程并给您一张收据,证明箱中的卷心菜币。这个收据就像是“借据信”,代表着您原有的货币,但是在小鸡村使用。
现在,您可以使用这个收据来购买鸡肉,然后过桥回到卷心菜村。您无需在担心交易站,因为您已经没有多余的货币或者收据(您已经用它们换了鸡肉)。
随后,把鸡肉卖给您的小商贩想买卷心菜,于是他过桥,带着从您那里获得的收据。在卷心菜村的交易站,他可以把收据赎回成当初大箱子里的卷心菜币,然后销毁这些收据即可。
需要注意的是,可靠的链桥使两个交易站的交易者接受对方的收据。当然,您可以自创收据,然后尝试花出去,但是没有人会没理由地信任您的收据。然而,这座桥多年来向交易者保证收据是可以赎回的,因而享有声誉。此外,如果链桥作为公共智能合约而构建,则无需信任它,因为它可以被验证。
而且,基础加密学能够保证收据是由链桥发出且不可伪造。收据上有来自链桥的电子签,无法造假。
除此之外,当基于借据信概念的链桥在一条区块链上实施时,依然面临诸多挑战。
区块链之“桥”
让我们看看链桥如何在区块链上发挥作用,来更好地理解当前行业所面临的挑战和对应的解决方案。首先,让我们把这些要移动的资产(比如加密货币)称为“通证(tokens)”。
当把一枚通证从源区块链“移动”到目标区块链时:
* 源区块链上的通证会被锁定,直到返回时通过链桥为止。这就是在前面提到的“大箱子”的隐喻。
* 同时,另一种通证在目标区块链上被创建,即铸造,也就是在链桥的另一边,它代表着源区块链上的通证所有权。这是我们隐喻中的“收据”,此处叫做“封装通证(wrapped tokens)”,比如以太坊封装的比特币,Solana封装的以太坊。它们是目标区块链的原生通证,大家可以接受它们来替代源通证。
当需要将封装通证“移动”回源区块链(这一过程称为“赎回”)时:
* 封装通证被销毁(燃烧),就像是过桥时毁掉收据一样。
* 源区块链被锁定的通证会被解锁,它们又可以用于流通。
上述流程称之为“铸造”和“燃烧”,它允许两条区块链各自锁定、解锁、铸造和燃烧通证,具备区块链级别的保障。关键但缺失的部分是链桥两侧的同步性,实际上,这些都发生在两条区块链之外。
不足为奇的是,目前大部分解决方案都是基于中心化权威机构:链桥在源区块链上有一个账户(或地址),那里是用户存放他们通证的地方,还有一个软件平台(中心化权威机构)给目标区块链上的智能合约发出信号,用于铸造封装通证。
当这些链桥运行时,每天都会有大量通证通过它们进行交易,它们并未完全从区块链所提供的去中心化和安全性的优势中获益。首先,所有信任都基于单个实体,基于其诚实性以及运行链桥的能力。此外,链桥的“大箱子”不可避免地成为黑客的目标,而近期被盗的巨额资金也证明了这一点。
再回到前面的问题,“我们能不能改进一下呢?”
答案是:可以!欲知详情,且听下回分解。
或许您并未从本文中读到很多关于Flare相关技术和桥接解决方案,但我们认为一篇具有深度的区块链和链桥的介绍将有助于您深入了解Flare及其技术,因此就有了这篇博客。如您关注近期一些链桥事件,欢迎加入我们,了解更多Flare所提供的技术与解决方案,如何让桥接更安全。
对了,不知道卷心菜币和小鸡币的比喻是否让您对加密货币有了更好的理解呢?
关于Flare Network
作为一条强大的全新公链,Flare集成了首个针对外部数据的全新共识机制——状态连接器。Flare网络上的去中心化应用能够安全且免信任地获取、使用来自其他区块链或真实世界的数据源信息,解决预言机问题,这也为实用性打开了新世界大门:去中心化且受保障的多边桥接方案,完整的跨链可组合性,以及资产和信息在区块链之间的自由流动,Web3应用无缝且去中心化集成Web2数据以及安全且完整的互操作性多链解决方案。
官网:https://flare.xyz/
Twitter:https://twitter.com/FlareNetworks
中文电报社群:https://t.me/Flare_China