当前位置 : 主页 > 编程语言 > java >

区块链 | 侧链技术详解

来源:互联网 收集:自由互联 发布时间:2023-02-04
导读 研究跨链技术,绕不开侧链技术,作为针对于比特币而创建的跨链技术,侧链不仅火,实用性也高,今天这篇文章,让我们一起来了解一下什么是侧链,为什么要有侧链,侧链的相

导读

研究跨链技术,绕不开侧链技术,作为针对于比特币而创建的跨链技术,侧链不仅火,实用性也高,今天这篇文章,让我们一起来了解一下什么是侧链,为什么要有侧链,侧链的相关原理以及目前比较热门的侧链。

接下来让我们一起走进今天的文章吧!

区块链 | 侧链技术详解_区块链

1

侧链基础理论

1、什么是侧链

侧链(SideChains)并不指某一条链,侧链是一个概念,侧链是用于主链和其他链进行资产转移的一个通道,是一种具体的跨链的解决方案。

侧链最早由比特币提出,所以一般来说,侧链对应的主链就是比特币链。所以我们可以把这个理解为侧链的狭义定义,即用于比特币链和其他链之间进行安全地货币转移的链称之为侧链。只要符合侧链协议,如以太坊、莱特币等都可成为侧链。

从广义角度来说,只要是满足侧链定义的,并且有主链的,都可以使用侧链。我们也可以给出其更加广义的定义:

区块链 | 侧链技术详解_智能合约_02

可以让某一条链上的资产安全有效地转移到其他链,也可以从其他链安全有效地返回资产到该条链且主要为该条链的资产转移和价值交换服务的链,称之为该条链的侧链。

区块链 | 侧链技术详解_智能合约_03

特别要注意:侧链不是附庸,是独立的,只是承担了辅助的功能。

2、为什么要有侧链

了解了侧链我们就要知道为什么要有侧链了,也就是说,侧链的作用是什么?

不管是做区块链技术研究的,还是搞比特币挖矿的,都应该了解,单纯的比特币存在缺陷:

1、可扩展性差2、交易延迟长3、吞吐量低4、不支持图灵完备的智能合约

那么对待这些缺陷,我们可以有如下三种解决方案:

1、完全舍弃比特币2、重构其框架及算法3、提出新的、更优的区块链,并为比特币搞一个辅助,令其苟延残喘

从技术和社会发展角度来看,如果没有资本和暗网的介入,比特币作为一种技术实现,作为币圈的核心,作为一种分布式的去可信的货币,是能够为社会发展带来积极有用的价值的。

资本的介入,让比特币成为一种超越股票的新型赌博。使得比特币的价格远远超过其价值,最终代替黄金和石油成为资本控制世界的工具。暗网的介入,让比特币成为那些作恶交易的资金转移渠道,并且难以追踪其真实身份,在比特币之前,也有其他货币承担这种功能。

所以对于第一种解决方案,治标不治本,并且比特币是基于共识,不是基于政府背书,资本家不会舍弃,投机者不会舍弃,作恶者不会舍弃,完全舍弃比特币并不现实。

对于第二种解决方案。重构其框架及算法。比特币是纯分布式的,但比特币不是理想分布式的。如果要重构,花费代价太大,并且会引入极大的风险。

一方面,没有个人有能力重构比特币,只有政府或者资本联合绝大多数节点才可以解决。但是比特币这种货币,政府不会为其背书,资本不会做这种亏本事。另一方面,即使到了不得不重构的时候,重构的过程中导致的共识冲突,安全性冲突、时延冲突等问题,可能会直接导致比特币网络的崩溃。

也就是说,不管是完全舍弃还是重构令其脱胎换骨,都是不现实的。

所以我们只能武装比特币,通过武装,让比特币更强大。为此提出了侧链技术,侧链技术就是对比特币的武装和丰富,实现了比特币和其他货币的货币兑换和转移。

3、侧链的简单理解

如何来形象的理解侧链呢?

一个不是很恰当的例子,我们人不会飞,所以研究了飞机,飞机就是我们在飞翔领域的“侧链”。狭义的侧链就是比特币在货币转移领域的侧链。

一个比较形象的例子是大库房的分库房。大库房用于货物的存放。但是如果货物的打包、和运输人员的交互也在大库房,那就太不方便了,为此,我们开一个附属库房,专门用于物品的打包和运输,有物品运进来,我们也先在附属库房拆封整理,然后放回到大库房。

4、侧链的必然性

侧链的出现是有其必然性的。这是因为这个世界没有任何东西可以做到无所不能,做到绝对完美,并且越接近完美,这个东西就会越复杂,东西就会越庞大。并且有些功能还会发生冲突。

那怎么办好呢?最好的方法是,让这个东西本身适配性强,然后我们给他各种附加强悍的辅助。即使辅助不行了,我们再换个更加强大的辅助,这样也不会影响其本身。

就像手机电脑不断更新换代,我们和别人的通讯越发方便,但是我们人本身并没有改变多少,改变人,让人具有远程通讯的超能力,不现实,但是,通过手机电脑实现远程通讯已经比较完美地实现了。

侧链也是如此,当某一个链需要某个功能的时候,我们不是将这个链更新换代,而是为其附加不会影响其本体的具有某个特定功能的侧链。在跨链领域,主要的功能需求就是不同链之间的资产转移。

2

侧链的实现原理

1、介绍

侧链实现的技术基础是双向锚定(Two-way Peg)。双向锚定是说暂时性地将比特币在比特币区块链上锁定,同时等量的等价代币在侧链上被释放。当等量等价的代币在侧链上被锁定时,则比特币区块链上的原始比特币就可以被释放。

目前主流的实现方式包括:

1、单一托管模式2、联盟模式3、SPV模式4、驱动链模式5、混合模式

下面我们简单介绍一下这些方式:

2、单一托管模式

单一托管模式是说构建一个主链的单一托管方,单一托管方负责双向管理主链和侧链,锁定某一条链上的资产并解锁另一条链上对应的资产。

单一托管模式可以说是最简单的双向锚定技术了,这种技术在理论上违背了区块链去中心化的理念,是在现有场景下为了能够应用侧链技术(赶鸭子上架)而采取的一种折中。只能说对当下是有意义的,对探索区块链侧链技术的发展有一定的帮助,虽然是违背了区块链发展道路的,在曲折中前进吧!

3、联盟模式

联盟模式是使用公证人联盟取代单一保管方。利用公证人联盟的多重签名对侧链的数字资产流动进行确认。这种方式会降低对中心保管方的依赖,但是不能杜绝存在强有力的节点的攻击或者是联盟的共谋。

联盟模式类似于联盟链,我们没有办法实现或者很难实现像比特币一样纯分布式区块链,但是为了发展,我们还是可以在之前的基础上优化改进。

4、SPV模式

SPV模式的全称是Simplified Payment Verification,即简单支付验证。从名字来看,简单支付验证就是只需要做简单的支付验证即可,无需做其他操作。这是因为,一个完整的区块链是很庞大的,对于一些节点来说,可能无法支撑这么庞大的体系,对于大多数节点来说,应用区块链或者是某个虚拟货币,只是为了交易,所以简单支付验证应运而生。了解区块链的用户应该知道一个概念叫做轻节点,轻节点就属于SPV。

在SPV模式中,用户首先在主链上锁定一部分资产,然后会创建一个SPV证明,并将SPV证明发送到侧链。侧链验证主链上对应的资产被锁定,就会在侧链上打开同等价值的另一种资产,该资产的相关操作稍后会送回到主链,这个过程也会创建一个SPV证明,用以解锁主链上的资产。

5、驱动链模式

驱动链概念是由Bitcoin Hivemind创始人Paul Sztorc提出的。

在驱动链中,矿工会对侧链当前的状态进行检测,相当于资金托管方,负责通过投票决定何时解锁数字资产以及数字资产的去向。矿工观察侧链状态,当收到来自侧链的要求时,执行相关的合约以保证达成共识。这个过程比较依赖矿工的诚实性。

6、混合模式

混合模式就是字面意思,通过结合上面的某几个模式,结合不同模式的优点,使得模式更优。

3

侧链实例

了解了侧链,我们来看几个具体的实例。

1、BTC-Relay

BTC-Relay是实现了比特币在其他链上(如以太坊)进行流通的跨链技术方案,也是区块链生态中公认的第一条侧链。(当然也有人认为把BTC-Relay当成是侧链甚至当成是跨链技术不是太准确)。其项目地址如下:

http://btcrelay.org

简单来说,BTC-Relay就是一个部署在以太坊上的一个特殊的合约,通过这个合约,可以实现以太坊对比特币区块链或交易的验证,从而可以利用比特币进行支付确认。提升了比特币的扩展性。BTC-Relay实现了比特币的SPV功能,在BTC-Relay中,被称为Relayer的成员向BTC-Relay提供新生成的比特币区块头,DAPP开发者就能通过BTC-Relay确认比特币中的交易。

2、RootStock

RootStock (RSK)是一个建立在比特币区块链上的智能合约分布式平台。它的目标是,将复杂的智能合约实施为一个侧链,为核心比特币网络增加价值和功能。

RootStock 经常用来和BTC-Relay进行对比,不同点在于,BTC-Relay可以看做是一个智能合约,做的是比特币的简单支付验证。RootStock和比特币通过双向锚定技术进行货币和RSK代币(Rootcoins(RTC))的锁定和解锁。

3、元素链

元素链(Elements)是Blockstream公司的开源侧链项目,是一个侧链的参考实现。其官网为:

https://elementsproject.org/

基于元素的侧链在生产中应用的一个例子是Blockstream的Liquid。

区块链 | 侧链技术详解_智能合约_04

长按二维码关注

网友评论