EKT多链技术丨闪电网络、多链、分片、DAG——区块链的横向扩展

 

      大家好,我是周迅,今天我来给大家分享一些区块链提速方面的内容。

 

      前言:认真来说,传统的BFT共识机制是一种效率不高的算法,由于每笔交易都要通过所有节点验证,验证结果需要被广播到网络,换句话说,一笔交易要先被广播到网络一次,然后每个节点都要再广播一次,这就导致了一笔交易有O(N^2)的消息复杂度。计算机背景的同学都知道,O(N^2)是一个很低效的 方案,直接导致BFT在大于1000个节点之后同步能力明显下降。对于比特币的POW,因为任何矿工节点发现符合当前难度的块之后,把交易打包进块里,向全网(N)广播,然后网络上的所有的全节点验证这个交易的哈希,即可证伪,所以实际上是一种一对多且不需要回复的共识机制,也即O(N)的复杂度。目前共识算法研究的前沿是如何实现O(1)算法,叫做横向扩展(scale-out),也即一笔交易不广播到全网,或者说,有的交易有的节点并不知道,这样就可以解决区块链的可扩展性问题。目前出现在大家视野里的O(1)共识算法有off-chain(链下通道),sharding(分片),DAG(有向无环图),multi-chain(多链)等等,每种算法都有其特点和长处,本文将解读这类横向扩展的解决方案。

 

     【链下通道】

 

      off-chain这个概念来自比特币社区,2013 年 12 月提出,后来形成了我们熟悉的链下链的一套体系,也即侧链。off-chain的诞生是由于比特币本身或者某一区块链本身的机制存在一些问题。但是直接在比特协议或者比特币链条上进行修改的话,又容易出错。而且比特币区块在一直不断运行,万一出错了涉及的资金量太大了。这个是不被允许的。这种情况下,诞生了侧链。本质上来说,侧链机制,就是一种使货币在两条区块链间移动的机制,它允许资产在比特币区块链和其它链之间互转。降低核心的区块链上发生交易的次数。侧链实质上不是特指某个区块链,而是指遵守侧链协议的所有区块链,该名词是相对与比特币(或某宿主链)主链来说的。

      针对比特币的侧链项目名叫闪电网络,它的运行机制也比较简单:你是A,要给B发起一笔交易。首先你要创建一个On-Chain交易,在这个交易中,你需要开通了一个A和B之间的支付通道(State channel),而且,你必须要做相应的抵押。比如,A打算给B转100BTC,那么A必须要先抵押最少100BTC,然后才可以转100BTC给B。A抵押后,就可以开始给B转账了。A可以随心所欲的今天给B发1BTC,明天再给B发2BTC,都不打紧的,反正是Off-Chain交易,没有交易费。闪电网络在于给A和B之间提供这种支付通道,即Off-Chain(链外)交易通道。

      那么,如果A或B想把BTC余额提出来,并停止和对方的转账交易,怎么办?此时就需要关闭A和B之间的支付通道,并利用闪电网络的一系列协议进行清算了。

      假设此前A抵押了100BTC,其中总共给B转了10BTC,那么A的余额为90BTC,B的余额为10BTC。在此过程中,A是无法篡改交易记录的,所以最后A可以转出的数额为90BTC,B可以转出的数额为10BTC。

      简单总结一下闪电网络的工作方式:

 

      a. 建立支付通道;

      b. 需要抵押。

 

      建立支付通道,就是普通的链上交易,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值