以太坊经典

Doge留言 | 贡献2024年12月26日 (四) 05:45的版本

以太坊经典(Ethereum Classic)是一个开源、公开、 以区块链为基础的分布式计算平台[1]。它提供了一个分散的具有图灵完备性的虚拟机。该虚拟机可以利用全世界的虚拟机节点网络执行脚本。 以太坊经典还提供了一种可在各用户之间流通,名为“经典以太坊”的代币。用户可把代币存到密码货币钱包里,为各节点参与者的算力提供酬劳。为防止以瘫痪系统为目的之大额交易的出现,经典以太坊设有名为Gas的交易定价制度,所有愿意付出较高交易费者之交易均会获优先处理[2]

以太坊经典
首次发布 2015年7月30日
当前版本 6.0.8,2019年8月13日
源代码库 go-ethereum
编程语言 C++、Go、Rust、Scala
操作系统 Linux、Windows、macOS、POSIX
平台 x86、ARM
类型 分布式计算
许可协议 多种开源协议
网站 ethereumclassic.github.io

以太坊经典是以太坊平台分叉而成的加密货币。在分叉前,经典以太坊被直接称为以太坊。分叉以后,旧分叉以太坊经典,新分叉则保留原名。在第1920000资料块出现前便拥有以太坊者都已获得相等数量的以太坊经典。

特性

与其他加密货币一样,以太币的有效性通过区块链来提供保障。区块链是一个不断增长的记录列表,被称为“区块”,这些区块通过加密技术相互链接并得到保护[3]。从设计上讲,区块链本质上对数据的修改具有抗性。它是一个开放的、分布式的账本,可以高效、可验证且永久地记录两方之间的交易[4]。与比特币不同,以太坊经典采用一种被称为“状态转换”的账户和余额操作方式,而不是依赖未使用的交易输出(UTXO)。状态表示所有账户的当前余额和额外数据。状态并未存储在区块链中,而是存储在一个单独的默克尔-帕特里夏树中。

加密货币钱包存储公钥和私钥(或“地址”),可以用来接收或使用以太币。这些密钥可以通过 BIP 39 样式的助记符生成,用于 BIP 32 的“分层确定性(HD)钱包”。在以太坊的技术栈中,这种机制并非必需,因为它不采用 UTXO 模式。拥有私钥就可以向区块链写入内容,从而有效地进行以太币交易。

要向某个账户发送以太币,需要该账户公钥的 Keccak-256 哈希值。以太币账户是伪匿名的,它们并未与个人身份直接关联,而是与一个或多个特定地址相关联。

以太币(Ether)

ETC 是以太坊经典运行的基础代币,它为交易提供了一个公共分布式账本。它用于支付 Gas(交易和其他状态转换中使用的计算单位)。在以太坊经典的语境中,它可能被称为以太币(ether),但不要与 ETH(也称为以太币)混淆。

ETC 的货币代码为 ETC,并在加密货币交易所中交易,其货币符号通常使用希腊字母大写 Xi(Ξ)。ETC 也用于支付以太坊经典网络上的交易费用和计算服务[5]

地址

以太坊经典的地址由前缀“0x”(十六进制的通用标识符)和 ECDSA 公钥的 Keccak-256 哈希值(大端)的右 20 字节拼接而成(曲线使用的是 secp256k1,与比特币相同)。在十六进制表示中,每字节由两位数字表示,因此地址包含 40 位十六进制数字。例如,一个以太坊经典地址是 0xb794f5ea0ba39494ce839613fffba74279579268。合约地址也采用相同格式,但其由发送方和创建交易的 nonce 确定。

仅从地址无法区分用户账户和合约账户,因为没有区块链数据提供进一步信息。任何放入上述格式中的有效 Keccak-256 哈希值都是有效地址,即使它不对应于拥有私钥的账户或合约。这点与比特币不同,比特币使用 base58check 来确保地址类型的正确性。

货币政策

2017 年 12 月 11 日,通过 Gotham 硬分叉升级,以太坊经典将以太币的总供应量硬性上限设定为 210,700,000 ETC。这一升级引入了比特币启发的通缩发行计划,记录在以太坊经典改进提案(ECIP)1017 中。该发行计划被称为“5M20”,每 5,000,000 个区块减少 20% 的区块奖励。该区块奖励减少事件在社区中被称为“fifthening”(五分之一事件)。

预计日期 实际日期 5M20 era 区块 区块奖励 Total era emission Total emission
- 2015年7月30日 Era 1 1 5 Ξ 25,000,000 Ξ 25,000,000 Ξ
2017年12月 2017年12月11日 Era 2 5,000,001 4 Ξ 20,000,000 Ξ 45,000,000 Ξ
2020年3月 2020年3月17日 Era 3 10,000,001 3.2 Ξ 16,000,000 Ξ 61,000,000 Ξ
2022年4月 2022年4月25日 Era 4 15,000,001 2.56 Ξ 12,800,000 Ξ 73,000,000 Ξ
2024年5月 2024年5月30日 Era 5 20,000,001 2.048 Ξ 10,240,000 Ξ 83,240,000 Ξ
2026年8月 - Era 6 25,000,001 1.6384 Ξ 8,192,000 Ξ 91,480,000 Ξ
2028年 - Era 7 30,000,001 1.31072 Ξ 6,553,600 Ξ 98,033,000 Ξ
2030年 - Era 8 35,000,001 1.048576 Ξ 5,242,880 Ξ 103,275,880 Ξ

分叉原因

2016年4月,去中心化自治组织 The DAO 成立并开始募资。同年5月,在超过 1 万 1 千名投资者的支持下,募集了超过价值超过 1.5 亿美金的 ETH,占比接近彼时 ETH 流通总量的 14%。

2016年6月17日,The DAO 被骇客攻击并盗取了接近三分之一的募资金额,ETH 总流通量的约 5% 的以太币被盗走。The DAO 和以太坊社区成员对如何处置如此大额的被盗款项,产生了分歧。一部分人认为应该通过修改以太坊区块链,即硬分叉,来挽回损失;另一部分人认为这样做违背了区块链去中心化的核心价值。最后经过社区成员投票,97% 的票数都赞成通过硬分叉挽回损失[6]

于是,彼时的以太坊区块链分叉为两个独立的网络。新的网络继承了以太坊的名字,并使用以太币(ETH)作为加密货币。旧的(也是被盗的)网络则改名为以太坊经典,也就是目前的 ETC 币。

Callisto

Callisto是以太坊经典的分支。Callisto将会被分拆为另一种加密货币,代号CLO[7]

里程碑

Frontier

在正式启动 Frontier 网络之前,以太坊基金会开发了多个以太坊平台的代号原型,这些原型属于其概念验证系列的一部分。在 DAO 事件发生后,以太坊经典延续了这一代码库。

版本日期 代码名 里程碑
2015-07-30 0 Frontier
2015-07-30 1 5M20 Era 1
2015-09-08 200,000 Ice Age
2016-03-15 1,150,000 Homestead
2016-10-24 2,500,000 Gas Reprice
2017-01-13 3,000,000 Die Hard
2017-12-11 5,000,000 Gotham
2017-12-11 5,000,001 5M20 Era 2
2020-03-17 10,000,001 5M20 Era 3
2020-06-01 10,500,839 Phoenix
2020-11-28 11,700,000 Thanos
2021-07-23 13,189,133 Magneto
2022-02-12 14,525,000 Mystique
2022-04-25 15,000,001 5M20 Era 4
2022-09-15 15,950,000 Largest PoW EVM
2024-02-04 19,250,000 Spiral
2024-05-30 20,000,001 5M20 Era 5
TBD 25,000,001 5M20 Era 6

DAO 救助

主条目:The DAO

2016年7月20日,由于 The DAO 项目的智能合约软件中的漏洞被利用,以及随后价值 5000 万美元以太币(Ether)的盗窃事件发生,以太坊网络分裂为两个独立的区块链——更改历史的链被命名为以太坊(Ethereum,代码:ETH),而未更改历史的链则被命名为以太坊经典(Ethereum Classic,代码:ETC)[8]

新的更改历史的链被以太坊基金会(商标持有方)命名为以太坊,并分配了 BIP-44 币种索引 60 和 EVM 链 ID 1。在这条新链上,以太坊区块链中关于盗窃事件的历史被删除[9]

部分以太坊社区成员无视这一更改,继续参与原始以太坊网络。未分叉的链(保留未更改历史)继续以以太坊经典的形式运行,代码为 ETC,并分配了 BIP-44 币种索引 61 和 EVM 链 ID 61。

安全漏洞披露

2016年5月28日,一篇论文详细描述了 DAO 存在的安全漏洞,这些漏洞可能导致以太币被盗[10]

2016年6月9日,Peter Vessenes 公开披露了许多 Solidity 合约中被忽视的一个关键安全漏洞——递归调用漏洞。

2016年6月12日,Stephan Tual 公开声称,尽管发现了这一关键安全缺陷,DAO 的资金是安全的。

碳投票

2016年7月15日,就 DAO 硬分叉进行了一个简短的链上投票。在2016年7月16日总计 82,054,716 ETH 的流通供应中,仅有 4,542,416 ETH 参与投票,投票率为 5.5%;其中 3,964,516 ETH(87%)赞成分叉,1/4 的投票来自同一个地址,而 577,899 ETH(13%)反对分叉[11]。碳投票的快速决策过程受到 DAO 硬分叉反对者的批评,而支持者则迅速将投票宣传为有效的共识机制,并在四天后推动了分叉[12]

区块 1,920,000

以太坊经典链上第一个未包含在分叉以太坊链中的区块是第 1,920,000 个区块,由以太坊经典矿工于2016年7月20日生成。

解除难度炸弹

"难度炸弹" 机制旨在通过指数级增加挖矿难度,将以太坊链从工作量证明(PoW)共识机制推向权益证明(PoS)。该难度炸弹机制在区块200,000 通过名为 "冰河时代"(Ice Age)的升级加入网络。尽管以太坊经典参与者对难度炸弹的优劣进行了讨论,但在区块 3,000,000 通过名为 "Die Hard" 的网络升级推迟了这一机制的影响。在网络参与者就这一问题达成共识后,以太坊经典在区块 5,900,000 进行升级,永久解除难度炸弹,放弃了 PoS 的未来,转而承诺继续采用 PoW 共识机制。

协议同步

为使以太坊经典协议现代化,多个协议升级被安排启用以太坊网络近年来已实现的功能。"Atlantis" 升级于2019年9月激活,启用了包含 Byzantium 变化的 "Agharta" 升级。"Agharta" 随后通过2020年1月的升级整合了 Constantinople 补丁。最终,以 "Phoenix" 升级为标志,以太坊经典实现了与以太坊的协议同步,从而支持两网络之间完全兼容的应用程序。

挖矿算法

由于以太坊经典网络在2020年遭遇一系列 51% 攻击,社区考虑更改基础的 Ethash 挖矿算法,以防止在 Ethash 算法中成为少数 PoW 链,因为以太坊主导了算力市场[13]。在评估了如门罗币的 RandomX 或标准化的 SHA-3-256 等多种选项后,最终决定将 Ethash 的 epoch 持续时间从 30,000 翻倍至 60,000,以减少 DAG 文件大小,阻止 Ethash 矿工轻松切换至以太坊经典。此修改后的 Ethash 被称为 ETChash 或 Thanos 升级。

以太坊经典改进提案(ECIP)

以太坊经典改进提案(ECIP)流程使工程师和计算机科学家能够提出修改、升级或修复建议。任何 GitHub 用户的开发者都可以参与 ECIP 流程的贡献[14]。以下是 ECIP 的几种类型:

ECIP 类型

类型 说明
标准跟踪 任何影响大多数或所有以太坊经典实现的更改
核心 需要共识分叉的改进
网络 对网络协议规范的改进
接口 关于客户端 API/RPC 规范和标准以及某些语言级标准的改进
ECBP 应用级标准和约定,包括合同标准
提议更改或在流程中发生事件,通常需要社区共识
信息性 讨论以太坊经典的设计缺陷或向以太坊经典社区提供一般性指导或信息,不建议添加新特性

代码即法律

继续支持以太坊经典的人提倡区块链不可篡改性,并支持“代码即法律”的概念,与支持分叉的以太坊方(以太坊)形成对比。后者主要主张协议外的意图、去中心化决策和冲突解决。"代码即法律"指的是代码高于一切,包括来自外部力量(如政府)的法律。法律写入代码中,因此,代码允许的任何行为都是合法的[15]

攻击

DAO 分叉重放攻击

2016年7月20日,由于依赖相同的客户端,DAO 分叉导致了重放攻击,即一个交易在 ETC 和 ETH 网络上同时广播。2017年1月13日,以太坊经典网络进行了更新,解决了交易重放攻击。现在这两个网络正式独立运行。

RHG 销售被盗的 ETC

2016年8月10日,ETH 支持者 Robin Hood Group(RHG)将290万个被盗的 ETC 转移到 Poloniex,并试图在 Bitly SA 的建议下将 ETC 换成 ETH;其中14%成功兑换为 ETH 和其他货币,86% 被 Poloniex 冻结。2016年8月30日,Poloniex 将 ETC 资金退还给 RHG,并在 ETC 网络上设置了退款合同。

Classic Ether Wallet 网站攻击

2017年6月29日,以太坊经典的 Twitter 账户发布声明,表示有理由相信 Classic Ether Wallet 的网站已被入侵。以太坊经典的 Twitter 账户确认了通过 Threatpost 发布的细节。以太坊经典团队与 Cloudflare 合作,在被攻破的域名上放置了警告,提醒用户注意钓鱼攻击[16]

51% 双花攻击

以太坊经典在历史上经历了多次 51% 双重花费攻击。这些攻击通过集结超过 50% 的矿工算力,利用网络的去中心化特性,使攻击者能够操控交易并进行双重花费。第一次重大攻击发生在2019年1月,当时以太坊经典遭遇了双重花费攻击,估计损失价值110万美元的 ETC。作为回应,以太坊经典团队启动了几次网络升级,包括采用一种修改版的工作量证明(PoW)共识算法,称为“ECIP-1049 Keccak256”。尽管进行了这些努力,2020年8月和10月仍发生了额外的 51% 攻击,分别造成了560万美元和168万美元的损失[17]

参考链接