Long-term CBC Casper plans
After the merge, and sharding, and statelessness/state expiry and other high-priority items are finished, one natural next thing to do in the Ethereum roadmap is to switch from the current Casper FFG to CBC Casper.
Switching to CBC has the benefit that it simplifies the spec and reduces surface for security vulnerabilities at the interface between finalization and LMD GHOST fork choice (see eg. section 4.6 in the paper). It also allows us to get some level of finality if 50-67% of nodes are online.
However, there are still challenges that remain in the implementation that have to do with efficiently verifying the CBC justification structure and slashing conditions, which are more complex than FFG's simple surround checking. There is the possibility that it's better to wait for newer cryptography (eg. Halo's efficient de-facto recursive SNARKs) to make it simpler to implement CBC before fully proceeding with it; fortunately, lots of work on improving Halo is already happening!
- A CBC Casper tutorial (2018): https://vitalik.ca/general/2018/12/05/cbc_casper.html
- Concrete proposal for how to CBCify the beacon chain (2019): https://github.com/ethereum/eth2.0-specs/issues/701