A lot of people are looking forward to the upcoming Metropolis hard fork fro the Ethereum ecosystem. As is the case with any major developmental update, Metropolis will introduce a lot of changes and new features. Looking at the community response, several of these new features are far more “exciting” than others. Below are three changes which many people are looking forward to when Metropolis launches.
3. ReturnDATA* and REVERT
From a developer point of view, the Metropolis will bring some interesting changes to the table. Two of the opcodes developers may want to pay attention to are REVERT and the new RETURNDATA* options. More specifically, by using the new RETURNDATA* opcodes, developers can make [smart] contracts return variable sized values. This has already been possible for some time now by using a workaround, but it was far from convenient, to say the least.
Additionally, contracts will benefit a lot from the REVERT opcode as well. This feature effectively allows contracts to revert and fail, yet it won’t use up all of the gas. When combined with the RETURNDATA* option, developers may finally be able to properly work with exception handling. Plus, contracts will “explain” why they failed. The “out of gas” code is not exactly informative, and more detailed responses are to be expected.
2. Account Abstraction
It is quite difficult to explain account abstraction without reverting to technical jargon. Account abstraction allows users to “define” their wallet address – of which they own the private key – in the form of a smart contract. This may not sound overly exciting to a lot of non-developers, but there are some benefits to using this new feature. Especially users who take account security very seriously may want to look into this change.
More specifically, this change means private keys used to control an external account would be less susceptible to attacks executed by quantum computers against the signature scheme being used right now. Users can benefit from other security schemes, such as hash ladders. Other than the security changes, account abstraction also allows for contracts to pay for gas. This latter part will take a while to be properly used by the network, as there are no client standards to support this concept right now.
1. zk-SNARKS
It has been coming for quite some time, but Ethereum will receive more transaction privacy features. In the first phase, the Metropolis hard fork will introduce the building blocks for zk-SNARKS, which is quite an important step in the right direction. More specifically, the hard fork will provide the cryptographic primitives for this technology, although it doesn’t mean full transaction privacy can be achieved from day one.
That being said, introduced the building blocks for zero-knowledge SNARKS is a big step for Ethereum. It will allow for better privacy, and even anonymity whenever needed. One could argue Ethereum will soon feature ZCash-esque transactions, although it will take some time until those changes will be made available to the entire community. It is evident this is by far the most enticing change for non-developers.
If you liked this article, follow us on Twitter @themerklenews and make sure to subscribe to our newsletter to receive the latest bitcoin, cryptocurrency, and technology news.