Home / Markets News & Opinions / ETC Labs Proposed ECIP-1054: Atlantis EVM and Protocol Upgrades

ETC Labs Proposed ECIP-1054: Atlantis EVM and Protocol Upgrades

Last Updated April 25, 2023 11:24 AM
Press Release
Last Updated April 25, 2023 11:24 AM

ETC Labs is working repository for ETC improvement proposals. Recently, the team put forward ECIP-1054. The proposal is to enable Ethereum Foundation Spurious Dragon and Byzantium network protocol upgrades on the Ethereum Classic network in a hard-fork code-named Atlantis. The hard-fork will maximize the compatibility across these networks.

Abstract

Add support for a subset of protocol-impacting changes introduced in the Ethereum Foundation (ETH) network via theSpurious Dragon and Byzantium hardforks. The proposed changes for Ethereum Classic’s Atlantis upgrade include:

  • Spurious Dragon state-trie clearing.
  • Spurious Dragon contract-code size limit.
  • Byzantium EVM opcodes, namely REVERT, RETURNDATASIZE, RETURNDATACOPY, and STATICCALL.
  • Byzantium EVM precompiled contracts, namely addition and scalar multiplication on the elliptic curve alt_bn128, optimal ate pairing check on the elliptic curve alt_bn128, and BIGINT modular exponentiation.
  • Replacing the intermediate state root field in transaction receipts with the contract return status.
  • Change difficulty adjustment to target mean block time including uncle.

This document proposes the following blocks at which to implement these changes in the Classic networks:

  • 1_039_000 on Kotti Classic PoA-testnet (early August 2019)
  • 4_723_000 on Morden Classic PoW-testnet (early August 2019)
  • 8_750_000 on Ethereum Classic PoW-mainnet (mid-September 2019)

For more information on the opcodes and their respective EIPs and implementations, please see the Specification section of this document.

Motivation

To enhance the Ethereum Virtual Machine’s (EVM) capabilities, various opcodes and precompiled contracts shall be added to the Ethereum Classic networks, all of which have been in use on the Ethereum Foundation networks since late 2017. Adoption of the receipt status feature provides a helpful method for decentralized-application developers to access the successful or failed state of a contract. This would establish a higher level of interoperability between Foundation and Classic EVMs, and make a more extensive array of tooling available for the ETC network (e.g., Solidity version, contract debugging tools). The proposed change to the difficulty formula ensures that the difficulty adjustment algorithm targets a constant average rate of blocks produced including uncles, and so ensures a highly predictable issuance rate that cannot be manipulated upward by manipulating the uncle rate.

RelatedNews

Rationale

Atomicity: This protocol specification notably omits the scheduled features of the anticipated Constantinople protocol upgrade, which would be expected to include various further EVM upgrades. This allows for dedicated testing of the proposed changes in light of multiple delays of the Constantinople fork (a postmortem of the latest delay ).

Interoperability: establishing and maintaining interoperable behavior between Ethereum clients is essential for developers and end-user adoption, yielding benefits for all participating chains (e.g., ETH and ETC, Ropsten and Morden, Görli and Kotti).

Immutability: None of the introduced new opcodes in the EVM has the potential to change the behavior of existing contracts; in the case where previously an arbitrary invalid bytecode would have been deployed to the network, none of them would be able to modify the state of the Ethereum Classic networks retrospectively. Adding opcodes and precompiled contracts to the EVM increases its functionality and should be considered a feature upgrade rather than a modification.

Implementation

Adoption of the content of this ECIP requires a hard fork as it introduces changes that are not backward compatible.

The following clients with Ethereum Classic support implement the Spurious Dragon and Byzantium features currently:

  • Geth Classic: partial support for EIP-658 receipt status code change
  • Parity Ethereum: all features due to Ethereum Foundation compatibility
  • Multi Geth: all features due to Ethereum Foundation compatibility
  • Mantis: all features due to Ethereum Foundation compatibility

About ETC Labs

ETC Labs established a development team called ETC Labs Core in January. The team focuses on core Ethereum Classic projects, supporting the ETC blockchain, providing tooling for decentralized application development, mining, and services.

For more details about ECIP-1054: Atlantis EVM and Protocol Upgrades, please check the link below:

https://github.com/etclabscore/ECIPs/blob/master/ECIPs/ECIP-1054.md 

This is a paid-for submitted press release. CCN does not endorse, nor is responsible for any material included below and isn’t responsible for any damages or losses connected with any products or services mentioned in the press release. CCN urges readers to conduct their own research with due diligence into the company, product or service mentioned in the press release.