Announcing Tezos’ 8th protocol upgrade proposal “Hangzhou”

By Marigold on 21 September, 2021

This is a joint post from Nomadic Labs, Marigold, Oxhead Alpha, Tarides, and DaiLambda.

The last upgrade of the Tezos protocol, Granada, activated on August 6th, 2021. We are now glad to announce a new protocol proposal, Hangzhou, the result of a collaborative work from various teams.

(As usual, Hangzhou’s “true name” is its hash, which is PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r).

Hangzhou is the capital of East China's Zhejiang province, with a population of more than 10 millions. Founded in the 7th century, it is a city with a rich history ; more recently, it has become a dynamic economic zone, and is considered a major technological and innovation hub.

The Hangzhou proposal features several major improvements to the protocol, as well as numerous minor improvements. Below, we present some of the most interesting and important changes:

Timelock

Timelock encryption makes it possible for smart contract authors to include strong countermeasures against Block Producer Extractable Value (referred to as "MEV" on proof-of-work chains).

Views

Views are a new kind of entrypoints for smart contracts, which make internal state information more easily accessible to other smart contracts.

Cache

Caching provides faster access to regularly accessed data and lowers the associated gas cost. It does so by splitting state storage between a "hot" storage, kept in RAM, and a "cold" storage, kept on disk. Caching directly increases the throughput of Tezos and can be built upon to further improve the performance of various parts of the protocol.

Global Table of Constants

The global table of constants can be used by smart contract developers to register Michelson expressions as "constants" and reference them in contracts. This allows developers to create larger and more complex contracts than they otherwise could. It will also serve as the foundation for smart contracts libraries in Tezos.

Context Flattening

Context flattening is a rewriting of the protocol's database internals. It optimizes storage use, and will also enable future optimisations in order to speed up the processing of blocks and operations.

Liquidity baking

Hangzhou includes a small increase to the liquidity baking sunset level. Without this, the subsidy would halt during the lifespan of this protocol.

We invite you to look at the changelog for a full description of the contents of the proposal. Furthermore, we strongly encourage you to test your own Tezos-based applications to check for compatibility problems with Hangzhou. Hangzhou, and the configuration for its test network Hangzhounet, are included in version 11.0 of the Tezos node.

If Hangzhou is adopted, our next proposal (which likely will have a name starting with the letter “I”) should be proposed and enter the Tezos amendment process this winter. We hope that it will introduce a new consensus algorithm that, if adopted, will bring fast finality to Tezos.

Over the course of the coming months, our teams also intend to continue to develop and propose amendments to increase performance, lower gas consumption, reduce block times, and increase Tezos’ throughput (as measured, for example, in transactions per seconds, or smart contract invocations per second).

We are also currently working on two major Layer 2 projects. The first one is sidechains. Sidechains can help increase the throughput of the chain by offloading some of less critical computations and state. A prototype already exists, and should be made public soon. The second one is Optimistic RollUps (ORU). ORUs enable running smart contracts at scale, while still being secured by the main chain. We also have plans relying on sharded data-availability, to scale to even greater throughput.

All of this and more is actively being developed. We are all excited to continue developing the future of Tezos.