ZKsync Governance Procedures: Overview
Version published on 12 September 2024
1. Introduction
The ZKsync Governance Procedures describe the ZKsync governance system, which is responsible for the governance of the ZKsync protocol.
The ZKsync governance system includes standard and emergency response procedures along with specifications for governance bodies, namely the ZKsync Security Council and ZKsync Guardians.
The ZK token is a protocol token used within the ZKsync governance system to allocate and delegate voting power over governance proposals, and may have additional functionality in the future if approved pursuant to the process described in these Governance Procedures.
The ZK token contract is deployed at 0x5A7d6b2F92C77FAD6CCaBd7EE0624E64907Eaf3E on ZKsync Era.
If there are changes made to the smart contracts, code and onchain mechanisms that comprise the ZKsync governance system, the ZKsync Governance Procedures will be updated to reflect such changes.
The ZKsync Association is expected to maintain and update these ZKsync Governance Procedures as necessary.
However, the ZKsync Association does not assume responsibility for the completeness of these Governance Procedures, which are intended to function as a high-level and readily-understandable description of the governance and the governance processes involved in the ZKsync Protocol. The Governance Procedures are incomplete because they relate and refer to smart contracts, code and onchain mechanisms that operate deterministically in accordance with their specifications. As such, the ZKsync Governance Procedures must only be read in conjunction with a thorough understanding of those smart contracts, code and onchain mechanisms, and the ZKsync Governance Procedures are not in themselves intended to be a comprehensive account of all relevant risks, uncertainties, adverse/negative facts and disclaimers relating to the governance and the governance processes involved in the ZKsync Protocol.
2. ZKsync Protocol
The ZKsync governance system is expected to govern smart contracts related to the ZKsync protocol, including but not limited to:
DiamondProxy contract deployed at 0x32400084C286CF3E17e7B677ea9583e60a000324 on Ethereum.
Legacy ZKsync ERC20 Bridge deployed at 0x57891966931Eb4Bb6FB81430E6cE0A03AAbDe063 on Ethereum.
ZKsync ERC20 Bridge deployed at 0x11f943b2c77b743AB90f4A0Ae7d5A4e7FCA3E102 on ZKsync.
ZKsync Shared Bridge deployed at 0xD7f9f54194C633F36CCD5F3da84ad4a1c38cB2cB on Ethereum.
ZKsync beacon proxy deployed at 0x1Eb710030273e529A6aD7E1e14D4e601765Ba3c6 on ZKsync.
ZKsync Validator Timelock deployed at 0xa8CB082A5a689E0d594d7da1E2d72A3D63aDc1bD on Ethereum.
ZKsync Wrapped Ether contract deployed at 0x57891966931Eb4Bb6FB81430E6cE0A03AAbDe063 on ZKsync.
3. ZK Credo
The ZK Credo sets out the vision and values of ZKsync.
The role of ZKsync Guardians is to serve as protectors of the Mission (as defined in Schedule 4) of ZKsync, as set out in the ZK Credo.
4. Governance Bodies
The governance bodies that participate in the ZKsync governance system include:
Token Assembly: The Token Assembly is a governance body made up of ZK tokenholders, who delegate the voting power of ZK tokens they hold, to ZKsync addresses in order to (indirectly) participate in the ZKsync governance system.
The voting power of the Token Assembly is held and exercised by the controllers of the ZKsync addresses to which voting power has been delegated ("Delegates").
ZK tokenholders can also delegate the voting power of their ZK tokens to themselves, by delegating to a ZKsync address they control.
Delegates may propose and vote on governance proposals.
ZKsync Security Council ("Security Council"): The Security Council is a governance body currently made up of a minimum of nine (9) members out of twelve (12) allocated seats, whose powers, procedures, and membership is set out in Schedule 3: ZKsync Security Council.
The Security Council controls the following Ethereum L1 multsig: 0xBDFfCC71FE84020238F2990a6D2954e87355De0D
The primary responsibility of the Security Council is to evaluate and approve Protocol Governor proposals (as defined below) that have been approved by Delegates, before the proposals are executed onchain.
The Security Council can freeze the ZKsync protocol in case of an emergency.
The Security Council can initiate and/or approve emergency upgrades, which will be executed subject to the additional approval of both the ZKsync Guardians and the ZKsync Foundation.
ZKsync Guardians ("Guardians"): Guardians are a governance body who serve as protectors of the ZK Credo, made up of a minimum of five (5) individuals out of eight (8) allocated seats, whose powers, procedures, and membership are set out in Schedule 4: ZKsync Guardians.
The Guardians control the following Ethereum L1 multsig: 0xD677e09324F8Bb3cC64F009973693f751c33A888
Guardians have the independent power to veto governance proposals that are inconsistent with the ZK Credo. This includes the power to veto governance proposals that are abusive, malicious or could otherwise adversely affect ZKsync or its governance system. The Guardians' decisions are made at their sole discretion.
The Guardians are not required to assess the legality of governance proposals.
Guardians may evaluate and approve Protocol Governor proposals, approved by Delegates, if the Security Council, for any reason, abstain from exercising their approval during the Risk Review Period.
Guardians can approve Emergency Upgrades, which will be executed subject to the additional approval of the Security Council and the ZKsync Foundation.
5. Supporting Entities
ZKsync Foundation: The ZKsync Foundation is a Cayman foundation that, among other things, provides grants and enters into agreements with a diverse range of (potentially competing) market participants each of whom are working on or in relation to ZKsync, ZKsync related technology, the Ethereum 'layer-1' blockchain system or other zero-knowledge based cryptographic technology more widely, including for the purposes of studying, evaluating, testing, monitoring, maintaining, facilitating, fostering and improving the use or functionality of ZKsync and ZKsync related technology.
The ZKsync Foundation controls the following Ethereum L1 multisig ("ZKsync Foundation Multisig"): 0xbC1653bd3829dfEc575AfC3816D4899cd103B51c
The ZKsync Foundation can approve Emergency Upgrades, which will be executed subject to the approval of both the ZKsync Guardians and the ZKsync Security Council.
ZKsync Association: The ZKsync Association is an Austrian association (Verein) ("ZKsync Association") that is primarily responsible for: (i) designing the ZKsync governance system; (ii) deploying the initial governance and token smart contracts; (iii) appointing the initial members of the governance bodies described below; (iv) conducting the ZK token airdrop; (v) supporting the ongoing governance of the ZKsync protocol as contemplated by its governing documents (e.g., by periodically updating these Governance Procedures); and (vi) removing content on the following interfaces that, at its sole discretion, violates or conflicts with Austrian law or could result in negative tax consequences:
The ZKsync Governance Portal available at https://vote.zknation.io and https://delegate.zknation.io.
The ZK Nation Governance Documentation available at https://docs.zknation.io.
The ZKsync Governance Forum available at https://forum.zknation.io.
6. Standard Governance Procedures
The standard procedure for governance proposals voted on by Delegates using the voting power conveyed by the ZK token and executed by smart contracts deployed for the purpose of decentralized onchain governance (such smart contracts, "Governors") are set out in Schedule 1: Standard Governance Procedures.
There are three (3) Governors in the ZKsync governance system, each of which is responsible for a specific type of governance proposal:
Protocol Governor: responsible for executing ZKsync Improvement Proposals ("ZIPs") that upgrade the ZKsync protocol and/or components of the ZKsync governance system.
The Protocol Governor is an OpenZeppelin smart contract deployed on ZKsync Era: 0x76705327e682F2d96943280D99464Ab61219e34f
The Protocol Governor Timelocks is an OpenZeppelin smart contract deployed on ZKsync Era: 0x3701fB675bCd4A85eb11A2467628BBe193F6e6A8
Token Governor: responsible for executing Token Program Proposals ("TPPs") that assign minting and burning rights of ZK tokens for token programs that are aligned with the Token Program Guidelines, and help achieve the goals supporting the vision of the ZK Credo.
The Token Governor is an OpenZeppelin smart contract deployed on ZKsync Era: 0x10560f8B7eE37571AD7E3702EEb12Bc422036E89
The Token Governor Timelock is an OpenZeppelin smart contract deployed on ZKsync Era: 0x3E21c654B545Bf6236DC08236169DcF13dA4dDd6
GovOps Governor: responsible for facilitating Governance Advisory Proposals ("GAPs") related to governance and operations that do not have direct onchain consequences.
The GovOps Governor is an OpenZeppelin smart contract deployed on ZKsync Era: 0x496869a7575A1f907D1C5B1eca28e4e9E382afAb
The GovOps Governor Timelock is an OpenZeppelin smart contract deployed on ZKsync Era: 0xC3e970cB015B5FC36edDf293D2370ef5D00F7a19
7. Emergency Response Procedures
Procedures for executing a protocol upgrade to the ZKsync protocol to address threats that pose immediate security risks to the ZKsync ecosystem and/or the ZKsync governance system are set out in Schedule 2: Emergency Response Procedures.
There are two (2) types of Emergency Responses that can be executed in the ZKsync governance system:
Freeze of Layer 1 contracts; and/or
Execution of an Emergency Upgrade.
The three (3) governance bodies involved in initiating and/or approving Emergency Upgrades with their respective multisigs ("Emergency Upgrade Signers") are the:
Security Council;
Guardians; and
ZKsync Foundation.
Each Emergency Upgrade Signer is represented in the ZKsync governance system by a multisig which is made up of Signers. As used in these Governance Procedures, "Signer" means (1) a multisig wallet or (2) an externally owned account (EOA).
8. Legal
These Governance Procedures are provided for informational purposes only, are not a binding legal agreement, and may be changed prior to launch of the ZKsync governance system to address security vulnerabilities or similar matters.
Upon its launch, the ZKsync governance system is not controlled by the ZKsync Association or any third-party entity, but requires the approval of the Token Assembly to decide and make any changes or updates to the ZKsync protocol. The ZKsync Association will make good faith efforts to reflect any changes or updates to the ZKsync governance system in these ZKsync Governance Procedures. However, there is no guarantee of up-to-dateness or completeness.
In the event of a conflict between these ZKsync Governance Procedures and any agreement or obligation entered into by any person or entity in connection with the matters described herein, including the code referred to in these ZKsync Governance Procedures, such agreement or obligation, or the relevant code shall control in all respects.
These ZKsync Governance Procedures are subject to the Risk Factors and Disclaimers described here, which are incorporated by reference in their entirety as if set forth herein.
Nothing herein shall create, or be construed as creating, between or among any person or entity described herein and any other person or entity (except as may be expressly agreed by the applicable parties in writing): (1) an agency or fiduciary relationship, or any assumption of duty or responsibility, (2) a service or employment relationship, or (3) a joint enterprise, business opportunity relationship, partnership, unincorporated association or similar relationship.
Last updated