查看原文
其他

以太坊分叉预计2月28日:君士坦丁堡+圣彼得堡升级

Hudson Jameson Hydro社区 2021-01-13

计划在1月16日进行的君士坦丁堡升级推迟后,以太坊即将在本周进行君士坦丁堡/圣彼得堡网络升级,向 ETH 2.0过渡。


在区块高度#7280000时,以太坊将进行2次升级:君士坦丁堡和圣彼得堡升级。


较此前君士坦丁堡的更新计划来说,本次的主要变化有2方面:


1. 移除了 EIP 1283 提案

2. 更新了各以太坊客户端版本


对以太坊用户来讲,除了ETH价格的市场变化,你不会受到任何影响,无需进行任何操作。


如果你在以太坊跑全节点或者挖矿,那么需要更新最新的客户端。(下文有下载链接)


我们翻译了以太坊基金会2月22日发布的《君士坦丁堡/圣彼得堡升级公告》,详细内容如下:


如何获得准确的以太坊升级时间?


预计区块:#7280000区块高度 激活升级

预计时间:2019年2月28日星期四


具体日期以出块时间为准,可能会有1-2天的时间波动。


推荐2个工具:


区块倒数计时器:

https://amberdata.io/blocks/7280000

实时观察网络:

http://forkmon.ethdevops.io/


这次升级为什么叫君士坦丁堡/圣彼得堡?


最初的君士坦丁堡升级由于安全问题被推迟,这次升级需要在同一区块上进行两次协议升级,以便修复各种以太坊测试网络上的问题,例如Ropsten测试网。


作为以太坊用户和ETH持有者,需要我做什么吗?


如果您是以下产品的用户:

  • 交易所:如Coinbase、Binance和DDEX

  • 网页钱包:如Metamask、MyCrypto或MyEtherWallet

  • 钱包APP:如imToken、Cobo或Trust Wallet

  • 硬件钱包:如Ledger,Trezor或KeepKey


除非这些产品特别通知您进行相关操作,否则您无需执行任何操作。


作为节点运营者或矿工,我需要做什么?


下载最新的以太坊客户端版本:

  • geth  (v1.8.23)

  • https://github.com/ethereum/go-ethereum/releases/tag/v1.8.23


  • Parity  (v2.2.10-stable)

  • https://github.com/paritytech/parity-ethereum/releases/tag/v2.2.10


  • Harmony (v2.3 Build 74)

  • https://github.com/ether-camp/ethereum-harmony/releases/tag/v2.3b74


  • Pantheon (v0.9.1)

  • https://pegasys.tech/


  • EthereumJS VM (v2.6.0)

  • https://github.com/ethereumjs/ethereumjs-vm/releases/tag/v2.6.0


  • Ethereum Wallet/Mist (v0.11.1)

  • https://github.com/ethereum/mist/releases/tag/v0.11.1


作为节点运营者或矿工,如果我没参与升级,会发生什么?


如果您使用的客户端没有更新到以上列出的最新版本,那么一旦升级,您的客户端将同步到升级前的链上。


您将被困在这条不兼容的链上,此链遵循旧规则,所以您将无法发送交易,不能在升级后的以太坊网络上运行。


如何理解以太坊世界的网络升级?


网络升级是对底层以太坊协议的更改,创建新规则来优化以太坊系统。


区块链升级并不像更新手机 App 那么简单。区块链去中心化的性质使网络升级更加困难:需要社区以及各种以太坊客户端的开发人员进行合作和沟通,才能顺利过渡。


网络升级的过程中,究竟发生了什么?


首先,社区就升级中应包含哪些更新达成共识。然后,这些更新将写入各个以太网客户端,例如geth,Parity和Harmony。 最后,协议的更新在指定的区块高度激活。


任何没有升级到新规则的节点,将被遗弃在旧链上。


君士坦丁堡升级,会带来什么新变化?


网络升级中包含的更新是用 EIP 来标记和指代的。以太坊升级提案(Ethereum Improvement Proposal,EIP)描述了为以太坊平台实施的一些标准,包括核心协议规范(core protocol specification)、客户端 API(client API)以及合约标准(contract standard)。


下列 EIP 为君士坦丁堡升级中包含的更新,这些更新除了移除了EIP 1283外,与推迟前计划的更新一致:


EIP 145:EVM 中的按位移动(bitwise shifting)指令


1. 提供与其它算术运算代价相当的原生按位移动指令

2. EVM 现在是没有按位移动指令的,但支持其他逻辑和算术运算。按位移动可以通过算术操作来实现,但这样会有更高的 Gas 消耗,也需要更多时间来处理。使用算术操作,实现 SHL 和 SHR 需要耗费 35 Gas,但这一提案提供的原生指令只需消耗 3 Gas。

3. 一句话总结:该 EIP 为协议加入了一个原生的功能,使得 EVM 中的按位移动操作更便宜也更简单。


EIP 1014:Skinny CREATE2


1.加入新的操作码 0xf5 ,需要 4 个堆栈参数(stack argument):

 endowment 、 memory_start 、 memory_length 、 salt 。

具体表现与 CREATE 相同,但使用keccak256( 0xff ++ sender_address ++ salt ++ keccak256(init_code)))[12:] ,而不是 keccak256(RLP(sender_address, nonce))[12:] ,作为合约初始化的地址。

2. 拓宽我们的交互范围:有些合约在链上还不存在,但可以确定只可能包含由 init_code 特定部分创建出来的代码,有了该 EIP 之后我们就可以和这样的合约交互。

3. 对包含与合约的 conterfactual 交互的状态通道来说非常重要。

4. 一句话总结:这一 EIP 让你可以与还没有被创建出来的合约交互。


EIP 1052:EXTCODEHASH 操作码


1. 该 EIP 指定了一个新的操作码,可以返回某合约代码的 keccak256 哈希值。

2. 许多合约都需要检查某一合约的字节码,但并不需要那些字节码本身。比如,某个合约可能想检查另一合约的字节码是不是一组可行的实现之一;又或者它想分析另一合约的代码,把所有能通过分析的合约(即字节码匹配的合约)添加进白名单。

3. 合约现在可以使用 EXTCODECOPY 操作码,但在那些只需要哈希值的情境下,这一操作码相对来说是比较贵的,尤其是对那些大型合约而言。新的操作码EXTCODEHASH 部署之后,就可以只返回某一合约字节码的 keccak256 哈希值。

4. 一句话总结:该 EIP 会让相关操作变得更便宜(消耗更少的 Gas)。


EIP 1234:推迟难度炸弹爆炸的时间并调整区块奖励


1. 平均出块时间会因为逐渐加速的难度炸弹(也叫做“冰河时期”)而不断上升。该 EIP 提议推迟难度炸弹约 12 个月,并且(为适应冰河期推迟)而减少区块奖励(从3 ETH 到 2 ETH)。

2. 一句话总结:该 EIP 保证了我们不会在 PoS 准备好并实现之前使以太坊停止出块。


圣彼得堡升级,会带来什么新变化?


以太坊在主网上执行升级之前,测试网络(如Ropsten)会先升级来测试这些更新。 上文列出的君士坦丁堡更新在推迟之前已经应用于测试网络,现在需要第二次升级来撤销之前君士坦丁堡的更新。 


这次更新被称为圣彼得堡,会在和君士坦丁堡升级相同的区块高度上进行。


圣彼得堡升级的测试网络中移除了以下EIP:


移除 EIP 1283:改变 SSTORE 操作码所用 Gas 的计算方式


1.该 EIP 建议改变 SSTORE 操作码的净 Gas 计量方式,以启用合约存储的新用法,并在计算方式与当前大多数实现不匹配的情形下减少无谓的 Gas 消耗(因为在当前的大多数实现中都不需要某些操作,但原来的计算方式会把这些操作所需的 Gas 也算进去)。

2.一句话总结:该 EIP 会让某些操作变得更便宜(只需更少的 Gas 即可完成操作),减少那些当前“多余”而昂贵的 Gas 消耗。




上面的内容比较硬,我们聊几句ETH最近的市场状况。根据 CoinMarketCap数据,近15天ETH市场如下:



如果你观察下历史几次ETH分叉前后的价格波动,你会发现一定的规律。(不作投资建议所以就贴张图不明说啦。)


加上现在有做多和做空的工具,如sETH 和LongETH,以及预测市场Veil,其实分叉除了技术意义,往往意味着市场机会。


(Veil 关于预测以太坊分叉是否会成功举行的金融产品)


而上次君士坦丁堡分叉由于安全漏洞推迟后,市场出现了一片“以太坊药丸”的论调。这次呢,有意思的是波场也选择了同一时间,宣布在2.28进行硬分叉。



纷杂的信息往往使我们无法触及事情的本质。于是,我们搜集了10位币圈意见领袖对以太坊发展的看法,看看大佬眼里,本次升级带来的更新会对市场有怎样的影响?


不妨一读君士坦丁堡分叉再定2月27日,这10位币圈大佬有话说


【参考】


【往期文章回顾】


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存