Danny Ryan, an ethereum developer, stated on Friday the specification for Casper + Sharding = Shasper is “ready for review and discussion,” before adding:
“There are pieces that might still change and the RNG is not fully defined, but I heard the estimate – ‘it would be <100 lines of code away from the final spec’. I’d guess a few more lines than that but :joy:”
There’s a lot more work after the spec is done, including its full implementation, then testing, then audits, then a full Shasper testnet and then hopefully an historic day when blockchains finally scale.
The design you’re probably familiar with as there hasn’t really been much change at a conceptual level, but only in implementation. The spec says:
“There is a central PoS chain which stores and manages the current set of active PoS validators. The only mechanism available to become a validator initially is to send a transaction on the existing PoW main chain containing 32 ETH.
When you do so, as soon as the PoS chain processes that block, you will be queued, and eventually inducted as an active validator until you either voluntarily deregister or you are forcibly deregistered as a penalty for misbehavior.
The primary source of load on the PoS chain is attestations. An attestation has a double role:
- It attests to some parent block in the beacon chain
- It attests to a block hash in a shard (a sufficient number of such attestations create a ‘crosslink’, confirming that shard block into the main chain).
Every shard (e.g. there might be 1024 shards in total) is itself a PoS chain, and the shard chains are where the transactions and accounts will be stored.
The crosslinks serve to ‘confirm’ segments of the shard chains into the main chain, and are also the primary way through which the different shards will be able to talk to each other.”
The design is a full hybrid in that there will effectively be two chains, the beacon chain and the Proof of Work (PoW) chain.
They operate as one initially of course, with a smart contract on the PoW chain linking the chain as well as staking deposits to the beacon chain.
The beacon chain kind of runs the sharding system, staking, validation, and sort of everything, with that PoW chain potentially easily discardable eventually.
That’s the aim, to move to full Casper (Proof of Stake), with the recent implementation changes in part to make it easier to implement full casper and improvements to initial sharding.
Timelines are a shaky thing on these matters. Some are disappointed contract hybrid Casper was not implemented, but we give devs full leeway on this matter because it is very complex and it is very much a breakthrough with some Bitcoin Core devs saying sharding is impossible.
The specification may show not only it is possible, but it will soon-ish be live. Our completely out of thin air time-line probably starts with Metropolis Constantinople.
That is to be implemented before Devcon, by October. A 33% reduction in eth issuance is being discussed for this Devcon upgrade, with ethereans generally seemingly being very much in support of it. Besides that headline potential Ethereum Improvement Proposal (EIP), this upgrade has some other fairly minor efficiency gains and features for coders.
Then there’s Devcon, and we’ll all be distracted by that. Then there’s Christmas already, and so we’re at summer 2019 when potentially Casper might come out. Sharding then should soon follow, meeting our self-imposed deadline of 2020.
We wouldn’t fret much if they miss it by a bit and we don’t think anyone takes it seriously, but it gives some sort of anchor, something to aim towards.
In the meantime, ethereum is running fine currently, with fees at pennies, and thousands of dapps moving around. There’s second layer protocols that may come out, more dapps launching perhaps, the Metropolis upgrade and overall plenty to keep us all very busy.
Not least because everyone needs some time to learn all the solidities, smart contracts and the rest, test their projects, pilots and so on, and get all ready for sharding, which will make ethereum scale by the number of nodes, in time we hope for the roaring 20s.