The Byzantium Hard Fork
Byzantium is the first hard fork from a series of two that comprise the Metropolis Update . They aim to prepare the Ethereum network to transition from proof of work to proof of stake.
The exact date of Byzantium’s launch on the main net is still not certain but the latest speculations are for 17th October. Tests have started on 19th September on the Ropsten test-net and would last two or four weeks enabling developers to collect feedback and bugs.
The main changes would be:
- New Contract functionality
- Improved performance
- Better security
- Private transactions
- Mining Ice Age
Improved return of arbitrary data
Smart contracts can easily exchange data if its size is known. For data with unknown size or arbitrary data, the process is difficult and expensive. The new codes of the hard fork would allow for flexible exchange of arbitrary data, allowing for more complex conditions to be placed on transactions.
Smart contracts request data from each other for transaction processing. The one being called for details has priority to make changes over the details of the caller. The potential threat is that if the called contract is malicious it can rewrite the conditions of the transaction without the other party’s approval.With the Byzantium hard fork contracts can get details without being able to make changes. Allowing easier and more secure interaction.
At the moment, if a client wants to revert a contract they need to do so through expensive and complex hacks. Byzantium will provide an inbuilt method to stop the execution of a contract and revert it to its original state without such complex actions.
The state of Ethereum’s network is a snapshot of all the accounts and contracts. A “state root” is a calculation that verifies each new entry of the network and updates the state. The hard fork will decrease the number of these calculations reducing the computing power the network requires to operate. This is necessary for faster transaction processing in the future. The new transaction validation requires more space on the block increasing its size. However, as the blocks are rather small the issue would be manageable.
Lite clients, nodes that do not download the whole state of the network, will be able to check contract status without a middleman. Currently, lite clients can only check whether their contact has been executed correctly with the help of a third-party node that has downloaded the whole network’s state. After the update this would become an easy operation.
Later in July users of Parity client multi-signature wallets lost around $30.5 million due to a bug allowing the hacker to reset the settings to default and declare a new owner. Byzantium will remedy such network vulnerabilities and reverse the block-chain to block number 4,370,000 to reverse the malicious transactions.
The “Zero Knowledge Proof” or “zksnark” protocols conceal all transaction details, user identity and changes to the smart contracts. With Byzantium the public network would not have access to this information. Hacking the network would then demand hacking each transaction separately, which makes it more difficult.
The term Ice Age refers to the exponential increase in mining difficulty. Its aim is to prepare the network for the transition from a proof of work one to a proof of stake. Basically, rewarding users for using ETH as equity and not for mining with graphic cards. Instead of working the network users would give a portion their wallets as collateral or in fees. To prepare for the shift rewards from mining would be decrease from 5 ETH to 3 ETH to disincentive miners.
Dealing with uncles
Two miners may simultaneously calculate one and the same Ether. The system then renders one of them an uncle, and cuts its path. The uncle receives only a fraction of the reward. In some cases one Ether has many uncles and miners’ cumulative reward becomes more than the total possible – 3 ETH. The new update will remove such discrepancies.
The Byzantium hard fork will enable faster information processing on the network, easier interaction between contracts and improve the network’s resilience. A split like the one of Bitcoin, a dirty hard fork, is unlikely to happen.
Don’t forget to stay tuned for briefs on the Constantinople and Serenity hard forks!