Ethereum Constantinople/St. St. Petersburg upgrade announced
The Ethereum network will undergo scheduled upgrades. Block number 7,280,000This is expected to occur in . Thursday February 28, 2019. The exact date may change depending on the block time and may become active 1-2 days or later. The countdown timer can be viewed here: https://amberdata.io/blocks/7280000. Network upgrades can be monitored in real time. http://forkmon.ethdevops.io/.
What are Constantinople and St. Petersburg?
Constantinople and St. Petersburg are the names given to this network upgrade. Previous network upgrades were given different names: fake dragon and Byzantium. The reason this network upgrade has two names is The original Constantinople network upgrade has been postponed. To fix the issue on various Ethereum test networks such as Ropsten, two protocol upgrades must occur on the same block number.
Is there anything I need to do as an Ethereum user or Ethereum holder?
If you use an exchange (Coinbase, Kraken, Binance, etc.), a web wallet service (Metamask, MyCrypto, MyEtherWallet, etc.), a mobile wallet service (Coinbase Wallet, Status.im, Trust Wallet, etc.), or a hardware wallet (e.g. Ledger, Trezor, etc.) If you use KeepKey, you don’t need to take any action unless you are instructed to do so by your exchange or wallet service.
What do I do as a node operator or miner?
Download the latest version of the Ethereum client.
What happens if I’m a miner or node operator and don’t participate in the upgrade?
If you are using an Ethereum client that has not been updated to the latest version (listed above), when an upgrade occurs, your client will be synchronized with the pre-network upgrade blockchain. Under the old rules, you will be stuck on an incompatible chain and will not be able to send Ether or operate on the Ethereum network after the upgrade.
What is Ethereum Land’s network upgrade?
Network upgrades are changes to the underlying Ethereum protocol to create new rules to improve the system. The decentralized nature of blockchain systems makes network upgrades more difficult. To ensure a smooth network upgrade of the blockchain, collaboration and communication are required with the community as well as various Ethereum client developers.
What happens during a network upgrade?
After the community reaches a consensus on what changes should be included in the upgrade, protocol changes will be recorded in various Ethereum clients such as geth, Parity, and Harmony. Protocol changes are activated at specific block numbers. Any nodes that are not upgraded to the new rule set will be discarded from the old chain where the old rules still exist.
What changes will happen to Constantinople?
Changes implemented in Constantinople are defined using the EIP. Ethereum Improvement Proposals (EIPs) describe standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards. The next EIP will be implemented in Constantinople.
EIP 145: EVM bit-wise shift instruction
Provides basic bitwise shifts at a cost equivalent to other arithmetic operations.
EVM does not have bit shift operators, but supports other logical and arithmetic operators. Shift operations can be implemented using arithmetic operators, but they are more expensive and require more processing time. Implementing SHL and SHR using arithmetic costs 35 gas each, while the proposed instructions use 3 gas.
Simply put, these EIPs add basic functionality to the protocol, making it cheaper and easier to perform certain operations on the chain.
EIP 1014: SKINNY CREATE2
Add a new opcode at 0xf5. This opcode takes four stack arguments: endowment, memory_start, memory_length, and salt. Same as CREATE, except that keccak256( 0xff ++ address ++ salt ++ keccak256(init_code)))(12:) is used instead of keccak256(RLP(sender_address, nonce))(12:) as the address where the contract is located. It works. has been initialized.
This allows interaction with addresses that do not yet exist on-chain, but are likely to contain only code generated by a specific piece of initialization code.
This is important for state channel use cases that involve counterfactual interactions with contracts.
Simply put, this EIP allows you to interact with addresses that have not yet been created.
EIP 1052: EXTCODEHASH operation code
This EIP specifies a new opcode that returns the keccak256 hash of the contract code.
Many contracts require checking the contract’s bytecode, but not necessarily the bytecode itself. For example, a contract can check whether the bytecode of another contract is one of a set of allowed implementations, or it can perform a code analysis and, if the analysis passes, whitelist all contracts with matching bytecode.
Contracts can currently do this using the EXTCODECOPY opcode, but this is expensive, especially for large contracts that only require a hash. As a result, a new opcode is being implemented called EXTCODEHASH, which returns a keccak256 hash of the contract bytecode.
Simply put, this EIP provides a lower cost (less gas required) to perform certain operations on the chain.
EIP 1234: Constantinople difficulty bomb delay and block reward adjustments
Difficulty bombs (also known as “ice ages”) are slowly accelerating, so average block times are increasing. This EIP proposes delaying difficulty bombs by approximately 12 months and reducing block rewards to adjust for ice age delays.
Simply put, this EIP ensures that the blockchain is not frozen before proof-of-stake is ready and implemented.
What changes are happening in St. Petersburg?
Before Ethereum performs a network upgrade on the main network, it upgrades a test network such as Ropsten to test the changes. The original Constantinople changes listed in this blog post were applied to the test network before being postponed, and reverting the original Constantinople changes will require a second network upgrade. This is called St. Petersburg and is in the same block number as Constantinople.
The following EIPs were removed from the test network using the St. Petersburg network upgrade:
explanation EIP 1283: Net gas metering for SSTORE without dirty map
thank you!
A huge thank you to the Ethereum community and all Ethereum developers on the platform and all clients who came together to provide their opinions, thoughts, and contributions. Special thanks to Reddit user cartercarlson for permission to use it. his Reddit post and MyCrypto To us “Ethereum Constantinople: Everything You Need to Know“This is a medium post.
disclaimer: This is an emerging, evolving, highly technological space. If you decide to implement the recommendations in this post and remain engaged, you need to understand how this affects you. You should understand that this involves risks, including but not limited to risks such as unexpected bugs. If you choose to implement these recommendations, you solely assume the risk of the results. This post and recommendations are not a sale of any kind and do not create an endorsement of any kind, including but not limited to anything related to the Ethereum network or Ethereum clients mentioned herein.