Ethereum tokens are currently produced using a proof-of-work mining process similar to Bitcoin. Unfortunately, this mining protocol is energy-intensive and potentially prone to a 51% attack. As a result, the smart contracts platform is seeking to move toward a proof-of-stake consensus method rather soon.
To make the transition, Ethereum developers already released the code for this software in April. Named Casper, the software has been in the works since 2014. In January, it went live on the Ethereum testnet. Interested parties can participate in the testet for 1500 ETH (although this will likely be lower with the mainnet launch).
The tricky part is the transition. In particular, both the blockchain’s new and old consensus algorithms must sync and work together when this happens. Doing so is critical to that the network is not attacked during this transition.
As currently proposed, securing the network will require miners to work with “validators” via smart contracts. As node operators, these validators can participate in this process by storing ETH in a wallet (also known as “staking”). These smart contracts contain code that incentivizes ETH users to speculate on future transaction histories. However, the funding available for these incentives is not unlimited as it’s coded to deplete after some time.
At present block speeds, it will take two years for Ethereum to wind down proof-of-work mining. Once achieved, Ethereum will launch proof-of-stake mining. For now, several Ethereum software clients are readying themselves for this implementation (including both Geth and Parity). Indeed, many clients have already incorporated the needed code into their software (roughly a year after the Casper concept was floated in a whitepaper).
Testing the Contract Code
Why such a speedy implementation? These software clients remain confident that incorporating this Casper code into their software will ultimately make the entire transition less arduous for the user. They also believe that implementing this open source code now is the best bet for wide open acceptance in the future (as future code iterations may narrow its functionality and/or replicability).
As with any code, early implementation also enables users to identify potential concerns to developers. A long lead time provides developers with the necessary space to provide helpful code corrections.
What might such testing look like? For this proof-of-stake transition, network functionality will hinge on voting and block creation (not incidentally, the validators will take turns proposing and voting on these blocks). The smart contract code implemented by clients must necessarily operate as Ethereum does. Of course, these clients must ensure it doesn’t interfere with their own code as well, and they will ultimately need to test the code in a shared testing environment before its launch.
What We Can Look Forward To
Once proof of stake is implemented, Ethereum will no longer require miners to verify network transactions. Instead, users will be able to stake their Ether and receive rewards for confirming transactions proportional to their stake. Moreover, stakers will also be able to pool their resources together in staking pools (as they do in current mining pools).
Once the proof-of-stake protocol is fully implemented, it will cap the number of Ethereum available (thereby limiting inflation) and enable transactions to be confirmed much faster. Better yet, as less Ethereum is available, these changes may help increase Ethereum’s price. Ethereum users thus have much to look forward to.