The five EIPs set to be released in Constantinople are:
EIP 145: A technical upgrade written by two ethereum developers, Alex Beregszaszi and Pawel Bylica, EIP 145 details a more efficient method of information processing on ethereum known as bitwise shifting.
EIP 1052: Authored by core developer Nick Johnson and Bylica, EIP 1052 offers a means of optimizing large-scale code execution on ethereum.
EIP 1283: Based on EIP 1087, which was written by Johnson, this proposal mainly benefits smart contract developers by introducing a more equitable pricing method for changes made to data storage.
EIP 1014: Created by the founder of ethereum himself, Vitalik Buterin, the purpose of this upgrade is to better facilitate a certain type of scaling solution based upon state channels and “off-chain” transactions.
EIP 1234: Championed by Afri Schoedon, release manager for major ethereum client Parity, this upgrade is the most contentious of the batch, reducing block mining reward issuance from 3 ETH down to 2 ETH, as well as, delaying the difficulty bomb for a period of 12 months.
All in all, the changes include: code optimizations to improve processing times for developers; fairer pricing structures for changes made to smart contract data storage; a code edit making scaling solutions through state channels easier to occur on ethereum; and changes to ethereum’s economic policy.
Given these code changes are likely to shape the progress of the second most popular blockchain for years to come, Constantinople is worth taking a deeper look at.
Optimizing code
To begin, both EIP 145 and 1052 are targeted at improving network efficiency, by making changes to ethereum’s underlying virtual machine — the EVM.
Powered by software at the heart of ethereum, the EVM processes smart contracts into a series of ones and zeros also called bytecode.
Seeking to maintain the longevity of ethereum and optimize performance to better serve user needs, both EIP 145 and EIP 1052 seek to optimize the developer experience for smart contract developers specifically.
EIP 145 introduces native “bitwise shifting” functionality which is able to run through bytecode without relying on arithmetic operations such as multiplication and division. In effect, this means that the smart contracts underlying decentralized applications like CryptoKitties will be processed faster by the EVM.
Additionally, when smart contracts on ethereum are executed and called upon, EIP 1052 introduces an upgrade by which only the essential data of the contract code is checked rather than the entirety of the code itself.
Namely, rather than verifying the full contract, EIP 1052 makes it so a compressed line of code, or a “hash” can be verified instead, saving computing time and cost — especially for lengthy smart contracts that run on thousands of lines of code.
Cheaper storage
Further EIPs deal with how smart contracts are stored on ethereum — such as EIP 1283, which reduces the amount developers need to pay when building smart contracts.
As it stands, without EIP 1283, certain updates to smart contract code cost a hefty amount of gas, the computational unit of energy required to execute operations on the ethereum platform.
EIP 1283 implements a better cost analysis for contracts, by breaking down what contract changes have been written in ethereum’s short term storage, called memory, rather than the blockchain itself.
If none or a few of those updates end up on the blockchain, it reduces the overall cost for developers. As Johnson, the author of the original proposal concept behind EIP 1283 recounted to CoinDesk:
“In some cases in the past, we were charging gas for things that didn’t actually happen or didn’t actually cost any real resources and now we’re trying to adjust things so we only charge gas that aligns with the work we actually have to do.”
In the future, Johnson added that developers are looking to implement what is known as rent fees.
As detailed by CoinDesk, the idea is to charge a fee for users holding data permanently stored on the blockchain. Johnson said this would be an effective way to disincentivize “using up storage for things you don’t need them for.”
State channels
Aside from a revamped gas fee structure for smart contract developers, EIP 1014 helps progress an experimental scaling solution called state channels.
Actively under development as a part of efforts to scale ethereum for larger transaction volume, these channels minimize the amount of operations that need to happen on the ethereum blockchain itself, freeing up network resources and space.
Created by founder of ethereum Vitalik Buterin, EIP 1014 is described on GitHub by state channel developer Liam Horne to be “a significant performance increase in state channels.”
Others on the same forum have echoed the sentiment, urging for its inclusion into Constantinople and affirming that EIP 1014 would better facilitate transactions happening “off-chain.”
Economic policy
Finally, there is EIP 1234, the latest addition to the four other proposals set to be released in Constantinople dealing with the incremental increase in block mining difficulty known as the difficulty bomb.
Originally intended to encourage the transition into an more ecological, proof-of-stake based consensus system named Casper, the switch is still a long way off. As such, steps must be taken to delay the bomb — and decrease ether issuance alongside it.
Simply put, given the removal of the difficulty bomb, blocks will be faster to mine following Constantinople. This means that steps must be taken to reduce the reward per block as well — and EIP 1234 reduces them from 3 ETH to 2 ETH per block.
Because ethereum doesn’t have a formal monetary policy — currently maintaining an uncapped inflation model — according to a trader named Eric Conner, the reward reduction in EIP 1234 can be thought of as akin to a “stop gap” that is aimed at effectively curbing a “supply bleed”.
Schoedon, author of EIP 1234, described it as “the best proposal to stabilize issuance while simultaneously delaying the bomb” in an email to CoinDesk.
Still, certain members of the ethereum mining community opposed the decision to decrease mining rewards, arguing thinner profit margins and the potential of mining operations to become increasingly centralized in the hands of few.
The concerns come at a time when ASICs — a highly competitive type of mining hardware that removes hobbyists from the mining industry — are becoming increasingly widespread on ethereum.
Post a Comment