区块链:扩容,解决区块链的阿克琉斯之踵——区块链技术引卷之二

FENBUSHIDIGITAL×通证通研究院联合出品文:宋双杰,CFA;Rin,FENBUSHI投资总监;田志远;Haru特别顾问:沈波;JX导读随着区块链的链上交易数量飙升,区块链网络变得日益拥堵,系统的扩容势在必行。摘要随着区块链技术的普及,主流公链如BTC、ETH的交易数量不断增加,以及ETH链上部分现象级DApp的火爆,区块链网络拥堵现象逐渐显现。公有区块链出于非中心化与保证网络安全的考虑,形成了一定的共识机制,同时对区块间隔时间和区块体积大小有所限制,从而能够处理的交易数量不足以支撑高并发的应用,区块链扩容势在必行。我们借鉴计算机网络通信体系架构的OSI模型,将区块链逻辑架构划分为三层。现有的扩容方案分别针对不同层级进行改进,分为第0层扩容、链上扩容和链下扩容。其中链上扩容通过改变基本协议提升区块链效率。链下扩容不改变基本协议,在应用层进行改变提升扩展性。第0层扩容通过改变区块链底层数据传输协议提升区块链可扩展性。链上扩容方案又包括数据层改进方案、共识层改进方案和网络层改进方案,基本思路是增加区块大小或减少区块验证传播时间和形成共识时间。链下扩容方案主要有状态通道、侧链、跨链和链下计算四种方式,思路均为将部分链上交易转移到链下执行,减轻链上处理压力,提升整体效率。迄今为止,每一种扩容方案都为改善可扩展性提供了解决思路。目前也已经出现多种方案结合的方式提升可扩展性,如多种共识机制的结合、ETH筹划中的共识机制改进与分片相结合等。这些方案均存在不同程度的优势和劣势,有些方案的技术实现较为复杂,目前落地仍存在难度。针对不同的应用场景与需求,选择适合的区块链扩容技术或是解决目前区块链网络拥堵问题的主要途径。风险提示:现有方案尚未完全成熟、落地难度较大目录1拥堵的区块链2公链在安全与效率上的折衷是拥堵的原因3扩容分歧4现有扩容方案4.1链上扩容4.2链下扩容4.3第0层扩容5总结正文1拥堵的区块链BTC:最高超过19万笔未确认交易。BTC区块大小的上限为1MB,每10分钟左右产生一个区块,从历史数据来看,BTC的TPS约为3.5。交易笔数较少时不存在拥堵问题,但是随着交易笔数的飙升,拥堵日益显现,根据Blockchain.info数据,BTC未确认交易数最高时在19万笔左右。ETH:一只猫造成的拥堵。2017年11月底,虚拟养猫游戏CryptoKitties上线后过于火爆导致ETH网络出现严重拥堵,2017年12月5日ETH未处理交易达到峰值19800笔。伴随拥堵产生的另一个问题是交易费用的上升。交易签名后广播,并进入矿工节点的待打包交易池,矿工会优先服务手续费开价更高的交易,当出现拥堵时手续费较低的交易很难被及时确认。以BTC为例,拥堵时单笔交易手续费按法币为标准的话最高达到约162美元。拥堵的区块链网络俨然已经无法满足基本的交易需求,扩容势在必行,那么什么是扩容?区块链领域的扩容即围绕如何在“更短的时间实现更多的交易”,增强区块链的可扩展性。可扩展性是指系统、网络或进程处理越来越多的工作的能力,或者适应增长而扩展的潜力。2公链在安全与效率上的折衷是拥堵的原因BTC的区块体积大小约为1MB,出块间隔平均约为10分钟。但为什么是1MB和10分钟呢?为什么不能增加区块大小或减短出块间隔时间以加快交易确认的效率呢?由于每笔交易需要网络中每个全节点处理和验证,区块体积越大扩散至整个网络所需的时间越多。根据Decker和Wattenhofer2013年关于BTC的研究表明,区块的平均扩散时间约等于2秒加0.08秒/KB,即1MB大小的区块扩散需要约84秒,Rizun在2015年关于BTC的研究表明,随着交易扩散技术的提升,扩散时间降低到约0.008秒/KB,即1MB大小的区块扩散需要约10秒。随着节点数的增长区块链将变得更加缓慢,因为节点间的延迟会随着新增节点数呈对数性增长。区块体积变大和出块间隔过短将不可避免地导致孤块率上升。出块间隔主要由验证时间、传播时间和共识时间构成,验证和传播时间之和远小于10分钟。根据公式分叉概率的影响因素包括t90th和tB,其中t90th为新区块传播到90%以上节点用时,tB为出块间隔。在其他条件不变的情况下,分叉概率随t90th增加而上升,随tB降低而上升。增大区块体积会增加传播用时,这与缩短出块间隔都意味着分叉概率上升,即一个新的区块尚未充分全网广播之前,就有另一个矿工在同样的高度产出了另一个新的区块的可能性增加,导致网络孤块率的上升。区块体积变大和出块间隔缩短带来的运营成本上升可能导致算力中心化。区块体积过大带来的另一个问题是全节点运营成本增长。区块大小按照1MB计算,则一年大约需要50GB存储空间,其他条件不变的情况下,区块变大导致存储成本和带宽成本都将上升。成本上涨和孤块率的增加进一步可能将导致普通计算机用户甚至小矿池退出,进而算力呈中心化趋势以及安全性减弱。BTC的选择是网络效率和网络安全之间的折衷。虽然1MB和10分钟并不一定是最佳选择,通过缩短出块间隔和扩大区块确实可以提升交易处理能力,而且事实上人们也已经这样做了,但是通过这种方式所能实现的提速毕竟是有限的,非中心化运作的公开区块链在效率和非中心化之间进行了折衷。相比于BTC,ETH的出块间隔缩短到了15秒,并且没有限定区块大小,ETH出现拥堵的原因是什么呢?ETH虽然没有区块大小限制,但是存在“区块GasLimit”。ETH中任何一笔交易都需要gas才能进行,gas对应BTC交易中直接以BTC支付的手续费,实际上gas也需要用ETH购买。注意区块GasLimit不同于交易中的gasLimit,交易gasLimit是指该笔交易中交易者自行设定的gas使用限制,而区块GasLimit是指每个区块最多可使用的gas限制。比如交易池中有3笔交易,分别消耗10gas、20gas、30gas,而当前的区块GasLimit是60gas,那么以上3笔交易都可以被打包,如果区块GasLimit是40,则最多只有两笔交易可以被打包。也就是说,ETH在有限的时间内只能处理有限的交易,如果交易数量超出了其承载能力,依然会造成拥堵。另外值得一提的是ETH的GasLimit本身存在自动调整机制和矿工投票机制。其中自动调整机制是指当父区块的gas使用量超过父区块GasLimit的2/3时,将按照一定速度增加当前区块的GasLimit,但是最大不能超过TGL。TGL由矿工投票确定,最小不能小于MGL,MGL初始默认值5000。但是自动调整相对而言比较缓慢,当交易量在短时间内大幅增长时很难迅速调整到位。矿工投票机制是指矿工可以投票决定TGL的大小,如果当前区块的GasLimit小于TGL,则增加区块GasLimit尽快达到TGL。但是区块打包的交易信息越多则区块相应越大,传播时间越长,进而导致叔块率的上升,矿工利益受损。因此尽管存在投票机制,但矿工并没有很强的意愿投票提升TGL。注:孤块在ETH中被称为“叔块”。在BTC中,孤块将被抛弃且发现孤块的矿工没有任何奖励。而ETH15秒的出块间隔导致分叉和孤块会大量产生,降低了整个网络的安全性,因此ETH鼓励矿工在新区块中引用叔块,发现叔块也能获得奖励。3扩容分歧区块链扩容是大势所趋,但在具体如何扩容上存在巨大分歧。打造一个可扩展的中心化网络并非难事,难的是实现可扩展性、非中心化和安全性三方面的完美组合。打造一个可扩展的中心化网络并非难事,现有的中心化支付系统早已实现了这一点,比如支付宝在2017年双十一期间TPS最高达到25.6万。对于传统的中心化系统,通过增加更多的服务器可以实现扩展,在非中心化世界中,人们不得不面临非中心化、安全性与高效率之间的权衡。区块链可扩展性不可能三角是指区块链系统一般只能实现非中心化、安全性和可扩展性中的两个属性。想要显著提升可扩展性,则必然要在安全性和非中心化上有所舍弃。Thetrilemmaclaimsthatblockchainsystemscanonlyatmosthavetwoofthefollowingthreeproperties:Decentralization,Scalability,Security.——ShardingFAQsBTC和ETH重点关注的是安全性和非中心化,一定程度上牺牲了可扩展性,事实上它们的颠覆性意义本身也不在于交易性能。市场上不断有新的项目以牺牲非中心化或安全性为代价提升可扩展性,但能否奏效尚待验证。4现有扩容方案我们通过借鉴计算机网络通信体系架构的OSI模型,将区块链逻辑架构划分为三层。其中第0层对应OSI模型的1-4层,其中包括传输层。第1层和第2层对应OSI模型的5-7层,第1层包括数据层、网络层、共识层和激励层,第2层包括合约层和应用层。传输层:为区块链提供底层数据传输支撑。数据层:封装了底层数据区块、链式结构、哈希函数、Merkle树、非对称加密和时间戳等技术,是区块链底层的数据结构。网络层:包括分布式组网机制、数据传播机制和数据验证机制等。共识层:封装了各类共识算法,解决在决策权分散的分布式系统中的共识问题,如PoW、PoS、DPoS和BFT类共识。激励层:主要包括发行机制和分配机制等,解决对守约节点的奖励和对违约节点的惩罚问题。合约层:封装各类脚本代码、算法机制和智能合约等,是区块链可编程特性的基础。应用层:封装了区块链的各种应用场景和案例,如可编程货币、可编程金融和可编程社会等即搭建在应用层上。各种扩容方案分别针对区块链逻辑架构的不同部分进行改进。根据对区块链的逻辑架构不同部分改进可相应将扩容方案分为三类,分别为第0层扩容、第1层扩容和第2层扩容。第0层扩容即通过改变区块链底层数据传输协议提升可扩展性;第1层扩容通过改变公链基础协议如区块数据结构、共识机制、激励措施等提升扩展性;第2层扩容不改变公链基本协议,在应用层通过链下方式提升可扩展性。4.1链上扩容第1层扩容,即链上扩容,通过优化、改进公链基本协议提升扩展性。具体包括数据层改进方案、网络层改进方案和共识层改进方案。数据层改进方案包括扩块、隔离验证和有向无环图等方案。1)扩块。扩块方案即增加区块容量,从而单个区块包含的交易数量相应增加,实现扩容目的。以BCH为例,2017年BCH区块大小提升至8M,今年5月又再次提升至32M。从理论上说,在平均区块间隔固定的情况下,网络TPS上限与区块大小成正比,BCH今年九月进行的压力测试也证明其单个区块的交易承载能力高于BTC。但由于之前提到的节点处理能力、算力中心化等问题,区块的大小不能无节制随意扩大。因此这种方式一方面对于效率提升有限,另一方面存在可能导致算力中心化的问题。举例:客车由一层变为两层,载客空间变大,能够运载更多乘客。2)隔离见证。被打包进区块的交易数据包括数字签名和其他交易信息,数字签名便占用了全部交易数据60-70%的空间,但是数字签名仅仅在验证阶段需要。隔离见证即隔离数字签名与其他交易数据,提升单个区块所能容纳的交易数量,通过“缩小”交易数据变相扩大了区块大小,如BTC就是采用了隔离见证的扩容方式。同扩块方案一样,隔离见证对于处理效率的提升也是有限度的。举例:客车容量不变的情况下,将乘客的行李全部放到车厢顶部,从而能够运载更多的乘客。3)DAG。DAG是无回路的有向图,即从一个顶点沿着若干边前进,但永远不能回到原点。以IOTA为例,节点发起交易时只需要找到网络中的任意两笔交易,验证它们的合法性,指向它们并广播到网络。这笔交易会以同样的方式被验证,被验证的次数越多,交易的状态就越稳定。DAG避免了因网络延迟和数据同步造成的时间浪费,可以做到高并发,存在的主要问题包括双花和影子链攻击等。网络层改进方案分片。分片是指将区块链分成不同部分,即多个分片,分片可以并行处理事务,从而提升了单位时间内处理交易的数量。假设网络存在1000个节点,将网络划分成10个分片。若1组分片能在一定时间内验证400笔交易,那10组分片便能在同样时间内验证4000笔交易。举例:超市里有100个收银员,但只有1个收银台,分片后增加9个收银台,每个收银台分别有10个收银员负责结账。共识层改进方案包括拜占庭容错类共识、非BFT类共识和混合共识。1)BFT类共识。不同于非BFT类共识的间接达成共识,BFT类共识下,参与者通过投票决定共识内容直接达成共识,在参与者数量不是很多的情况下,TPS可以达到10000。非BFT类共识下存在分叉可能,以BTC为例,通常需要6个区块才能以很高的概率确认某个交易被网络确认,而在BFT共识下,达成一致的共识不会被丢弃,因此BFT的响应时间也明显优于非BFT类共识。BFT类共识的主要问题在于网络规模、容错率等方面。2)非BFT类共识。通过降低共识算法复杂度和减少传播节点数量等方式减少验证时间、传播时间及形成共识时间,能够显著提升处理效率。PoS。相比于PoW,PoS以权益代替算力决定区块记账权,减少了PoW工作量证明过程的能源消耗,在一定程度上解决了可扩展性问题。但是又带来了马太效应、记账激励、无利害关系攻击等新的问题。DPoS。DPoS在PoS的基础上将记账人的角色专业化,通证持有人通过权益选出多个授权代表,授权代表轮流记账。这种共识下效率得到了明显提升,但是牺牲了非中心化。3)混合共识。顾名思义,混合共识指结合了多种方式的共识机制,如Casper采用了PoW+PoS,EOS采用了DPoS+BFT。4.2链下扩容第2层扩容,即链下扩容,不改变公链基本协议,通过链下在应用层进行改进提升扩展性。第2层扩容允许用户在客观上没有第1层安全的环境中进行交易,安全性由第1层支持,具体包括状态通道、侧链、跨链和链下计算等方案。状态通道。状态通道的思路是将部分交易转移到链下,只将通道开启和关闭时的状态记录在区块链上。区块链由结算平台变为清算平台,状态通道内的交易视为结算,在链下实现,需要脱离状态通道进行交易时视作清算,通过区块链实现。这样大大降低了区块链上的交易数量,间接提升了交易处理能力并相应降低了交易手续费。如闪电网络和雷电网络就是采用了状态通道方案。状态通道的简化工作流程如下:1)A和B之间开启状态通道,将通道开放记录在区块链上。2)通道在任意时间内保持开放,A和B可以进行无限次交易,每次交易更新状态,但不提交到区块链上。3)A和B想要关闭状态通道时,将最终状态记录在区块链上。其中第1步和第3步包含区块链上的操作,需要支付交易费并等待确认,第2步完全在链下进行。侧链侧链这一概念是相对主链而言的,通过将部分操作转移到侧链以解决主链的性能和功能瓶颈等问题。以Plasma为例,Plasma是运行在根链上的一系列智能合约。Plasma区块链为树状结构,每个分支为一条子链,一般情况下只将子链区块头的哈希值提交到根链,用于验证区块有效性。当有欺诈证明被提交到根链,区块会回滚并且惩罚区块创建者。由于根链只需要处理子链的少量提交,根链的交易负荷有效降低。Plasma与状态通道的主要区别在于并非所有参与者都要在线更新状态,参与者也不需要把数据提交到根链执行和确认。举例:法院体系中下级法院可同时处理多起案件,上级法院监督下级法院,当有人质疑下级法院的判决可以上诉。跨链相比于侧链,跨链的概念更加广泛,跨链方案的主要目的是实现资产、状态等跨链转移交换,链与链之间不仅仅是主侧的关系。以Cosmos为例,其网络由Hub和Zone两部分组成,每个分区可以拥有多种通证,分区之间通过枢纽进行交易,因此跨链方案除了能够实现资产、状态的跨链转移交换也可将链上交易转移至链下进行从而减轻链上交易处理压力。Cosmos基于Tendermint共识,支持交易快速处理。Tendermint共识过程与BFT类共识类似,开始时节点对新一轮的区块进行提议,合格的提议区块在预投票环节获得2/3以上投票则进入预认可环节,再次获得2/3以上的预认可后即获得正式认可。链下计算链下计算最初针对ETH提出,由于ETH存在区块GasLimit,计算量较大的交易消耗gas较多将导致拥堵甚至无法执行。链下计算的思路是将复杂的交易放到链下执行,执行结果提交回链上,减轻链上处理压力。以Truebit为例,Truebit由求解游戏和验证游戏构成。求解游戏中,求解者执行智能合约的计算,同时提交押金和问题结果,如果正确,返还押金并获得奖励,如果求解者欺诈,押金将被没收。是否存在欺诈通过验证游戏解决。验证者在链下对求解者的工作进行检查,如果没有验证者发出质疑,系统将会接受结果,如果出现质疑,由裁判在链上裁定质疑,链上裁定的工作量与链下执行任务的工作量相比微不足道。如果确实存在欺诈,则没收欺诈者的押金,如果不存在欺诈,质疑者将为误报消耗的资源支付一定的费用。第n层扩容。在第2层扩容的基础上有人提出了第n层扩容,即第2层扩容的进一步延伸,比如,在从ETH分支的Plasma链的基础上,可以创建更多的Plasma链。4.3第0层扩容第0层扩容通过优化区块链底层数据传输协议提升区块链可扩展性,不改变区块链的上层架构。如bloXroute通过提升节点间区块传播速度,从而在保证非中心化和安全性的基础上显著提升链上可扩展性。该项目通过提供BDN提升节点之间通讯的速度,改善节点同步情况,各节点通过bloXroute提供的对等节点接入BDN网络,对等节点作为区块链应用程序和BDN的中间网关。5总结随着区块链技术的普及,区块链拥堵现象逐渐显现。一方面,公有区块链出于非中心化与保证网络安全的考虑,限制了区块间隔时间和区块大小,从而在有限时间内只能处理一定数量的交易;另一方面也反映出目前的公链性能还不足以支撑高并发的应用,区块链扩容势在必行。我们借鉴计算机网络通信体系架构的OSI模型,将区块链逻辑架构划分为三层。现有的扩容方案分别针对不同层级进行改进,分为第0层扩容、链上扩容和链下扩容。链上扩容方案又包括数据层改进方案、共识层改进方案和网络层改进方案,基本思路是增加区块大小或减少区块验证传播时间和形成共识时间。链下扩容方案主要有状态通道、侧链、跨链和链下计算四种方式,思路均为将部分链上交易转移到链下执行,减轻链上处理压力,提升整体效率。迄今为止,每一种扩容方案都为改善可扩展性提供了解决思路。目前也已经出现多种方案结合的方式提升可扩展性,如多种共识机制的结合、ETH筹划中的共识机制改进与分片相结合等。这些方案均存在不同程度的优势和劣势,有些方案的技术实现较为复杂,目前落地仍存在难度。针对不同的应用场景与需求,选择适合的区块链扩容技术或是解决目前区块链网络拥堵问题的主要途径。附注:因一些原因,本文中的一些名词标注并不是十分精准,主要如:通证、数字通证、数字currency、货币、token、Crowdsale等,读者如有疑问,可来电来函共同探讨。

以太坊NFT二层扩容方案Immutable X提议成为Apecoin的扩容合作伙伴:5月29日消息,以太坊NFT二层扩容方案Immutable X在Apecoin治理论坛发帖提议Immutable X成为ApeCoin DAO的Layer2扩容合作伙伴,并将在技术支持、营销、咨询、资金等方面予以支持。同时,该提案建议Yuga Labs与该项目联合创始人尽快会面,制定联合商业计划以加深Immutable X和Yuga Labs的关系。[2022/5/29 3:47:45]

以太坊扩容方案Nahmii完成800万美元融资,DARMA Partners领投:9月28日消息,以太坊扩容方案Nahmii完成800万美元融资,DARMA Partners领投,Aligned Capital、CMT Digital、Delta Fund、Fourth Revolution Capital和Quantstamp等参投。此外,Nahmii宣布推出面向机构规模的第2层解决方案。(Business Wire)[2021/9/29 17:13:37]

Reality Cards将迁移至以太坊扩容解决方案Polygon:官方消息,基于NFT的预测市场Reality Cards将从xDai迁移至以太坊扩容解决方案Polygon。[2021/7/29 1:22:38]

孙宇晨:我们会抓紧扩容交易所,争取达到每日百亿美元的吞吐量:据波场TRON创始人兼BitTorrent CEO孙宇晨在其微博表示:“今天凌晨三点钟后因为流量激增缘故,后半夜Justswap有段时间不可用,目前已经修复,在此向我们用户表示最真诚的歉意,Justswap是一个诞生17天的AMM交易所,已达到了每天六亿美金交易额,交易笔数已经是uniswap的两倍以上,这两天我们会抓紧扩容交易所,争取达到每日百亿美元的吞吐量!一切安全请放心! ”[2020/9/4]

bitcoin.org联合创始人阐述比特币扩容观点:C?bra(bitcoin.org联合创始人)今天发文阐述了自己对比特币扩容的观点,称无外乎两个方案:1. 第二层网络(比如说闪电网络),2. 扩容区块大小(类似BCH)。文中提到一句话暗藏玄机:“ I’ve always preferred the first choice, but lately I’ve been starting to lose faith in it.”[2017/12/17]

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

BTC元宇宙:生活类场景,区块链最先普及之地?

区块链经过2018年的从热到冷,其发展之路反倒逐渐清晰起来,与实体经济结合成为行业共识,但仅仅这七个字还太过宏观与抽象,如何与实体结合,率先在哪些领域普及应用,都需要判断.

[0:46ms0-0:896ms