Succinct Marries zkSNARKs and Light Clients. Here's How
Understanding How Telepathy (by Succinct) Works
zk this, zk that, it’s about time we get some zk bridges live on Mainnet.
Over the past few weeks, we’ve discussed how token bridges like Hop, Connext, and Across are evolving into messaging bridges (AMBs) and how they leverage canonical bridges (Optimistic rollups, Polygon, Gnosis) for message passing. However, canonical bridges aren’t available for all chains, especially when you want to connect Ethereum to chains beyond those mentioned above. As a result, all of these bridges need a message-passing protocol to send messages from Ethereum to any chain.
Recently, many teams and developers believe zk-powered bridges can be the missing piece of the interop puzzle as they enable trust-minimized message passing. And when it comes to zk-powered bridging, one project is mentioned everywhere — Succinct Labs.
Succinct Labs is a project that aims to bring trust-minimized interoperability to Ethereum via proof of consensus or zero-knowledge proofs. This week, they’ve launched Telepathy, “the first decentralized and secure zkSNARK interoperability protocol for Ethereum.”
Could zk-powered bridging offered by Telepathy be the end-game of interoperability? Let’s take a look.
Why do we need zk-powered bridges?
Currently, most bridges are externally verified, i.e., they rely on third-party validators to confirm transactions. Externally verified bridges make strong trust assumptions related to validator collusion and censorship resistance and are much less secure than the underlying blockchains that users are bridging between. These bridges prioritize scalability and message-passing capabilities over trust minimization. If we were to map out bridges in a ‘spectrum of trust,' these bridges would lie on the highly trusted side of the spectrum, as shown below.
Ideally, one could use rollups or light client bridges like IBC for any cross-chain transaction. But these systems are limited in expandability beyond the chains they already connect. For example, in the case of IBC specifically, the cost of deploying light clients on different chains is exceptionally high and resource intensive, making it unfeasible to scale beyond Cosmos chains.
This is where zk-powered bridges come in, offering trust-minimization similar to IBC but at a much lower cost since zk-technology “can generate a proof of an expensive computation in a compute-cheap environment (off-chain) and then cheaply verify the result on-chain.” We will look closely into how this works in the later sections.
What do you mean by light clients & zkSNARKs?
Before we dive deeper into why zk-bridges and their features, it’s important to understand some of the key concepts/terms that play a big role in these types of bridges.
Light Clients
Quick definition: a light client is a software that connects to full nodes to interact with a blockchain without downloading and verifying an entire data set. Light clients only download the block headers of the blockchain, which contain a piece of information called Merkle tree root — light clients match this data with the information given by the full nodes to verify it and prove it is correct to validate the transactions.
xChain Use Case: light clients verify the state of the source chain on the destination chain with a small amount of computation. Interoperability protocols like IBC (chains connected by the Cosmos Hub) and Rainbow bridge (going from Ethereum to NEAR) leverage light clients to enable cross-chain communication between chains.
A light client is like a TLDR of a blockchain. Instead of downloading the entire blockchain, which can be very large, a light client downloads only a TLDR (block header) of the blockchain, which contains the most important information (Merkle root). This means you can still access and interact with the blockchain without using as many resources for storage and computation.
Best resource to dive deeper: What is a light client and why you should care?
zkSNARKs
Quick definition:
“A Zero-Knowledge Succinct Non-Interactive Argument of Knowledge aka zkSNARKs allows you to generate a proof that some computation has some particular output, in such a way that the proof can be verified extremely quickly even if the underlying computation takes a very long time to run.”
zkSNARKs makes it possible to prove the validity of complex computations, such as transactions on a blockchain, without revealing the details of those transactions.
Just like a light client only downloads a summary of the blockchain data, zkSNARKs only reveal a summary of the information they're encrypting. This summary is called a "proof," and allows other people to verify that the information is correct without revealing all the details. It’s like using ChatGPT in incognito mode on your computer — you can learn about a crypto concept and publish an article to showcase your knowledge (proof), but how you gained access to the information (chatGPT) will remain hidden from the public.
Best resource to dive deeper: An approximate introduction to how zk-SNARKs are possible
What is Telepathy — Proof of Consensus: Combining Light Clients & zkSNARKs
The light-client approach is great from a security perspective as it enables trust-minimized communication between chains. However, this approach is expensive and difficult to expand to any chain, raising doubts about its feasibility. Thankfully, recent developments in zero-knowledge technology, specifically zkSNARKs, reduce computation costs and make this approach feasible.
Telepathy introduces the term “proof of consensus” that essentially combines the powers of light clients and zkSNARKs to enable trust-minimized cross-chain communication.
Proof of consensus means using zkSNARKs to generate a validity proof of the state of a chain according to its consensus protocol, which can then be used to power light clients (to facilitate trust-minimized interoperability).
Essentially, Telepathy leverages zk-technology to verify transactions without relying on a third-party (security) and conducting computations off-chain (cheap) to scale light client verification.
Here’s a high-level explanation of how a message’s lifecycle from Ethereum to Gnosis via Telepathy:
1) Alice requests a cross-chain smart contract call from the Telepathy Router, a smart contract that is responsible for handling both the sending and receiving of messages.
2) User must wait for Ethereum Consensus (~12 minutes) for the transaction to be finalized on Ethereum before the message is relayed.
3) A finalized block header is produced if a large % of Ethereum’s validators sign the message and attest to the block header (>2/3rds of the Sync Committee Protocol)
The Telepathy Operator generates a validity proof that a block header has enough signatures from Ethereum’s validators. This zkSNARK is then verified on-chain.
By doing so, access to Ethereum’s block headers on destination chains is unlocked inside the Telepathy Light Client smart contract.
4) These block headers act as commitments about the state of Ethereum and, thus, the fact that the user called the Telepathy Router can be proven with a Merkle proof using the Telepathy Relayer.
5) The zkSNARK from the Telepathy Light Clients and Merkle proof from the Telepathy Relayer are verified — Telepathy Router passes the message on behalf of the user and enables them to implement custom logic on the destination chain.
To test this out for yourself, you can try the Telepathy demo at demo.telepathy.xyz.
Note: The message lifecycle is an adapted version of the detailed technical overview provided in the docs — we encourage you to read it to understand the finer details of the flow).
Closing Thoughts
The development of zk-powered bridges is a significant milestone for interoperability protocols. Zk bridges have long been touted as the end-game of interoperability and it’s great to finally see one go live on Mainnet. Although light clients are resource-intensive, the combination of light clients and zkSNARKs used in Telepathy offers a powerful solution that could be the end-game of interoperability. We at LI.FI are super excited to see the interesting use cases that get built on Telepathy.
Telepathy is currently live on Ethereum Mainnet and 8 supported chains (Mainnet, Goerli, Gnosis, Polygon, Binance Smart Chain, Avalanche, Arbitrum, and Optimism). It has been audited by Veridise, Trail of Bits, and Zellic, and is available for anyone to use.
To learn more about Succinct Labs and Telepathy, check out the following resources:
Get Started With LI.FI Today
For more information about the LI.FI protocol,
Head to our link portal at link3.to/lifi
Read our SDK’ quick start’ at docs.li.fi
Join the official Discord server
Follow our Telegram Newsletter
Subscribe on our Substack
or try our any-2-any swaps NOW at jumper.exchange