从互操作性角度,波卡等原生型多层结构要优于Layer2等后天型,因为前者可实现信息流转和智能合约调用。
撰文:崔晨,就职于HashKeyCapitalResearch审核:邹传伟,万向区块链首席经济学家
区块链技术应用一直以来都是人们最关注的话题,而作为承载应用的公链,其性能决定了应用的上限,关于公链的技术进展同样受到关注。以太坊之后诞生的竞争公链,包括以太坊的升级,都致力于提高系统性能。在此前提下,多层结构在公链中成为众多公链的选择,例如多层架构和链下扩容方案。对于多层结构,层级之间的互操作性是实现可用的基础,更重要的是位于不同层的资产要达到统一的安全性。本文主要对目前流行的多层区块链结构进行分析,说明安全来源和互操作性问题。
公链多层阶段的趋势
公链及智能合约的诞生给区块链应用提供了载体,但应用场景也受限于公链。区块链大规模应用的障碍之一是可扩展性,即区块链的性能。可扩展性会限制区块链交易吞吐量,导致拥堵和交易费上涨,以太坊就常常面临这个问题。扩容是解决网络拥堵的根本方案,多层结构就是实现扩容的主要方式之一。通过多层结构,数据可以在不同的网络分区并行处理,提高系统的处理效率。例如以太坊的Layer2扩容方案,以计算过程放到链下进行,最终结果传回链上的方式,增强区块链的信息处理能力。公链多层结构有不同的表现方式,有平行链和中继链、分片、Layer2、主网和子网等。
公链中的数据和价值流转需要主网出块者达成共识,根据主网中的节点对多层结构是否感知,可以分为原生型多层结构和后天型多层结构两种模式。原生型多层结构的例子是Polkadot,在设计之初就明确了信标链上的验证者负责维护网络安全以及平行链间的通信。在后天型多层结构中,主网对其他层级没有感知,不负责其他层上的任何功能,需要各层自行保证资产安全。无论是哪种类型的多层结构,它们的作用都是在保证资产安全和互操作性的前提下,实现整个系统的扩容,提高公链的处理效率。
BKEX挖矿宝新增BKK:据BKEX Global公告,BKEX挖矿宝将于2020年10月21日20:00(UTC+8)新增BKK为参与币种,用户在BKEX挖矿宝投入BKK即可参与市场流动性挖矿。
BKEX Global于7月推出DeFi挖矿宝,并于近期全新升级挖矿宝产品,升级后的BKEX挖矿宝,专业、灵活、安全、可靠,参与用户可一键畅享挖矿收益奖励。[2020/10/20]
公链多层结构的资产安全和互操作性问题
不同类型的公链结构在实现多层结构安全的方式有所不同,原生型多层结构需要上线时就对跨层机制和确保安全方面有完善的设计,在上线后很难改动。后天型多层结构会在主链的基础上进行改动,自行保证安全并且不需要主链参与,实施发现缺陷后可以及时更迭技术,更为灵活。在保证不同层间安全的前提下,多层结构的互操作是可用性的基础。与安全保证类似的,原生型多层结构中会预设跨层接口,而且互操作性的范围更广,后天型多层结构需要额外的桥连接才能实现跨片区的交互。
原生型多层结构
Polkadot
Polkadot是一种异构多链结构,表现为中继链加平行链的方式,网络中共有三个角色,验证人、提名人和收集人。提名人可以将自己的DOT抵押给验证人,验证人负责维护中继链,中继链与多个平行链相连,每个平行链都会被分配一定数量的验证人,收集人负责收集平行链上的信息并生成验证证明发送给验证人。应用全部运行在平行链上,在网络需要扩容时,只需要增加平行链的数量。
图1:Polkadot架构,内圈是中继链,外面连接的是平行链
中继链负责维护平行链的安全以及之间的信息传输,分别通过验证证明和XCMP实现。平行链与中继链共享安全的同时需要共享状态,他们通过BABE和GRANDPA达成共识,只要超过三分之二的节点投票支持,区块就可以被认为是最终性的。为了保证网络安全,平行链中的信息会由验证人证实已经执行过后,才会记录到中继链上。收集人向负责的验证人提交候选区块和状态转换的验证证明,如果平行链区块是无效的,则会被验证人拒绝。最终是验证人维护整体网络安全,验证人数量越多网络越安全,与平行链上收集人的数量无关。转化状态证明的验证必须使用验证人储存在中继链上的已注册的状态转换函数。为了防止验证人和收集人共谋,验证人会每隔一段时间进行随机分配。
BKEX Global将于今晚开启云虎IPFS超级算力第五期认购:据官方消息,BKEX Global将于2020年7月14日20:00(UTC+8)开启云虎IPFS超级算力第五期认购,认购总量为100,000份IPFS云算力,认购支持币种:USDT。
IPFS星际文件系统(InterPlanetary File System)是个旨在创建持久且分布式存储和共享文件的络传输协议,它是一种内容可寻址的对等超媒体分发协议。Filecoin是在IPFS其上的激励层,通过Token激励模式在IPFS上构建了一个去中心化存储市场。[2020/7/14]
XCMP负责实现两条平行链的互操性,通过中继链上的验证者解决信息跨链问题。XCMP由发送者和接收者组成,发送者的收集人会将跨链信息放入出站列中,负责的验证者验证后将其添加其进入接收者站列,接受者的收集人会看到这条信息后执行要求,并构建候选区块。接收链上的收集人最后将区块交给验证者,经由验证人验证消息已经被处理后,纳入中继链完成一次跨链。中继链既保证安全又协助跨链,因此Polkadot可以视为一个整体。
Cosmos
Cosmos通过Hub和Zone的形式来实现多层结构,网络通过增加Zone实现扩容,Zone也可以成为Hub再连接上其他Zone。相对于来说,Zone就是网络中的分片,Zone与Zone之间可以通过IBC协议实现通信。
图2:Cosmos网络架构
每个Zone和Hub都是一个独立的区块链,网络的安全性由每条链自行维护,每条链上都设有独立的验证者节点,他们通过共识保障链上财产。Cosmos网络多层结构交互独立,这有别于Polkadot。在构建Zone时,Cosmos提供了模块化的开发工具包CosmosSDK,允许开发者直接使用TendermintBFT共识算法。Tendermint的容错率为三分之一,并且在共识时可以实现同一区块高度上不会出现两个区块,避免了网络分叉以此实现安全。
BKEX Global 第十八期定期宝即将开启:据BKEX Global公告,BKEX Global将于2020年3月8日20:00(UTC+8)开启第十八期定期宝抢购,币种有:BTC、ETH、EOS及USDT。周期为14天、30天、60天。
BKEX定期宝是BKEX推出的数字金融衍生品之一,为加密数字资产持有用户提供稳定、安全、可靠的理财产品购买和赎回服务。除定期宝外,BKEX目前还开通了多个币种的活期宝理财业务。[2020/3/5]
Cosmos中的Zone通过IBC机制进行信息交换,IBC类似于互联网的TCP协议,目的是实现信息的可靠传输,需要共识算法的最终性防止双花,Tendermint是最符合其要求的共识算法之一。在跨链实现前,双方需要了解对方的区块头信息,相当于保存了对方的轻节点。发送方在链上执行相关操作后,会生成相关证明传送给接收者。接收者验证后发送者的操作后,会执行下一步骤。
后天型多层结构
对于后天型多层结构,原本就存在的区块链结构称为Layer1,后来在区块链本身上搭建的多层结构称为Layer2。并非所有链下方案都可以算作Layer2层,否则中心化交易所也能算作多层结构。只有在机制设计上能完全保证用户资金安全的方案才可以归入Layer2方案,例如状态通道、Plasma、Rollup等。
状态通道
状态通道和闪电网络类似,将交易转移到通道中进行,等待通道内的交易结束后,再将资金转移到主链上进行清算。为了保证交易双方的资金安全,用户可以随时把资金撤走。在这种模式下,用户每进行一次资金转移都需要经过双方签名确认,最终版的签名代表了通道内的最终状态。用户需要凭借双方签名的证明提出提现请求,如果一方用户提交了请求,在规定时间内另一方拿出证明表明前者并非使用最新的交易结果,则提出质疑的一方获得所有资金;否则按照提出方的结果进行分配。
虽然状态通道的设置保证了资金安全,但影响了可用性和互操作性,而且状态通道内很难实现智能合约。用户无法对状态通道外的人转账,只能与通道内的人交互。通道只允许双方存在,如果想与其他人交易,只能再设立一个通道或者通过其他人作为路由节点进行交易。每条通道内都要锁定一定资金,这样的话影响全网的资金利用率,并且要求节点长期在线。
Plasma
Plasma由智能合约和默克尔树结构组成,通过在以太坊主链上创建一条或多条子链实现扩容。每个Plasma子链都是由独立的节点运营,他们可以通过不同于主链的共识算法验证和产出区块。运营者将交易数据以默克尔树的形式储存,并且将默克尔根发布到以太坊主链上,这样其他人能快速验证原数据是被储存在Plasma链中。
用户在Plasma链上的进入和退出需要智能合约处理,这个智能合约包括了状态转换规则,用户可以随时与智能合约交互自行加入和退出Plasma链。因此在检测到Plasma链上运营者的作恶行为时,可以主动将资金退回到主链。在退出时,用户除了要向以太坊提交期交易记录的证明外,还需要提交保证金且有一定挑战期的限制。如果用户提交了错误的记录,需要有人在挑战期对其进行证明并扣掉他的押金。
与状态通道不同,Plasma允许将子链中的资产发送给不在子链上的用户,只需要用户在子链中提现,所以在Plasma链上的资产与主网没有互操作性。而且不同的Plasma链由不同智能合约设立,他们之间也很难实现资产跨链和互操作性。
ZKRollup
Rollup是一种链下解决方案,主网中的计算放到链下进行,将可验证的结果传回链上,并且能够保证数据可得性。和Plasma一样,在链下交易前也需要用户将资金转入Rollup地址中。ZKRollup的验证者提交链下数据者需要附属一个证明,其内容的正确性可以快速得到主链验证。但有效性证明的成本与交易的复杂度有关,如果对智能合约的操作进行验证,成本会剧增。因此ZKRollup很难支持通用智能合约,限制了它的使用场景。目前ZKRollup的研究团队在开发适用在其上的标准智能合约。
Validium是一种类似于ZKRollup的技术,同样通过有效性证明验证交易。不同的是Validium的数据储存在链下,需要运营者负责数据储存。运营者的存在让Validium更中心化,但有助于扩展链下效率,因此Validium更适用于低信任环境的高频交易场景。
Rollup是主链上扩展出的Layer2层,目前只能实现跨层资产转移,通过验证证明的方式保证Layer2层的资金安全。由于资产跨到了Layer2层,所以很难实现跨层的智能合约调用。不同的Rollup之间也很难实现互操作,目前的跨链方案多为设立双边资金池的方式。
OptimismRollup
OptimismRollup与ZKRollup同样采取了Rollup的方式,面临相同的互操作问题。与ZKRollup的验证证明方式不同,Optimism在保证资金安全上参考了Plasma模式,使用的是欺诈证明。链上信息发布者需要提交押金,并等待挑战期。其他人可以在链上提交欺诈证明揭露发布者发布了错误的数据,如果属实则会对交易进行回滚,并没收发布者的押金。挑战期结束前没有人挑战成功的话,就可以认为数据是正确的。即将上线的ArbitrumRollup是OptimisticRollup的一个变种,也设有挑战期的限制。如果有人认为数据是有误的,则要缴纳保证金并提交证明,链上合约会对其进行仲裁。他们之间最大的差异在于上传到链上的数据有所区别,在解决争端时的链上成本会不同。OptimisticRollup会在链上执行一次完整的合约调用,消耗较高成本,ArbitrumRollup缩小其中的争议范围,降低了链上解决争议的成本。
多层结构的区别与联系
很多公链都呈现出多层结构,根据区块链上验证者对其他层是否感知,它们在实现方式上有所不同。对于原生型多层结构来说,除了资产之外,在虚拟机存在的情况下,还可以在不同层中实现智能合约的调用。在多层结构中实现更多的互操作性有利于扩大生态规模,实现模块化的功能,节约开发成本,并且层级间的互通能够提高资金利用率。后天型多层结构中主链验证者不会响应Layer2层上的请求,不过Layer2层在非必要情况下也不会与主链进行交互,因为会占用主链资源,影响Layer2的扩容效果。由于没有类似于原生型多层结构中的中继者或达成统一协议,在Layer2之间实现互操作性是非常困难的。
后天型多层结构在资金安全问题上会涉及到更复杂的问题,需要用户资产在链下能够实现和主链相同的安全性。在目前Layer2的设计方案中,都保证了无论Layer2上是否存在验证者,用户在链下的资产都可以随时提回链上,需要通过各种机制设计保证用户资产的安全性。下表是对不同多层结构在互操作性、跨层方式和层中角色方面异同的总结。
表1:多层结构的异同
思考与总结
多层结构通常是公链实现扩容的方式,将原本在一条区块链上交易的信息分散到多层中,通过并行处理提高效率。多层结构有两种表现方式,原生型和后天型,他们在验证者对多层结构的感知上有所区别。
在原生型和后天型多层结构中,信息通过不同的方式进行跨层传递。原生型多层结构例如Polkadot和Cosmos分别通过中继链和协议的方式实现跨层,对多层结构有严格的限制,Polkadot要求平行链的结果由中继链共识决定,Cosmos要求使用IBC协议的双方达成一致的共识安全,例如双方都使用Tendermint算法。Polkadot中继链的验证者负责平行链的信息传递和资产安全,可以将多层视为整体。Cosmos的多层结构则较为独立,每层均有独立的验证者。后天型多层结构只能通过资产映射的方式进行跨层,映射资产的安全性源自用户可以自行加入和退出Layer2,保证用户掌握控制权。为了实现链下交易与主链同等的安全性,不同Layer2方案设计了各种机制。例如状态通道中需要用户交易后更新签名状态,Plasma将原始数据的默克尔根发布在主网上,Rollup将压缩后的交易传回主网,交易方或第三方可以直接验证。
在更广义的互操作性上,原生型多层结构要优于后天型,因为他们可以实现信息流转及智能合约的调用。而后天型多层结构中由于信息源自链下,主链上验证者没有感知,在Layer2和验证者之间不会存在直接交互。对于不同Layer2而言,由于都是从主链上延展出的结构,跨层互操作性的难度不亚于两条异构链之间互操作。目前实现的资产跨层是双边资金池的方式,距离真正的互操作性还差很远。总之在区块链应用大规模部署前,多层结构依然是公链的趋势,接下来还将在互操作性以及生态扩展方面进行完善。
免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。
以太坊
以太坊
开放的分布式区块链应用平台,通过其专属加密货币Ether以太币提供去中心化的虚拟机,处理点对点合约。允许任何人建立和使用通过区块链技术运行的去中心化应用,没有任何欺诈、审查、第三方监管。以太坊的概念首次在2013至2014年由维塔利克·布特林VitalikButerin受比特币启发后提出,旨在共同构建一个更全球化、更自由、更可靠的互联网。以太坊EthereumETH以太坊区块链以太坊发展企业以太坊联盟以太坊入门新手ERC20ERC-20ERC20ERC721ERC-721以太坊2.0以太坊2.0以太坊社区基金查看更多波卡
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。