# How will Ethereum's multi-client philosophy interact with ZK-EVMs?

By [rush](https://paragraph.com/@etherush) · 2023-04-12

---

_Special thanks to Justin Drake for feedback and review_

One underdiscussed, but nevertheless very important, way in which Ethereum maintains its security and decentralization is its **multi-client philosophy**. Ethereum intentionally has no "reference client" that everyone runs by default: instead, there is a collaboratively-managed **specification** (these days [written](https://github.com/ethereum/consensus-specs) in the very human-readable but very slow [Python](https://github.com/ethereum/execution-specs)) and there are multiple teams making **implementations** of the spec (also called "**clients**"), which is what users actually run.

One underdiscussed, but nevertheless very important, major upcoming transition in the way the Ethereum chain gets validated is the rise of **ZK-EVMs**. [SNARKs proving EVM execution](https://vitalik.ca/general/2022/08/04/zkevm.html) have been under development for years already, and the technology is actively being used by layer 2 protocols called [ZK rollups](https://vitalik.ca/general/2021/01/05/rollup.html). Some of these ZK rollups are [active](https://blog.matter-labs.io/gm-zkevm-171b12a26b36) on [mainnet](https://polygon.technology/polygon-zkevm) today, with [more](https://scroll.io/) [coming](https://taiko.xyz/) [soon](https://www.kakarot.org/). But in the longer term, ZK-EVMs are not just going to be for rollups; we want to use them to verify execution on layer 1 as well (see also: [the Verge](https://twitter.com/VitalikButerin/status/1588669782471368704)).

Once that happens, ZK-EVMs de-facto become a third type of Ethereum client, just as important to the network's security as execution clients and consensus clients are today. And this naturally raises a question: how will ZK-EVMs interact with the multi-client philosophy? One of the hard parts is already done: we already have multiple ZK-EVM implementations that are being actively developed. But other hard parts remain: how would we actually make a "multi-client" ecosystem for ZK-proving correctness of Ethereum blocks? This question opens up some interesting technical challenges - and of course the looming question of whether or not the tradeoffs are worth it.

---

*Originally published on [rush](https://paragraph.com/@etherush/how-will-ethereum-s-multi-client-philosophy-interact-with-zk-evms)*
