| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 区块链 -> 矿视界译文:以太坊2.0的分片是如何工作的? -> 正文阅读 |
|
[区块链]矿视界译文:以太坊2.0的分片是如何工作的? |
什么是分片? 分片(Sharding)指的是将整个以太坊网络分成许多个小部分(Shards)。每个分片都包含独立的状态、完整的账户系统和智能合约。 分片绝对是最复杂的以太坊扩展解决方案,因此它也被放在了以太坊2.0路线图中的最后一阶段,给开发者充足的时间开发和在生产环境中测试。 在进入分片的技术细节之前,我们首先需要了解节点在以太坊网络中扮演的角色。节点负责验证链上交易并确保交易都遵守区块链共识规则。要做到这一点,最好的方法就是让每个节点都保留一份以太坊交易账本的完整副本,用以验证交易的真实性和完整性。但是以太坊的链上数据一直在快速增长,目前的数据大小已经超过1TB,对于普通人来说保存完整的数据副本是不切实际的。 以太坊的瓶颈 这就导致了一个大问题:如果以太坊全节点的运营成本过高,运营全节点的人数就会越来越少,网络将更容易受到中心化的影响。 同时,如果每笔交易都需要通过所有节点验证,那以太坊也将难以实现可拓展性,分片将是这些问题的终极解法。 分片与状态通道和plasma等拓展解决方案不同的是,分片不会将任何交易数据放到链下处理。分片只是将链上数据分成很多个部分,节点就不需要处理网络上的所有交易,而只要处理某一个片区的交易。分片也引发了一个讨论,分片后还能保障区块链的安全吗? 分片的优势 迄今为止,还没有任何区块链网络可以同时实现以下三个特性:去中心化、可扩展性、安全,这被称为区块链不可能三角。所以,分片可以看做是在这个三难困境前提下,相对牺牲了一部分安全性的情况下,解决以太坊可拓展性的解决方案。 在每一个分片中,将会周期性地随机挑选出一批公证人(Notaries)用于验证区块,相当于PoW链中矿工的角色。然后以太坊主链上将会有一个委员二次检验这些区块的真实性(Validity)。每个分片的出块方式和块之间的排列方式与主链是完全一样的。 每个分片都以默克尔树的形式与以太坊主链相关联,两者之间的链接也是加密的。每个分片都可以充当独立的区块链。每个分片上的用户都有自己的账户余额,与以太坊主链无关,只能用于与用一个分片上用户间交易。 对于以太坊分片最简单的理解方式就是,想象以太坊链被分裂成数千座岛屿,每个岛屿有自己的特色,也是主权独立的。如果他们想联系其他岛屿,将需要使用某种特定协议。每个分片独立存储了该分片上的交易信息,但是在需要时又可以随时返回主链。 分片的挑战 虽然分片在理论上听起来很不错,但也存在许多潜在的攻击途径。一种特定的攻击是单分片接管攻击(Single-shard takeover attack)。这种攻击的方式是,攻击者接管了某一分片中的大多数出块者,创建了一个提交不实交易信息的恶意分片。 以太坊核心开发人员提出了随机抽样检查的应对方法,这个解决方案目前还在积极开发中。 分片在权益证明链上比在工作量证明链上更容易实现。因为权益证明链上本来就已经有活跃的验证者,这些验证者可以被进一步随机指派到不同的分片中去。而在工作量证明中则无法阻止矿工向特定分片贡献算力。如果矿工可以选择他们想要验证的分片,他们就可以联合起来共谋作恶。 作者 | district0x 翻译&校对 | 林芒果 本文由矿视界(奇迹摩尔)翻译整理编辑,如需转载,请标明出处 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:58:29- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |