区块链的可拓展性研究【04】分片

这篇具有很好参考价值的文章主要介绍了区块链的可拓展性研究【04】分片。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

分片属于layer1扩容

区块链分片是一种技术实现,可以将区块链网络分成多个片段,每个片段负责处理一部分的交易数据。这种方法可以提高区块链网络的处理速度和吞吐量,降低交易确认时间和费用,同时也可以减轻节点运行负担。

在传统的区块链网络中,所有的交易都需要被所有节点共同验证和记录,这会造成网络拥堵和交易速度缓慢等问题。而区块链分片则将整个网络拆分成若干个小的片段,每个片段独立处理和验证其所包含的交易数据,从而大幅提高了网络的处理性能。

分片技术将整个区块链网络分成不同的分片,由各分片的节点负责处理所在分片的事务以及存储分片的状态,通过并行验证事务,整个区块链的吞吐量近似线性地提升;同时,随着节点数目的增加,整个网络的分片数量也随之增多,全网处理事务的能力将进一步提高。分片技术一般需要定义分片配置、片内和跨片共识协议、重配置方案等阶段,从而构成一个完整的分片区块链系统。

对于任何一种分片方式来说,需要解决如下两个主要问题:
内部共识的安全性
跨片操作的原子性

分类
网络分片 network sharding
网络分片是通过一定的组织方式将整个网络分成不同的分片,各个分片并行处理整个区块链中的部分交易,各部分的交易完全不相同,从而同时完成多笔交易的验证。
为了避免恶意节点过分填充一个分片、从而控制网络,通过可验证随机函数VRF,每隔一段时间随机抽取节点形成分片。
交易分片 transaction sharding
交易分片使得各个网络分片对交易具有更强的处理能力,将客户端的跨片交易分成若干个相关的子交易,不同分片的跨片易可以并行处理。
但是在基于UTXO的账本系统,一笔交易可能由多个输入和多个输出构成,因此一般通过交易的hash值分片。为了防止双花交易,必须要在所有分片间建立通讯。但是这种相互之间的通信开销可能会破坏交易分片的扩容效果。 ​ 在基于帐户的系统,每个交易都将具有发件人的地址,通过发件人地址分片,造成双花的两笔交易会在同一个分片中得到验证,因此不需要在不同的分片中建立通讯,避免额外的通讯开销。
状态分片 state sharding
状态分片是将各部分完全不同的账本分别存储在各个分片(分片内的节点往往存储同一版本的账本),整个分片网络组成一个完整的账本,可以减少各个节点存储账本的压力。
状态分片的关键是将整个存储区分开,让不同的分片存储不同的部分,每个节点只负责托管自己的分片数据,而不是存储完整的区块链状态。可以减少状态的冗余存储,使得整个区块链网络具有存储的可扩展性。 ​ 但是状态分片有以下几个问题需要解决,1)会导致频繁的跨片通讯;2)由于系统状态没有在所有分片中复制,因此网络一旦有交易的输入是来自脱机的分片,那么这笔交易将无法得到验证;3)而且由于每个分片只保留了状态的一部分,所以在每次重新调整网络的过程中,必须要考虑防止调整过大而导致在同步完成前可能会出现的整个系统失效的问题;

总体上来说,分片技术虽然在一定程度上有效地解决了区块链可扩展性问题,但还存在很多方面的不足需要改进。一方面,整个分片机制运行过程中有大量的时间用于处理交易以外的事情,组织分片、分片重配置需要花费大量的时间和开销。另一方面,状态分片是分片方式中极为难实现的一环,在状态分片的情境下,跨片交易的验证过程就变得极为困难,不同分片节点由于其存储账本不同而需要通过一定的方式进行交易转移或账本状态交流。

步骤

分片配置
对于整个网络来说,首先要实现网络分片,基于安全性和效率考虑,通常使用随机函数进行分片。
例如,可以让加入的节点去计算PoW,通过计算结果的hash分片;或者通过账号地址,等参数分片,其地址本身也是hash值,因此也相当于随机分片。分片重配置
为了保证各个分片的安全性以及防止节点之间作恶的行为发生,在一个分片纪元过后,一部分节点从原有分片中取出与其他分片中的节点进行交换。
虽然二次全随机分片能够尽量保证分片后区块链网络的安全性,但是在重配置的过程中整个网络对于交易的验证停滞,全网都要在重配置前后进行新旧账本的交接,无论在开销上还是时间上都大幅度降低整个区块链的性能。因此还有部分重分配和自由选择重分配的方式减少再次分片中的开销,但这都是以安全性为代价的。片内共识
在完成分片配置后,区块链需要进行交易共识,共识分为片内共识和跨片共识。片内共识要求同一分片内各个节点按照所在分片的协议进行共识和广播,最终得出整个分片的共识结果。片内共识协议主要分为基于PoW的片内共识协议和基于BFT的片内共识协议。跨片共识
跨片共识不同于片内共识,片内共识时片内各个节点经过彼此间广播可直接进行交流,由于所存储信息不相交,跨片共识时不同分片之间各节点在交易验证过程中需要交流账本状态,因此跨片交流的基本单位是各个分片,不同分片执行共同的跨片协议实现共识。跨片共识的主要方式有交易原子化、交易集中化和采用类路由协议。文章来源地址https://www.toymoban.com/news/detail-767935.html

到了这里,关于区块链的可拓展性研究【04】分片的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【论文复现】基于区块链的分布式光伏就地消纳交易模式研究(Matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 2.1 最优价格曲线 2.2 用户1 的需求响应

    2024年02月05日
    浏览(53)
  • Layer1扩容:分片和可组合性

    以太坊和其他公链,都在尝试利用多链结构扩容,例如以太坊2.0可能实现的同构分片、波卡正在实施的异构分片、COSMOS的跨链结构。而雪崩协议等网络,在多链结构里更细化的定义了功能分层和功能模块化实现扩容。 这些都是庞大且长远的设计,波卡还在经历插槽拍卖、CO

    2023年04月10日
    浏览(35)
  • 区块链的数据结构(一)——区块、链

            区块(block)由区块头(block header)和交易列表(transaction list,tx list)组成,block之间通过block header的hash连接成了一个链表结构。但这个链表不同于普通链表。 1. block header 比特币的block header: 以太坊的block header: hashPrevBlock / ParentHash ,上一个block header的hash h

    2024年02月13日
    浏览(41)
  • 【区块链杂谈】区块链的前世今生(今生)

    在前面,我们回顾了区块链技术自诞生到野蛮生长的三个阶段,自某些不可抗因素主动干预之后,整个市场因为比特币价格的腰斩而萎靡不振,热衷于赚取热钱快钱的投机者逐渐退出,只留下了一片狼藉。 在这样的背景下, 区块链的发展逐渐由币价驱动转向技术驱动 ,投机

    2024年02月09日
    浏览(40)
  • 区块链的分类,区块链有哪些类型

    区块链是一种去中心化的分布式数据库技术,它在各行各业都产生了深远的影响。虽然区块链在过去几年中已经变得越来越流行,但对于初学者来说,理解区块链的概念可能会有些困难。本文将介绍区块链的三种基本类型:公有链、私有链和联盟链,以帮助您更好地了解这个

    2024年02月12日
    浏览(45)
  • 区块链的认识

    目录  频繁的交易如何记录这些交易信息呢?  那我们的链又是如何连接起来的?  谁做记账先生呢? 共识机制   如何处理有些人距离账目的公共太远的问题?  安全性: 去中心化:  总结:     频繁的交易如何记录这些交易信息呢? 我们可以采用记账先生去记录这些交

    2023年04月08日
    浏览(48)
  • 区块链的基本介绍

    目录 1、简介 2、区块链的分类 2.1 公有链 2.2 联盟链 2.3 私有链 3、区块链特征 4、区块链结构 5、区块链对记账权利的分配方式 5.1 POW 5.2 PoS  5.3 DPoS  6、Defi、NFT、 gameFi 7、DAPP  7.1 DAPP 的核心要素 8、比特币 8.1 比特币简介 8.2 比特币数字签名和安全问题 8.3 比特币的分叉和演变

    2024年02月08日
    浏览(53)
  • 区块链的技术

    区块链的存储基于分布式数据库; 数据库是区块链的数据载体,区块链是交易的业务逻辑载体; 区块链按时间序列化区块数据,整个网络有一个最终确定状态; 区块链只对添加有效,对其他操作无效; 交易基于非对称加密的公私钥验证; 区块链网络要求拜占庭将军容错;

    2024年02月13日
    浏览(50)
  • 区块链的控制反转

    号外: 教链内参11.26《超80%流通盘处于浮盈》 控制反转这个词儿来自于计算机软件的一种设计模式,英文称为Inversion of Control,缩写是IoC。教链借用这个术语,来指称在区块链系统中,消除传统的“人控制机器”的控制模式,反转为“机器控制人”的控制反转模式。 掌握了这

    2024年02月05日
    浏览(55)
  • 区块链的加密算法

    随着区块链技术的发展和广泛应用,加密算法也日益成为区块链系统中不可或缺的一部分。本文将介绍区块链中的加密算法,包括基础概念、签名算法以及隐私保护技术,旨在介绍这些技术的原理和特点,并探讨其在未来区块链技术发展中的潜力和应用前景。 1 区块链的加密

    2024年02月09日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包