Managing the big move
The transition to Shelley is being done in phases, a major part of which was the OBFT (Ouroboros Byzantine Fault Tolerance) hard fork. This implemented OBFT, which acts as a bridge between Ouroboros Classic running Byron and Ouroboros Praos for Shelley. The final part of this transition is underway with the release of components like cardano-node, cardano-rest, and cardano-wallet that are nearly Shelley compliant. This preparation of IOHK code bases for Shelley is called the Byron reboot.
Byron reboot phase (currently running)
The Byron reboot is the process of incorporating all the bridging code into existing code bases needed to start the process of migrating to Shelley. The reboot was launched on March 31st.
In parallel with the current Byron reboot phase, we will be launching a Shelley Haskell testnet with a specific purpose in mind.
‘Friends and family’ testnet
A Shelley Haskell testnet will be set up for internal testing. In addition, some people, ‘friends and family’, from the ITN will be invited to help test the node setup and confirm everything is working correctly.
Once we’re happy that things are running smoothly, the Haskell testnet will be opened up to all the other stake pool operators who participated in the ITN for them to start building and redeploying their infrastructure. The idea is that people who participated in the friends and family testnet will give other operators advice on how to configure their stake pools. There will be some ada rewards available for taking part in this testing.
Balance check testnet (exchange integration)
The final Shelley Haskell testnet is the balance check testnet. This will consist of the cardano-node, cardano-wallet, and the Byron and Shelley rules.
At this point, rewards from the Rust-based ITN will be consolidated with users’ mainnet balances. When the balance check is complete, the rewards part of ITN will be shut off and the balance check testnet will be complete.
It is at this point in the transition where all ITN rewards are consolidated and exchanges and third-party wallets can start to integrate. All libraries being planned for Adrestia will be available and exchanges can test and start integrating against this.
Shelley upgrade phase (exchange integration)
After the balance check has run for a time, we will enter the Shelley upgrade phase. During this phase, users will be able to download a Shelley-supported wallet that will have all the Shelley functionality for staking and delegation, but we will still be running in Byron and OBFT in parallel.
We will give exchanges and third-party wallets time to upgrade their integration before the Shelley hard fork. Then, all the Byron relays will be shut off, and it will be the end of the Byron era. Cardano will be running on a totally new codebase.
Note: Any exchanges still on Byron will have no access to the network and will need to upgrade to a supported version of the wallet.
Hybrid phase after the Shelley hard fork
After the Shelley hard fork, Cardano will enter the Shelley hybrid phase. This is the final phase before decentralization. IOHK has implemented a parameter, ‘D’, standing for decentralization, to smooth the migration to the stake pool nodes.
In the beginning, Shelley will have blocks made by:
- federated nodes (centralized)
- stake pools (decentralized)
The ‘D’ parameter is a way of gradually opening up the system, block by block, to decentralization. It acts as a control parameter that will be gradually turned up until full decentralization is reached – or turned down if something does not go to plan on the network.
As more stake pools become available, the ‘D’ parameter will be altered accordingly to move blocks generated in a confederated consensus model to the fully decentralized stake-pool model.