作者:YQ,AltLayer创始人;翻译:金色财经cryptonaitive
跟着以太坊的运用添加,运转完好节点变得对资源和带宽要求更高。这导致越来越少的人能够运转完好节点,降低了网络的去中心化程度。此外,跟着买卖需求的添加,以太坊在扩展方面面对窘境,导致网络拥塞和高昂的Gas费。
Vitalik于2017年提出的无状况客户端为处理以太坊面对的去中心化应战供给了潜在处理方案。无状况客户端的要害思想是削减运转完好节点所需的存储和带宽要求,使更多的人能够参加并使网络去中心化。本文将深入探讨无状况客户端的作业原理以及它们的潜在优缺点。
什么是以太坊状况?
要理解无状况客户端,我们首先需求了解以太坊中的“状况”概念。以太坊状况是指以太坊国际中所有账户、合约、余额、nonce和存储的当时状况。它能够被看作是在给定时刻点上存储以太坊网络的所有相关信息的数据库。
状况以Merkle Patricia trie的形式持久化,这实质上是一个修改正的Merkle树,用于存储key-value对。该trie的根哈希总结了整个状况。每个新区块,根据该区块中的买卖,状况会更新。新的状况根哈希包括在区块头中。
跟着时刻的推移,跟着越来越多的账户、合约和买卖被添加,以太坊的状况变得越来越庞大。现在,状况的巨细超越1TB,每年添加数十GB。这种不断增加的状况是去中心化问题的根本原因。
为什么状况增加会引起问题
以太坊状况巨细的添加导致了一些要害问题:
● 新节点同步时刻较长——新节点同步所有历史状况改变需求很长时刻。这添加了运转新的完好节点的难度,阻止了去中心化。新节点从创世区块同步到最新状况现在需求多天,甚至数周,对于顾客硬件来说,这是一个阻止有用发动新节点并答应更多参加者参加网络的首要妨碍。
● 硬件要求添加——更大的状况需求更多的存储、内存和处理才能来存储、拜访和更新。这使得资源较少的用户无法运转节点。运转一个彻底同步的以太坊节点现在至少需求一个具有1-2TB容量的SSD。这对许多潜在的节点运营者来说是无法企及的。
● 带宽运用添加——新区块的播送有必要还包括更新后的状况,需求更多的带宽。这会添加节点运营者的本钱。现在,状况主导大多数区块播送,因而区块巨细不断增加。更多的带宽转化为节点运营者的更高本钱。
● 区块验证变慢——读取和更新较大的状况使区块验证变慢,约束了买卖吞吐量。每个买卖都需求屡次读写存储以更新余额、nonce、合约状况等。较大的状况意味着每个区块的读/写更多,削减了每秒能够处理的买卖数量。
● 永久存储本钱——一旦数据被添加到状况中,就有必要永久存储。这导致unbounded状况增加。现在没有主动删除旧的和未运用的状况数据的机制。因而,只需以太坊继续运转,状况保存本钱就会无限添加。
什么是无状况客户端
无状况客户端供给了一种在不需求拜访完好以太坊状况的情况下验证新区块的办法。它们利用称为“witnesses”的暗码证明来证明区块中状况更改的有用性,而无需详细的状况数据。
无状况客户端作业方式如下:
1、客户端仅存储区块头和状况根,而不是完好的状况数据。区块头包括在处理该区块之后状况trie的根哈希等元数据。
2、在验证新区块时,客户端与区块一同接收到一个“witness”。这个witness是一组默克尔证明,证明了买卖中特定的状况更新是有用的。
3、witness包括特定状况值的Merkle证明,用于处理买卖。例如,账户余额或合约存储的更新。
4、客户端运用witness来确保买卖对终究已知状况根的有用性。证明验证状况更改与从前的根匹配。
5、假如有用,客户端更新到区块头中供给的新状况根。这个新的状况根将用于验证下一个区块。
经过运用witness验证状况,而不是在本地存储完好的状况,无状况客户端获得了一些优势:
● 十分快速的同步时刻——无需彻底同步历史状况更改。无状况客户端几乎能够瞬间同步,只需区块头即可。
● 低存储要求——状况根仅为32字节。而不是数百GB的状况,只需求区块头。
● 更少的带宽运用——只传输区块头和witnesses,而不是完好的状况。带宽运用最小化。
● 快速验证——witnesses仅包括小的相关状况子集。只证明已更新的账户/存储是有用的。
● 轻松支撑轻客户端——轻客户端能够轻松验证证明。轻客户端模型与无状况验证十分兼容。
无状况客户端的应战
尽管无状况客户端带来了一些重大好处,但也存在一些显著的技能应战:
● witness巨细——witnesses或许过大而无法有用传输。假如运用完好的Merkle证明,它们或许会超越区块巨细的约束。
● witness的创立——生成最佳的witness对于区块提议者来说是杂乱的。提议者有必要组装正确的证明片段来验证每个买卖。
● 没有witness鼓励——供给witness没有直接的奖赏。与挖矿不同,witness的创立没有内置的鼓励机制。
● 临时数据——witnesses在某一时刻点证明状况,需求再生。witness不能在状况发展过程中被复用。
● 状况存储——依然需求有人保护完好的状况以生成witness。无状况验证依赖于有状况的witness生成。
● 杂乱的应用——一些合约或许依赖于较大的状况子集,使witness变得臃肿。例如,每个买卖更新许多存储槽的合约。
或许的处理方案
研究人员提出了各种处理方案来处理这些应战:
● Verkle树——用于减小witness巨细的特别数据结构。Verkle树运用简洁的暗码承诺来最小化证明巨细。
● witness缓存——提议者能够保护最近的witness以便复用。缓存或许再次有用的witness能够摊销创立本钱。
● 协议鼓励——供给有用witness的奖赏机制。新的鼓励结构能够补偿witness的创立。
● 中间状况根——随时刻跟踪根以防止从头生成证明。保护部分根能够重用witness片段。
● 状况租金——要求支付以长时间保护状况,修剪未运用的状况。租金强制清理过时的存储以约束证明巨细。
● 分区witness模型——在提议者和验证者之间拆分状况处理。一些专用的提议者节点生成witness。
这些办法之间存在权衡,需求进一步的研究来发现最佳实现。走运的是,零知识暗码学领域的快速创新或许会为高效无状况客户端带来新的或许性。
潜在影响
假如技能妨碍能够被战胜,无状况客户端或许会显著推进以太坊的发展:
● 更快的同步和验证以支撑更高的买卖吞吐量。无状况验证将极大地加快区块处理。
● 削减运转节点所需的资源,提高去中心化程度。笔记本电脑和业余爱好者或许真实地运转完好节点。
● 更好地支撑移动钱包等轻客户端。状况证明与轻客户端模型高度兼容。
● 更顺畅地引入分片,在分片之间进行无状况验证。跨分片买卖能够利用高效的状况证明。
● 删除和修剪不再有用的旧状况数据的才能。状况增加能够被活跃办理,而不是无限增加。
● 节点运营者更灵敏地根据需求自定义状况的才能。节点能够根据用例定制状况保存策略。
● 过渡到计算和带宽更重要于存储的模型。架构向愈加云友好的模型发生变化。
也存在一些潜在的危险,如添加对DDoS进犯的脆弱性以及只要少数节点运营者可靠地存储区块链历史。但是,暗码学证明能够削减这些危险。整体而言,无状况客户端是战胜以太坊当时约束的最有前途的办法之一。
定论
跟着选用的添加,以太坊不断增加的状况巨细对去中心化构成了应战。无状况客户端经过使节点能够验证买卖而无需完好的区块链状况来供给一种处理方案。这终究或许使移动手机能够运转以太坊节点,然后极大地提高了去中心化程度。
此时快讯
【某网络钓鱼地址已收集超过10万美元】金色财经报道,Cyvers平台的实时安全警报显示,其AI驱动的ML刚刚标记了一个网络钓鱼地址0x450805e6958775fc6dc77d5bfdb1af72c34a4b1a,(TRX调用者被标记为Fake_Phishing187812),该地址已筹集超过10万美元,目前持有2.25万美元的 USDT,被盗资金分散在各个EOA中。
此外,网络钓鱼者使用不同的EOA向 0xe7408135417549d46704eeb959b8d85aaec7bd48发送了11,1000 USDT,该地址已被报告为OTC诈骗者,目前持有4100万美元的加密资产。