主页 > 苹果下载imtoken钱包下载哪一个 > 重启以太坊能否减轻节点负担?

重启以太坊能否减轻节点负担?

来自 Cosmos Hub 的经验

如果你看过 Cosmos Hub 如何从 1.0 版本升级到 2.0 版本再到 3.0 版本,你就会知道 Cosmos Hub 的升级本质上是通过使用新的创世块重启区块链来实现的。 升级时,节点运营者需要关闭节点,然后生成 Cosmos Hub 状态的快照,然后将这个快照打包到新的创世块中,创建新的区块链。

现在,任何想加入 Cosmos Hub 的人都需要获得 CosmosHub-3 的创世块,下载 CosmosHub-3 的所有块并重玩(不再需要下载 CosmosHub-1 或 CosmosHub-2 的块)。

我们可以“重启”ETH 1.0 吗?

让我们想象一下是否可以将相同的方法应用于以太坊。 以太坊区块链很大(150-160 Gb),状态也很大(40-100 Gb,取决于你存储状态的方式)。 “重启”以太坊区块链的一个明显优势是新加入的节点需要下载 40Gb 的创世状态,而不是 150Gb 的区块链。 然而,下载 40 Gb 的创世状态也不是很好的体验。

以太坊节点赚钱吗_以太坊官网以太坊_以太坊节点一天分红多少

将以太坊的状态存储在链下,只有 Merkle 根哈希在链上可见

假设我们可以存储这个 40 Gb 的“链下”并且只将根哈希打包到创世块中,我们可以从一个空状态开始。 但是我们如何让交易访问这个隐式状态呢?

请记住,虽然这 40 Gb 的状态是隐式的,您如何获得它们是一个实现细节,您可以运行所有 1000 万个块来计算这些状态,或者通过快速同步、扭曲同步下载它的快照,或者复制它从别人的外部磁盘并验证它。 尽管状态是隐式的,但我们假设块提议者(通常是矿池)可以访问此隐式数据并能够处理所有交易。 只是我们不得不放弃一个假设:所有其他验证节点都可以访问隐式状态来验证区块中的交易是否有效,区块头中的状态根哈希与区块的执行结果相匹配(译者注) : 在当前的以太坊协议中,由于所有状态都是显式的,所以这个假设是合理的)。

这不是无状态的以太坊吗?

以太坊节点赚钱吗_以太坊官网以太坊_以太坊节点一天分红多少

如果你了解无状态以太坊,你可能会意识到这正是我们正在尝试做的——保留“区块提议者可以访问隐式状态”的假设,并移除“所有验证者可以访问隐式状态”的假设假设。 我们提出的解决方案是让块提议者向块添加额外的证明。 我们称此证明为“区块见证”。

区块证明与交易证明

第一次了解这个方案的人会认为额外的证明实际上是由交易发送者提供的,作为交易有效负载的一部分以太坊节点赚钱吗,我们不得不出来解释一下,事实并非如此,证明是由区块提供的提议者。 然而,我们后来发现,交易还必须包含额外的证明。 也就是说,交易发送方需要证明发送方地址有足够的ETH来支付gas费,以及该账户发起的所有其他交易都具有较小的nonce值。 此外,交易的发送方需要证明发送方账户的nonce值,以便节点判断nonce值之间是否存在差距以太坊节点赚钱吗,以免有人趁机发送一系列不可行的交易进行DDOS攻击. 我们还可以进行更严格的检查,但对于大多数抗DDOS攻击方案来说,ETH余额和发送方账户的nonce值是必要的信息(或许还不够)。

交易证明的缺点

以太坊官网以太坊_以太坊节点一天分红多少_以太坊节点赚钱吗

假设我们希望交易的发送方为交易添加每个相关状态的证明。 这样做的好处是,它会简化我们需要做的为证人收取额外 gas 的工作。 这样做的主要缺点是,这通常需要通过动态状态访问(DSA,相对于静态状态访问 (SSA))来实现。 如果一个交易涉及一个特别复杂的智能合约,比如说,对其他合约有大量的嵌套调用,那么可能很难预先计算交易将涉及的状态项。 攻击者甚至可以使用DSA来“设置”用户,即抢占他们的交易(发送内容相同但gas费更高的交易,以便在他们面前打包),使用户的交易因不足而失败证明。

ReGenesis 提供的缓解措施

虽然很难彻底解决DSA的隐患,但可以尽可能降低其风险,让用户不会感到不便,不会永远局限于无法实现预期状态转换的情况。 这种缓解措施需要引入额外的规则,即交易提供的任何证明(已根据状态根进行验证,但不足以保证交易成功)成为隐式状态的一部分。 因此,当用户反复尝试执行交易时,隐式状态会增加,最终交易会成功。 试图“破解”用户的攻击者必须找到更复杂的方法来将用户的状态访问重定向到现有隐式状态之外,并最终失败。

随着隐式状态从无(刚刚重新启动)增长到包含越来越多主动访问状态的状态,交易需要提供更少的证明。 一段时间后,大多数交易甚至不需要附加任何证明,除了那些涉及很久以前的状态的交易。

以太坊节点一天分红多少_以太坊官网以太坊_以太坊节点赚钱吗

我们可以定期执行 ReGenesis

我称之为“重启” reGenesis ,它可以定期执行,以便减轻非挖矿节点上的负载。 ReGenesis 还代表了一个不太激进的无状态以太坊版本。

重复实施 ReGenesis 将简化以太坊客户端实施的架构,几乎消除了对更高级别快照同步算法的需求。 如果我们每 100 万个区块(大约 6 个月)执行一次 ReGenesis,状态快照和区块链文件就可以在 BitTorrent、Swarm 和 IPFS 上公开。 目前我们不能这样做(生成的存储),因为状态每 15 秒而不是 6 个月转换一次。 如果客户端实现可以重放 6 个月的块,我们就不需要非常复杂的快照算法。 因此,以太坊实施的复杂性将降低。

ReGenesis 的缺点

以太坊官网以太坊_以太坊节点一天分红多少_以太坊节点赚钱吗

我没有对此进行深入探讨,但我看到的三个缺点是:

用户可能需要访问完整的隐式状态才能创建交易。 实际上,我认为这是一个公平的妥协。

(由于 DSA)用户可能需要重复执行交易,直到最终实现所需的状态转换。

一些汇总技术(使用区块链数据实现数据可用性)可能会受到影响

(结束)

(本文链接较多,可点击左下方“阅读原文”从EthFans网站获取)