The Vasil Hard Fork: a new update to scale and optimize the Cardano blockchain
On September 22nd 2022, the Vasil hard fork update will take place. Using Cardano’s hard fork combinator (HFC) approach to merge the previous protocol with the latest one, the Vasil improvements will be implemented and the Cardano mainnet will transition to the Basho era. Before delving into further details we would like to acknowledge Vasil St. Dabov as the namesake of this upgrade. He was a much loved and respected Cardano community member and is dearly missed by his family, friends, and the Cardano community.
The capabilities of the Cardano blockchain will expand with the Vasil hard fork. In addition to several assorted fixes, decentralization will increase and new functionalities will be introduced. The decentralization parameter—or d-parameter— will be removed, thus preventing re-federation. This upgrade will also introduce changes that enhance the handling of on-chain (Plutus) scripts, thus reducing script execution costs, transaction size and improving throughput.
During the process, stake pool operators (SPOs) acted with caution and vigilance. Before upgrading to the new testnet, they performed extensive testing. For the Cardano Foundation, it was heartening to witness the decentralization and strength of the Cardano developer community throughout this process.
In the lead-up to a hard fork
Preparations for a hard-fork start early on, but once a tentative date is set the different teams begin a period of particularly intensive work. The rigorous testing, the thorough verification, and the multiple steps taken by those involved all combine to safeguard against critical technical issues. Moreover, and crucially, SPOs, exchanges, and Dapp developers must not only get proper, meticulous information but also feel comfortable updating to the Cardano preview testnet and be given sufficient time to prepare for the hard fork.
Indeed, a significant number of SPOs, exchanges, and Dapp developers have to upgrade their cardano-components before the final decision to hard-fork the mainnet is made. We have a set of Critical Mass Indicators across communities to give us clear benchmarks for identifying a date to submit the Update Proposal for the hard fork. These are as follow:
- SPOs: 75% of Nodes updated to the H/F version (Block-producing)
- Exchanges: Exchanges that manage 80% of the liquidity (*)
- DApps: Top Ten DApps by TVL value Integrated to the H/F Node
Before a hard-fork event, SPOs execute essential scripting adjustments that require both care and time. On the other hand, projects have to check backward compatibility. In fact, third parties interact with the Cardano blockchain utilizing cardano components. Whether they employ wallets, nodes, or the Cardano Rosetta application programming interface (API), it is necessary to safeguard that these processes, and their use, remains unchanged after the hard fork. So the Integrations Team of the Cardano Foundation provides information to IOHK regarding how exchanges and third parties interact with the Cardano blockchain. The team also intensifies the ongoing technical monitoring of around 142 exchanges and 54 third parties.
As part of the technical assistance given to exchanges, our Integrations Team ensures they receive adequate information and are properly educated about what the hard-fork will entail as well as the way to use the new functionalities and how to execute the upgrade. Some exchanges lean on their own management of unspent transaction output (UTxO) and address management code. For these, information proves key, and our Integrations Team supplies them with comprehensive details to guarantee they can perform the required updates to their software. In the case of those exchanges reliant on the components and libraries maintained by us, the Integrations Team coordinates closely with them to ensure they upgrade in time for the hard fork.
The Cardano Foundation’s Integrations team constantly tracks the exchanges’ progress and gathers their upgrade status. The team also provides technical assistance, whenever and wherever necessary, and aids with the assessment of the Cardano Node and downstream-component readiness. Throughout the entire process, they equally maintain daily meetings with IOHK to establish a feedback-loop so any issues can be addressed.
Quality and security is paramount in software development. This also implies no timelines can be absolute. Thus, the Integrations Team of the Cardano Foundation keeps exchanges informed of any technical news as well as of the expected date for the mainnet upgrade. When the moment arrives, our team ensures their timely upgrade.
Chief improvements arriving with the Vasil hard-fork
The Basho era will focus on scaling and optimization to enhance the underlying performance of the Cardano network. The upgrades will create better adoption conditions and healthier support for applications’ growth as well as for those applications with already high transaction volumes. The Basho era of Cardano is a period of optimization, improving scalability of the network. Where previous development eras focused on decentralization and new functionality, Basho is focused on improving the underlying performance of the Cardano network to further support growth and adoption for applications with high transaction volumes.
The Vasil hard-fork update is the first in a series of such protocol changes. It will simplify the verifiable random function (VRF) and remove extra entropy in the protocol parameter, as this is no longer needed once the system is fully decentralized. It will also eliminate the pre-filtering of unregistered stake credentials therefore avoiding aggressive pre-filtering. These changes will lead to increased performance of the blockchain.
The Vasil upgrade will include a series of improvements and optimizations to the Cardano cryptographic primitives. It will include a tuned Plutus interpreter and a new cost model, all of which are part of Plutus V2 Vasil Hard Fork. These upgrades will also further improve Plutus by introducing Cardano Improvement Proposals (CIPs), namely CIP 31, CIP 32, and CIP 33.
- CIP 31 improves the handling of on-chain (Plutus) scripts. It introduces a new kind of reference input, which allows the reading of an output without spending it. This will facilitate access to information stored on the blockchain without the churn associated with spending and recreating UTXOs.
- Simultaneously, CIP 32 will allow datums themselves to be attached to outputs instead of datum hashes. This provides a more convenient architecture where devs don’t have to include the data when interacting with the script.
- Finally, CIP 33 allows scripts ("reference scripts") to be attached to outputs, and to allow reference scripts to be used to satisfy script requirements during validation, rather than requiring the spending transaction to do so. This will allow transactions using common scripts to be much smaller.
Although the implementation of these CIPs will shift many of the ways in which Plutus works today, and thus require some learning and adaptation, it will vastly improve the Cardano network performance. It is a testament to the importance of the CIPs program and the vigor of the Cardano ecosystem.
Those within the community can submit a CIP for processes, information, or standards. Upon submission, the community editors perform the technical review and regular public meetings are held to encourage discussion. The Cardano Foundation encourages anyone interested in participating to do so, you can learn more about participating here. The CIPs stand as an exemplary instance of decentralization and governance at a moment when the Cardano blockchain heightens its decentralization.
In parallel with the Vasil hard-fork, but happening independently from it, another feature which will streamline the process of sharing information about newly created blocks is diffusion pipelining. Diffusion pipelining is a feature that improves block propagation times and further leads to higher throughput. In essence, it streamlines the process of sharing information about newly created blocks among network participants. Diffusion pipelining – is an improvement to the consensus layer that facilitates faster block propagation.
The various enhancements from Vasil—such as faster block validation and propagation, improvements in script resource usage, smaller script sizes, and improved transaction validation experience—will provide capabilities to enable further projects to launch. It will also provide an upgrade path to existing DApps. Additionally, the updates in the Vasil hard fork lay the foundations for increased cross chain interoperability.
Ultimately, all of these changes will further enhance the Cardano blockchain as a compelling choice for enterprise use and aid in optimizing the world’s financial and social systems.