浅析 Phoenix 硬分叉Phoenix 硬分叉将于大约 2 个月后在主网执行。让我们先睹为快,来看看 Phoenix 里都包括了哪些改动。

EIP-152 :添加 Blake2 压缩功能 F 预编译

该 EIP 引入了一个新的预编译合约,实现了 BLAKE2 加密哈希算法中使用的压缩功能 F,目的是允许 EVM 和 Zcash 之间实现互操作性,并为 EVM 引入更灵活的加密哈希原语。

EIP-1108 :降低 alt_bn128 预编译 gas 成本

2018 年,Go 语言使用的基础库发生了变化,从而导致 ECADD,ECMUL 和 alt_bn128 椭圆曲线上的配对检查预编译合约的性能显著提升。在 Parity 客户端中,预编译算法使用的现场操作在 2018 年得到了优化,最近 bn crate 使用的配对算法发生了变化,带来了可观的提速。以太坊客户端更快的操作应该反映在降低 gas 成本上。

EIP-1344 :添加 ChainID 操作码

该 EIP 添加了一个操作码,该操作码返回当前链的 EIP-155 唯一标识符。EIP-155 建议使用链 ID 来防止不同链之间的重放攻击。

EIP-1884 :重新定价依赖于 trie 大小的操作码

以太坊状态的增长导致某些操作码在此时比以前更加占用资源。该 EIP 建议提高这些操作码的 gas 成本。

EIP-2028 :降低 Calldata 的 gas 成本

以数学模型和经验估算为依据,我们建议将 Calldata (GTXDATANONZERO)的 gas 成本从当前的 68 gas/ 字节降低到 16 gas/ 字节。数学模型是 Sompolinsky 和 Zohar 和 Pass,Seeman 和 Shelat 的工作中使用的模型,该模型将网络安全性与网络延迟相关联。我们将(1)使用此模型评估较低的 Calldata gas 成本对网络延迟的理论影响,(2)凭经验验证模型,以及(3)根据我们的发现提出建议的 gas 成本。

EIP-2200 :考虑到 SLOAD gas 成本变化,重新平衡净计量的 SSTORE gas 成本

该 EIP 为 SSTORE 操作码提供了 gas 净计量更改的结构化定义,可用于合约存储的新用法,并在与大多数实施方式不匹配的地方降低过多的 gas 成本。这是 EIP-1283 和 EIP-1706 的组合。可见 Phoenix 硬分叉主要包含了对 EVM 的改动,添加操作码、降低 gas 成本。Phoenix 硬分叉升级后,ETC 和 ETH 将会绝对兼容,达到真正的可互操作,ETC 和 ETH 应用也将能够无缝通信。

浅析 Phoenix 硬分叉

浅析 Phoenix 硬分叉

来源链接:mp.weixin.qq.com