LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 科普 | 以太坊伊斯坦布尔升级内容解读

科普 | 以太坊伊斯坦布尔升级内容解读

2019-12-10 EthFans 来源:区块链网络


什么是 网络升级/硬分叉?

网络升级就是对以太坊协议的更改,为已有的以太坊协议加入新的规则来加强整个系统。这些新规则是预先用以太坊升级提案(EIP)的形式公布出来的,而在提案中,提议者会用技术术语定义出需要在网络升级中实现的变更和功能。

网络升级既有计划之内的,也有计划之外的。升级也叫做分叉,一般来说是加入用户和协议开发支持的新功能。有时候人们也会为了修复漏洞或制止攻击而使用分叉,这就是计划之外的分叉了。迄今为止,以太坊网络上已经实现了7 次硬分叉。“硬分叉” 的含义是,该次网络升级所包含的内容是不完全后向兼容的,并且有可能导致一些旧交易失效,以及/或者 改变已部署合约的功能。

公有链的去中心化特性使得网络升级较之普通的软件升级更难,因为这需要整个社区与多个以太坊客户端开发者的协作和沟通,惟其如此,升级才能顺利进行。

为了升级能在主网上无缝激活,升级内容会先在以太坊测试网络比如 Rinkeby、Ropsten、Goerli 和 Kovan 上激活运行。

日前,伊斯坦布尔分叉的激活高度已经确定,为 9, 069, 000 号区块,预计将于 12 月 7 日到来。具体时间则要看网络的出块时间变化而定。

Istanbul 是什么?

伊斯坦布尔(Istanbul)是以太坊的第 8 次网络升级。此前的网络升级还曾有过诸如 “拜占庭” 这样的代号。最近一次(也是上一次)网络升级叫做 “君士坦丁堡”。

网络升级的过程是什么样的?

当整个社区对升级应当包含哪些变更达成共识之后,这些规则变更会被编入多个以太坊客户端,比如 geth、Parity、Besu 以及 Nethermind。这些协议变更会在特定某个区块开始激活,激活之后,升级所引入的新功能就可以使用了。没有升级到新规则的节点也会自然组成一个使用旧规则的网络,但这个网络与使用新规则的网络之间是不能互通的。

本次升级中包含了哪些?

伊斯坦布尔升级的内容是用以太坊升级提案(EIP)的形式表述出来的。EIP 的作用就是描述以太坊平台的标准,包括核心协议技术说明、客户端 API 以及合约标准。

因为以太坊社区在过去一年中的成长,本次升级是历次升级中规模最大的(从提案数量上来看),超过 30 个 EIP 被提议加入这次分叉中。经过详细的讨论, 6 个 EIP 最终被认为适合并已准备好加入这次升级。

EIP-1679:伊斯坦布尔计划

该 EIP 包含了将加入伊斯坦布尔分叉的协议变更列表。该 EIP 也列出了一开始被提议的所有 EIP。

包含在伊斯坦布尔升级中的 EIP 具有如下特点:

  • 根据计算开销以及提升拒绝服务攻击抗性的需要重新分配一些操作码的 Gas 耗用量;
  • 使基于 SNARKs 和 STARKs 的 Layer-2 方案性能更佳;
  • 使以太坊和 Zcash 能够互操作。
  • 让合约能够引入更有创造性的功能。

EIP-152:增加 BLAKE2 压缩函数 F 预编译功能

增加在以太坊合约内验证 Equihash PoW 的功能。这就开启了Zcash和以太坊之间中继交易以及原子化互换交易的可能。

EIP-1108:降低 alt_bn128 曲线的预编译Gas 消耗量

让 zk-SNARKs 运算变得更便宜,让更便宜的扩展和隐私应用能开发出来。例如Matter labs、Aztec Protocol、Rollup以及Zether。

EIP-1344:ChainID 操作码

为合约增加一种跟踪自己所在以太坊链的方式,好让合约(尤其是 Layer-2 方案如状态通道和Plasma所用的合约)跟踪正确 Layer-1 链,尤其是在硬分叉期间。

EIP-1884:给与默克尔大小相关的操作码重新定价

改变了一些 EVM 操作码的 Gas 耗用量,以防止滥发交易攻击并更好地平衡每个区块的计算开销。在以太坊网络上,一个操作所需耗用的 Gas 数量往往跟这个操作所需付出的计算开销相匹配。该 EIP 提高了一些计算密集但当前的 Gas 耗用量较少的操作码的耗用量,即 SLOAD、BALANCE 以及 EXTCODEHASH。

EIP-2028:降低交易数据 Gas 消耗量

通过降低在交易内调用数据的 Gas 消耗量来让 zk-SNARKs 和 zk-STARKs 的应用更便宜。这样做还可以帮助 Layer-2 解决方案提高吞吐量。Starkware就是一个例子。

EIP-2200:改变 SSTORE 操作的 Gas 消耗量

改变 EVM 数据存储操作的 Gas 耗用量计量方式,让合约能够引入一些新的函数,比如重入锁(re-entry lock)以及 same-contract multi-send。


原文链接:https://medium.com/ethereum-cat-herders/istanbul-testnets-are-coming-53973bcea7df
作者:Pooja Ranjan
翻译:阿剑

本文节选、翻译自以太坊牧猫人的文章。


—-

编译者/作者:EthFans

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...