链资讯 链资讯
Ctrl+D收藏链资讯

区块链:分片技术:区块链底层 Layer1扩容方案_ETH

作者:

时间:

什么是分片

分片技术并不是什么创新的概念,早在区块链技术出现之前,就已经在传统数据库中运作了,主要用于大型商业数据库的优化。

其概念就是将数据库中的数据,切割成很多数据分片,再将这些分片分配到不同的伺服器中储存,如此一来,就不会因为短时间内出现大量数据访问请求,而出现单一伺服器压力过大的问题。

在传统的区块链网络中,交易必须有网络中的每个节点进行确认,以保证交易的安全,然而这也是导致交易速度难以提升的主因之一。

分片技术-pow

而把分片技术运用到区块链网络中的方式,是将区块链网络划分成若干个子网络(或称分片,shard),每一个子网络都会包含一部分节点,网络中的资料储存与交易,会被随机分配到各个分片中做处理。

如此一来,每个节点只需要处理一小部份的工作,且不同分片上的交易可以并行处理,网络的交易速度便能因此获得提升。

分片技术-分片

另外,传统的区块链大部分都是单链结构,所有矿工都会相互竞争取下一个区块的计帐权。

Alex Chien:在解决网络可扩展性方面,波卡平行链很像以太坊2.0的分片技术:金色财经报道,在8月28日举办的《金色百家谈 | Polkadot如何构建资产互联网?》的直播节目中,达尔文网络(Darwinia Network)联合创始人Alex Chien表示,波卡平行链是特定于应用程序的数据结构,它在上下上是一致的,并且可以由 Polkadot 中继链的验证人进行验证。通常平行链会是一条区块链, 但并没有特别要求它们必须是一条链,之所以叫他们平行链是因为它们于中继链并行运行。由于它们的并行性质,它们能够并行地处理交易并实现 Polkadot 系统的可伸缩性。它们与 Polkadot 网络共享安全,并且可以通过 XCMP 与其它平行链进行通信。

在解决网络可扩展性的方面,平行链确实很像以太坊2.0将要实现的分片技术,例如共识算法和Staking相关的设计。

每个平行链有自己的业务规则和治理主权,波卡使用共享安全和共享运行时(Shared Protected Runtime Execution Enclaves),链上治理的方式来组织和保护这些分片,各个平行链还可以自主的选择申请加入和退出波卡网络,从这一点上看有点像欧盟。

而以太坊2.0的每个分片都更加一致和统一,并且使用同一种业务规则和语言,整个系统统一治理,相较于波卡的欧盟模式,则更像美国。[2020/8/28]

且大部分区块链产生区块的平均时间是固定的,例如比特币平均每10分钟产生一个区块。

声音 | Solana CEO:分片技术可能会为区块链项目引入安全风险:分片被广泛认为是区块链可扩展性的解决方案。但Solana首席执行官Anatoly Yakovenko称,实施分片技术的项目可能会在其区块链中引入新的安全风险,可能使它们容易受到共识攻击。 他认为,与分片相关的风险远远超过任何可能的可扩展性好处。“一旦你拆分网络,就会引入一个额外的攻击媒介。分片技术会破坏安全性。”如果一个分片被黑客接管,可能会引发多米诺效应,影响代币价格,导致用户和节点的大规模外流。他补充道,分片允许黑客利用分而治之的策略摧毁原本欣欣向荣的生态系统。 Radix(XRD)CTO兼联合创始人Dan Hughes表示,分片的区块链容易受到安全风险的影响,但他们已经创建了一个安全的分片实现。他补充,虽然第一次的分片迭代可能会让区块链容易受到攻击,但这项技术正在快速发展。区块链项目在安全性和可扩展性之间可走的道路狭窄,但它并非不可逾越。[2019/8/29]

即便有越来越多的矿工加入挖矿行列,区块链也会自动提升挖矿难度,以确保区块产生速度固定在每10分钟产生一个区块。

简单来说,区块链网络中算力的提升没办法增加交易速度,这也就是为什麽区块链会是不可扩展。

如果要用简单一点的例子来形容的话,就好比你把汽车改车V8大马力引擎,但汽车电脑却设置了速度限制,不能开超过60。

动态 | Ripple引入历史分片技术:据blokt报道,10月31日,Ripple 在ripple 0.90.0上引入了历史分片(History Sharding)技术。该功能允许单个Ripple服务器存储历史数据,而无需存储整个历史记录。[2018/11/2]

在分片技术中,区块链算力的提升,意味著分片数量的提升。

也就是说网络中所投入的算力越多,能够同时并行处理的交易也会越多,整个网络的交易速度也会线性提升。

运用在区块链上的分片技术,又能够分为三种:

网络分片、交易分片、状态分片。

网络分片

由于区块链的区块与区块之间具有强连结性,也就是说,每一次的区块新增,都需要矿工互相通信确认新区块的有效性。

虽然这能确保链上交易纪录的正确性,却也导致区块链结构上存在不可扩展性的缺点。

因此,分片的第一步,需要先将区块链网络分片,再尽量降低互相通信的前提下,由各个分片处理链上交易。

说的简单一点就是将矿工随机分组,再将工作分配给各组矿工独立验证。

网络分片涉及到的问题是,分片后如何确保链上交易安全性能够维持。

NASH公布技术方案:加入动态分片技术:今日,NASH开发团队正式公布技术方案,其将采取“BFT+DPOS+ microBlock + 动态Sharding”的算法,该算法是在mircoBlock并?流?线的基础上,加?了动态分?技术。由于单个分?性能仍然?法满足海量Dapps的?并发性能需求,NASH块链平台便采?2的16次方个分?,?幅提升了NASH块链平台的整体吞吐量;同时,采?动态sharding技术,按照不同账户交易的频度调整分?内容,使得交易尽可能在同?分?完成,从?减少跨链交易。[2018/6/2]

随机分配

矿工分组之后,网络分片第一个会面临到的问题是,攻击者的攻击成本会大幅降低。

下方这张图说明的是,本来假设有100个矿工,要掌握51个才能瘫痪网络,自从有分片后,假设是100个分片,矿工一人顾一个分片下,就变成我只要有全网1%的攻击力,就有机会瘫痪某一个甚至两个分片,而这1%在原本的PoW下,根本起不了作用。

要防范攻击者最好的做法,就是建立随机性。

区块链底层Layer1扩容方案

纽约Consensus大会Penta发布全新分片技术PSG:Penta CMO Mr. Stephane Laurent在美国纽约举行的Coin Desk Consensus 2018峰会上接受媒体采访,全球首次向媒体介绍了Penta的全新分片技术Penta Sharding Graph(PSG)。这是继提出了独特的DSC共识算法之后,Penta技术团队再次首创的技术突破。PSG用账本结构来扩展Penta主链,对不同地址或DAPP的交易采用动态分组的方式实现区块的并行处理,并自动协调交易的并行和串行处理,同时保证了系统的一致性、公平性、安全性和可用性。本次Consensus 2018大会规模空前,很多区块链行业重量级人物也都在会上发布了新的成果。以太坊联合创始人Joseph Lubin宣布了ConsenSys在Enterprise Blockchain的全新成果,Dr Yaniv Altshuler宣布了MIT Blochchain System Alliance的成立。[2018/5/17]

在区块链领域建立随机性的方式主要是利用可验证随机函数,利用此演算法,网络可以随机抽取节点分组形成分片。

这样一种随机抽样的方式可以防止恶意节点控制单个分片。

分片的共识机制

解决了矿工分组的问题后,所要面临的问题是分组后的矿工,验证过程如何达成共识。

达成共识的算法可以选择我们熟知的PoW、PoS、PBFT等共识机制。

简单来说,网络分片就是矿工的挖矿规则,为了在分片的同时不失去去中心化特性,开发者需要尽可能地在安全与效率取得良好的平衡。

例如,网络中分片的数量与每个分片中节点的数量等问题,都需要谨慎考虑。

交易分片

网络分片针对的是矿工的游戏规则,而交易分片所针对的是哪些交易要被分配到哪些分片,然而,区块链的帐本模型的不同会对交易分片的开发造成影响。

UTXO帐本模型

UTXO的帐本系统,例如比特币,交易纪录是由多个input和多个output构成,没有帐户的概念,也不会有馀额的纪录,我们没有办法按照地址进行交易分片来有效地避免双花问题。

UTXO较直观的交易分片方式是按照交易hash值的最后几位进行分片。

例如,“如果哈希值的最后一个值是0的话,那麽交易将被分配给分片1,否则它被分配给分片2(假设只有两个分片)。”

然而,我们说过,UTXO的交易是由input和output构成,假设A发起了一笔交易,该交易的哈希值的最后一个值是0,被分配到第一个分片验证。

此时,A又发起一笔input相同但output不同(发给不同人)的交易,该笔交易被分配到第二个分片,如果不採取任何措施,这两笔交易将因为同时在两个分片当中进行处理和验证,而导致双花攻击。

在UTXO帐本系统的交易分片中,解决双花攻击的办法是分片1和分片2相互通信,以确保同一笔钱没有被重复花费。

但是在实际过程中,分片数量众多且交易的hash值是随机的,交易会被随机分配到各个分片,这就表示每个分片之间都必须相互沟通。

很明显,这方法行不通,因为如果这么做,就代表分片无法独立验证,分片就没有意义了,因此UTXO先天上就较难以实现分片。

Account帐本模型

由于UTXO帐本模型较难实现交易分片,因此,大多数采用分片技术的区块链,都是像以太坊一样的Account帐户帐本系统。

有了帐户,每一笔交易将会包含发送者的地址与余额。

因此我们只需要将交易按照发送者的地址进行分片,即可保证同一个帐户发出的多笔交易将被在同一个分片当中被处理,这样该分片即可有效的检测双花交易。

不过一但涉及到跨分片交易,例如:分片1的帐户要与分片10的帐户进行交易,势必需要跨分片的沟通来验证交易的有效性。

但与UTXO相比,至少不需要跟所有的分片沟通,只需要分片1与分片10沟通即可。

状态分片

状态分片可以简单理解为,在区块链资料分配在在不同分片中储存。

其所涉及的是链上资料的分片,也就是链上资料与交易纪录分片储存,借此减少节点的存储负担。

与其他两个分片机制相比,状态分片是最棘手的难题。

目前的状态分片有以下三个问题需要解决。

1)跨分片交易通讯的效益平衡

过去区块链的状态,例如帐户馀额状态储存在全网中,由全网节点共同更新维护。

但是在分片机制下,交易会根据地址分配在不同的分片处理,也就是说,状态只会储存在其地址所在的分片中,此时要面临的一个问题是,交易不会只在一个分片中进行,时常会涉及到跨分片交易。

因此若交易双方帐户被分配在不同分片,分片与分片之间势必要进行沟通才能够确保交易的有效性,频繁的跨分片互动,很容易导致整体网络效率下降。

例如:

A的地址分配在分片1,交易的纪录也会储存在分片1。

B的地址分配在分片2,交易的纪录就会储存在分片2。

一但A要打币给B,就会形成跨分片交易,分片2就会向分片1调用过去的交易纪录,确认交易的有效性,A频繁的打币给B,分片2就必须不断跟分片1互动,交易的处理效率便会因此降低。

2)分片动态刷新和节点状态更新之间的平衡

区块链的节点会随着时间而增加,且节点若长时间未重新分配,会导致交易状态过度集中化,降低遭受攻击时的弹性。

因此网络每隔一段时间需要重新调整网络节点,也就是所谓的动态分片,而新进节点也会借此更新与同步其所在分片的状态。

然而每一次的节点调整,都必须在该分片完成网络同步后,才能开始处理交易,这会造成部分延迟问题,因此设计时必须掌握好节点调整的数量与时间,否则很可能会造成分片瘫痪。

3)全网数据备份与中心化风险之间的平衡

还有一个问题是,若某些特定的分片遭到了攻击而导致其验证失去有效性。由于分片并没有複制系统的全部状态,所以网络也无法验证那些依赖于该分片的交易。

解决此问题的方法是维护存档或进行节点备份,这样就能帮助系统进行故障修复以及恢复那些不可用的数据。

但是,这样就代表系统的状态只会储存在少数节点,这会引发一些中心化的风险。

链金研究员总结

虽然分片技术与其他解决方案相比,较复杂也较难实现,但分片技术依然是目前备受期待的Layer1扩容方案。

知名的分片项目Zilliqa主网在2019年1月31日正式上线了,过去在测试网上都有相当不错的表现,实际的效能还有待确认。

而我们所熟悉的以太坊,也将会慢慢开始进化,从以太坊1.0进化到以太坊2.0,除了会将共识机制从PoW改成PoS外,还会加入BeaconChain让分片技术得以在以太坊上实现。

分片技术的发展,或许将成为区块链迈向落地应用的一项重要决定性因素。

标签:区块链ETHALYNAN区块链dapp开发togetherbnb黄油场景ALYA价格YFOS.finance

欧易okex官网热门资讯
GameFi:GameFi参与者的共识博弈_MEF

GameFi能否被简单的定义为DeFi? 译者语: GameFi的本质到底是什么?GameFi能否被简单的定义为DeFi?关于这些问题,争论不休.

ETH:读完倒吸一口寒气 一亿美元是怎么差点被走的?_sunshineranch

本文梳理自Arrow创始人thomasg.eth在个人社交媒体平台上的观点:在过去两周的时间里,我成为了一个高级团伙的目标,这几乎让我损失了所有的ETH.

ETH:细数加密数据服务赛道:估值动辄10亿美元 颇受传统机构青睐_Mixty Finance

在大单频现的区块链一级市场,有一个赛道不容忽视,那就是区块链数据服务。这一赛道从2021年初以来就颇受资本青睐,涌现出不少独角兽企业。数据是新时代的石油.

mfers: 丧文化 后亚文化下的web 3.0新部族

在《Azuki:日本动画与Web3.0后民族身份特征?》一文中,我从Azuki作为日本动画的一个延续的角度,阐述了Web3.0的去中心化理念与日本科幻动画里的虚拟世界相互呼应的原因.

FER:金色观察|万卉:Web2的背面不是Web3_WEB3

本文来自twitter“Dovey“RugTheFiat”Wan”整理而来,转载请注明出处。“Web2的背面不是Web3”?这大概是今年我重复说的最多的一句话.

WEB:Polkadot平行链拍卖如何为去中心化Web 3带来可能性_ADO

暴走时评:Polkadot的平行链拍卖注定会成功,通过将不同的区块链连接在一起,将确保去中心化的Web3的实现.