侧链是什么?有什么作用?侧链如何实现的?

By | 2018年8月23日
在昨天的故事中我们提到贝勒爷在帮晓艾躲避黑客攻击时,将她的资产从主链转移到了侧链之上进行交易,从而不影响主链升级。
 
01 侧链的诞生
2014年10月,比特币核心开发者发布了白皮书《Enabling Blockchain Innovations with Pegged Sidechains》,首次明确提出了侧链的概念及其协议实现方案。主链跑得快,全靠侧链带

由ConsenSys团队推出的BTC Relay被认为是区块链上的第一个侧链,BTC Relay项目是在以太坊基金会之下诞生并成长起来的,其主要原理是BTC Relay把以太坊网络与比特币网络以一种安全去中心化的方式连接起来。

02侧链是什么
侧链协议本质上是一种跨区块链解决方案,一种允许通证等数字资产,从一条区块链向另一条区块链安全转移并且可以转回的合并机制。通过这种解决方案,可以实现双向锚定,将数字资产在主链和侧链之间实现安全转移。 

在贝勒爷帮助晓艾转移资产的过程中,便是先将资产从主链转移到了侧链,使得晓艾正在进行的交易先在侧链上发生,然后等待主链升级完成之后,再将交易资产从侧链安全转移回主链。整个过程当中,晓艾的资产情况保持着相同价值,不会发生任何变化。

主链跑得快,全靠侧链带

因此,通俗来说,侧链的概念是相对于主链而言的,只要符合“侧链协议”的区块链,如以太坊、莱特币等都可以成为侧链。比如,比特币如果想在以太坊上使用,就可以在它们之间建立一个侧链协议,比特币是主链,以太坊是侧链;贝尔币(BRC)要想在以太坊上使用,那么在它们之间建立一个侧链协议,以太坊就是主链,贝尔链就是侧链。贝勒爷在用游戏链上的资产购买商城链上的奢侈品包时,也是通过这种跨链机制在进行运作。

 
03为什么需要侧链
由于比特币独特的网络结构特性,如果要在原有的技术上进行升级等大规模改动,或直接在比特币区块链上进行功能添加,会比较危险,因为一旦在实践中发生软件故障,极有可能导致比特币网络严重拥堵,造成资产损失。 

这时,开发团队提出了侧链方案。侧链技术允许开发人员将想要新增的功能附加在其他的区块链,但是这些区块链仍然附着在现有比特币区块链上。这些区块链中的新功能可以充分利用现有比特币的网络特性,而不会对现有的比特币网络造成危害。

 

所以为了提高比特币交易效率,解决比特币的交易规模、实时支付、小额支付等关键应用问题,著名的“闪电网络”就应时而生。

主链跑得快,全靠侧链带

例如,贝勒爷和晓艾两人可以把比特币放到一个多重签名钱包中锁定,然后进行交易签名,更改双方各自能取回的比特币数量。交易参与方可以随时关闭交易通道,只有最后一笔经过签名且包含最新余额动态的交易最终将会被全网广播,并写入比特币区块链。因此交易速度会非常迅速。

 

所以说,侧链可以提供一种更安全的协议升级方式,来对主链的功能进行补充或横向拓展,如果主链的运行效率较低,还可以将主链部分功能转移到侧链上实施。而且由于侧链的独立性,当灾难性问题发生时,主链依然可以保持安然无恙。

 

04侧链实现方式
那么侧链究竟是如何实现的呢? 

这就需要介绍一下刚才提到过的双向锚定(Two-way Peg)技术。即在主链上把一定量的数字资产发送到一个特定地址,这样这笔数字资产就会被锁定;同时,只要提供这笔“锁定交易”已经发生的证据,那么等量的数字资产就会在侧链上被释放,可以进行交易了。反之亦然。双向锚定实现最大的难点是协议改造需要兼容现有的主链,也就是不能对现有主链的工作造成任何影响。具体方式分为以下几类:

 

1)单一托管模式

这是现阶段最简单的在主链与侧链间实现资产转移的方式,即将主链上的资产发送到一个单一托管方(比如交易所),托管方收到这笔资产后,就在侧链上激活等价的数字资产,这笔数字资产就能在侧链上使用了。使用之后,剩下的数字资产经过同样的流程,被返还到主链上。下图给出的就是单一托管模式示意图。

主链跑得快,全靠侧链带

单一托管模式有一个很大的问题是过于中心化。

 

2)联盟托管

 

联盟托管模式与单一托管模式相似,只是将资产的托管方从单一实体替换为一个由多方组成的联盟,他们都是这笔资产转移的公证人,所以叫公证人联盟。并且,各公证人会分别对这笔资产转移进行签名,即多重签名。下图即是对联盟托管模式的展示:

主链跑得快,全靠侧链带

联盟托管模式有一个优点,就是相对来说比较安全,因为多重签名的应用,黑客如果想要盗取被锁定的资产,需要攻破更多的公证人,难度比较大。但同时,我们也能看出来,这只是一个弱中心化的方案,公证人联盟统一内部意见发动“叛变”的可能性还是很大的。

 

3)SPV

以上两种方案都是通过中间人来保证资产在一条链上的锁定和另一条链上释放之间是安全的。但正如前面提到过的,这些方案要么是中心化的,要么是弱中心化的,风险始终很大,并且与区块链通过去中心化和密码学手段解决安全问题的初衷背道而驰。

所以,技术专家们提出了一种纯技术手段来实现资产在主链和侧链之间的转移:SPV(Simplified Payment Verification),即简单支付验证。

 

SPV 的工作原理如下:

首先,在主链上,将资产发送到一个特定的输出地址,这个地址包含侧链的信息。经过一定的确认期,这笔交易得到确认,主链就会发送SPV证明到侧链,侧链上就会生成一个引用该输出的交易。这个确认等待期是一个依侧链而定的安全参数,要在跨链之间的交易速度和安全性之间做权衡。

主链跑得快,全靠侧链带

新转移过来的币不能在侧链上立刻花费,还有一个“竞赛期”。竞赛期的目的是防止重组时出现“双花”(这里的重组指的是侧链释放锁定的资产,发放给指定用户)。在这个延迟期内的任何时刻,如果有一个新的SPV工作证明发布出来,而最终记录到主链上的区块没有包含这个信息,那么该资产转换将被确认为失效。

 

带有SPV证明的交易出现在侧链上之后,可以验证主链上的数字资产已经被锁住,然后就可以在侧链上打开具有相同价值的另一种数字资产。这种数字资产的使用和改变在稍后会被送回主链。当这种数字资产返回到主链上时,该过程会进行重复。

 

SPV模式存在的问题是需要对主链进行软分叉

 

05结语
互联网如今成了人们的一个基本需求,但中心化的特征使得其安全性成为问题。人们希望区块链以去中心化的姿态替代互联网,像互联网那样可以在不同的网络之间进行交互,这就要求不同的区块链相互之间也可以进行交互,即增加区块链的可扩展性(Scalability)。侧链技术即是为此而生。经过侧链协议扩展的区块链技术,应用范围和创新空间大大增加:可以支持多种资产类型、小微支付、智能合约、安全处理机制、财产注册等,并可以增强区块链的隐私保护。利用侧链,我们还可以轻松的建立各种智能化的应用,如金融合约,股票、期货、衍生品等。

主链跑得快,全靠侧链带

 

昨天的故事让我们看到了,在2025年,贝尔链生态中除了游戏以外的各种功能,都有望通过侧链技术来实现。所以,为了在贝尔链生态内实现丰富的功能和生态大融合,侧链技术将为贝尔链团队所重视,以期搭建一个多样化的良性互通平台,让贝尔链不仅成为全球游戏公链的开拓者,更要成为全球性游戏公链的实现者,搭载百亿级独角兽所需的功能和服务内涵。