欢迎您访问广东某某机械环保科有限公司网站,公司主营某某机械、某某设备、某某模具等产品!
全国咨询热线: 400-123-4567

新闻资讯

哈希游戏| 哈希游戏平台| 哈希游戏APP

HAXIYOUXI-HAXIYOUXIPINGTAI-HAXIYOUXIAPP

从以太坊基础设施迭代看公共物品的挑战哈希游戏- 哈希游戏平台- 官方网站与突破

作者:小编2025-08-06 18:52:30

  哈希游戏- 哈希游戏平台- 哈希游戏官方网站

从以太坊基础设施迭代看公共物品的挑战哈希游戏- 哈希游戏平台- 哈希游戏官方网站与突破

  除了上述公开的测试网外,以太坊内部也存在一系列的用于专题测试的测试网,比如 YOLO 测试网用于测试 BLS 签名等 Berlin 硬分叉升级所需要的特性。我们一般称这些测试网为 DevNet。当然有时也被称为 Client Integration Testnets。这些测试网往往并不对外开放,通常只有客户端开发者和审计人员在测试网内部进行相关测试,这些测试旨在验证不同客户端实现是否都可以正常执行功能,并且验证不同客户端之间的互操作性。

  在 All Core Devs Meeting 109 中,核心开发者讨论使用地质断层线作为硬分叉测试网的命名规范。在确定此原则后,核心开发者推出了 Aleut ( 代表阿留申海沟 )、Baikal( 代表贝加尔湖 ) 测试网用于测试 London 升级。但是后续的测试网命名并没有遵循该规则,比如在 Baikal 测试网后另一个用于测试 London 升级的测试网被命名为 Calaveras 测试网。但是,核心开发者并没有一直遵循该命名规则,比如最新的 Fusaka 硬分叉升级选择了使用 devnet-1 / devnet-2 这种简单且明确的命名。

  Olympic 测试网对早期以太坊开发发挥了重要作用,以至于以太坊主网的创世区块使用了来自 Olympic 测试网的 1028201 区块作为 模版。但该测试网也存在许多问题,包括状态集过大和潜在的私钥漏洞,导致它在 2015 年 7 月以太坊主网成功上线后被弃用。测试网状态集过大问题是因为 Olympic 测试网本质上激励了垃圾交易的发起,用户为了获取奖励发送了大量的垃圾交易,这导致 Olympic 测试网规模巨大。而潜在的私钥漏洞问题主要是因为 Olympic 测试网早期代码存在漏洞,可能导致 重放攻击。

  Morden 测试网在 Olympic 退役后迅速上线 月与以太坊主网同时上线。由于以太坊主网的 Chain id 为 1,所以 Morden 测试网选择了 2 作为 chain id。Morden 在上线后一年多的时间里作为唯一的测试环境,并确立了其作为早期以太坊应用程序主要开发平台的地位。然而,该网络产生了严重的 共识问题。在最初创建 Morden 时为了避免潜在的重放攻击,Morden 内的所有交易的 nonce 值都是 2^20 开始。而 eip-161 修改了部分关于 nonce 的规则,这导致 Morden 原有的 nonce 规则与 EIP-161 内规定的 nonce 规则产生冲突,最终导致 Geth 和 Parity 在区块 1885074 处创建不兼容的区块。这直接导致了 Morden 测试网被弃用。

  但以太坊社区并可有直接放弃 Ropsten 测试网。在社区捐赠的 GPU 算力支持下,Ropsten 团队于 2017 年 3 月成功 恢复 了网络,清除了累积的垃圾区块,恢复了正常运行。恢复流程是简单的,以太坊开发者利用社区捐赠的 GPU 算力在攻击发生前的区块进行区块挖掘,挖掘获得了一条更重的链替代了原有被攻击的链。我们可以简单认为以太坊开发者利用算力进行了 51% 攻击成功篡改了链的历史以实现清理垃圾交易的目的。

  Goerli 的核心目标就是支持多客户端。为了实现这一目标,开发团队首先尝试在 Geth 内部实现 Parity 设计的 Aura 算法。在 ETHBerlin 黑客松中,开发团队实现了这一目标,但发现它对现有代码库的侵入性过强。最终 Goerli 团队为了实现多客户端兼容的目标选择了 Clique 共识引擎,该引擎已在 Rinkeby 测试网中证明了其价值,但 Goerli 开发团队编写了大量代码使得所有主要的以太坊客户端支持该共识协议。

  与 Sepolia 不同,Holešky 和 Hoodi 都是公开测试网,同时专注于协议层测试的。所谓协议层测试,主要指测试 PoS 等方面的功能,比如 ETH 质押者是否可以正常退出等。Holešky 曾是协议层测试首选的测试网,但在 Pectra 升级内,该测试网遭到 严重破坏。简单来说,Pectra 升级时 Holešky 测试网被错误配置导致三种节点客户端无法正常参与共识。由于共识出现问题,大量质押者被罚没,也导致了 PoS 质押的退出队列变得极其拥挤。以太坊核心开发者推出了一系列的恢复方案,更新了客户端软件,同时伴随着 2 周左右的大规模罚没,大量错误的节点被罚没了所有资金以至于无法继续参与 PoS 共识。在正确节点软件和错误质押者被剔除后,Holešky 测试网最终恢复正常。

  在上文内,我们介绍了以太坊测试网的基础历史。以太坊测试网的每一次更换都是因为一些技术原因导致的。从 Olympic 到 Morden 的转换是因为 Olympic 内包含太多垃圾交易;从 Morden 到 Ropsten 的转换是因为 Morden 存在的共识分裂问题;从 Ropsten 到 Rinkeby 的转换是因为 Ropsten 作为公开测试网容易遭到拒绝服务攻击;从 Rinkeby 到 Goerli 的转化是因为 Ropsten 在 Merge 升级后完成了历史使命,Ropsten 积累的大量数据不适合进一步运营;从 Goerli 到 Sepolia 测试网是因为 Goerli 存在的 ETH 供应问题以及 Goerli 的运营周期。

  testnet3 是 Bitcoin core v0.7 版本引入的测试网,主要解决了 testnet2 测试网难度过高、交易长时间无法确认的问题。但是 testnet3 的相关代码存在问题,该问题的详细介绍可以阅读 lopp 在 2024 年 4 月发布的 Bitcoin Testnet Block Storms。简单来说,testnet3 测试网存在一个漏洞,该漏洞会导致区块难度重置,下图展示了区块难度重置的情况:

  以太坊和比特币测试网都是一种公共物品。在本节中,我们简单讨论一下公共物品的经济学属性,并对测试网内的一些行为进行经济解释。首先,我们需要定义公共物品的性质是,所谓公共物品指的是多人可以共享但是不干扰他人享用的。公共物品的定义是简单的,但是辨别哪种产品是公共物品是需要特定角度的。公共物品在很多情况下具有公共和私人的双重属性,比如 NFT 可以被所有人欣赏其艺术价值,某些用户的欣赏并不会影响其他用户的欣赏,在这个角度上,NFT 实际上可以被视为公共物品,但是 NFT 的所有权隶属于某一个链上地址,在这个角度来看,NFT 又不是一个公共物品。

  对于为什么公共物品往往并不对外收费?这个问题的答案可能与大家的认知并不相符,以以太坊测试网为例,测试网带给 Alice 的价值可能是 10,而带给 Bob 的价值可能是 1。以太坊测试网作为公共物品,Alice 和 Bob 是可以共用的,所以假如以太坊测试网不收取任何费用,那么 Alice 获得 10 的收益而 Bob 获得 1 收益,总体上 Alice 和 Bob 获得了 11 收益。但假如测试网收取 2 费用,此时 Bob 因为测试网收取的费用大于测试网的价值,原本会使用测试网的 Bob 就会选择放弃测试网,那么总体上只有 Alice 获得的 10 收益。在上文介绍的这个简单案例中,我们观察到一旦测试网征收费用,那么就会有原本可以享受公共物品的人退出导致总体收益下降。

  一种可能的解决方案是进行价格歧视,即对 Alice 征收 10$ 费用,同时对 Bob 征收 1$ 费用,但在大规模网络内部,我们需要支付很高的成本实现对不同人征收不同费用。所以为了实现经济学上的最优,公共物品只能选择不收取费用一种途径。所以公共物品不是天然免费的,只是因为如果要实现全局经济利益最优,在区别定价需要付出很高的成本的情况下,公共物品只能选择免费开放。我们可以看到此处的核心其实是公共物品实现价格歧视的成本问题,假如成本足够低,公共物品可以进行定价。

  以测试网为例,以太坊测试网就进行了隔离操作。对于普通用户,可以在公开水龙头内获取测试代币。但是对于需要消耗大量测试代币的用户,以太坊测试网对这部分用户进行隔离,这部分用户需要付出额外成本一次性获得大量测试代币。目前以太坊获取大量测试代币的途径是使用 Funding Vault。这是一个 ethpandaops 维护的仓库,任何希望获得大量测试代币进行项目测试的用户都可以通过此仓库提供一系列材料证明自己确实需要大量测试代币,然后直接从 ethpandaops 手中获取代币。