Scroll Went Live! So, Now What About Taiko?!

By Michael @ CryptoEQ | CryptoEQ | 17 Oct 2023


You are reading an excerpt from our free but shortened abridged report! While still packed with incredible research and data, for just $20/month you can upgrade to our FULL library of 50+ reports (including this one) and complete industry-leading analysis on the top crypto assets. 

67cbbf4723857b85c151585aa280e6d940346c501cef75bafd7dea02b44b24c9.png

Becoming a Premium member means enjoying all the perks of a Basic membership PLUS:

  • Full-length CORE Reports: More technical, in-depth research, actionable insights, and potential market alpha for serious crypto users
  • Early access to future CORE ratings: Being early is sometimes just as important as being right!
  • Premium Member CORE+ Reports: Coverage on the top issues pertaining to crypto users like bridge security, layer two solutions, DeFi plays, and more
  • CORE report Audio playback: Don’t want to read? No problem! Listen on the go.

 

Overview

Taiko is a decentralized Ethereum's ZK-EVM rollup. It provides a way for developers and users of decentralized applications (dApps) that were built for the Ethereum Layer-1 chain (L1) to use Taiko's blockchain as if they were working on Ethereum L1. By doing so, dApps can be easily deployed on Taiko's network while maintaining similar security levels to those of Ethereum but with lower transaction fees than on the L1 chain.

Taiko's main goal is to prioritize EVM-equivalence, even down to the opcode level, while maintaining Ethereum-equivalence at a broader systems level. Taiko achieves this by mitigating any performance drawbacks associated with proving through its protocol design and by relinquishing Zk-friendly optimizations. Moreover, Taiko is a decentralized platform that solely relies on Ethereum public data, meaning anyone can run a node. It is also permissionless, allowing any proposer or prover to participate. Taiko is the result of a community effort, being a Type 1 ZK-EVM that is derived from the work of the Privacy & Scaling Explorations team at the Ethereum Foundation on ZK-EVM circuits.

 

Strengths

  • EVM compatibility: Taiko is an Ethereum-equivalent (EVM) rollup, which means that it can support all of the same smart contracts and DeFi applications that are currently available on Ethereum. This makes it a more attractive option for developers and users who are already familiar with the Ethereum ecosystem.
  • Shared sequencers: Taiko uses a shared sequencer model, which means that there is no single point of failure for the network. This makes it more secure and resistant to censorship.
  • Zero-knowledge proofs: Taiko uses zero-knowledge proofs (ZKPs) to verify transactions off-chain, which reduces the amount of data that needs to be submitted to Ethereum. This makes it more scalable and efficient.

Weaknesses

Taiko is a relatively new project, so it is important to be aware of any potential security vulnerabilities. Some potential security vulnerabilities to be aware of include:

  • ZKPs: ZKPs are a complex technology, and there is a risk that they could be exploited by attackers.
  • Rollup contract: The rollup contract is a critical part of Taiko, and it is important to ensure that it is secure.
  • Upgradable proxy contracts: Upgradable proxy contracts are a type of contract that can be upgraded after they have been deployed. This can be a security risk if the contract is not properly secured, as an attacker could exploit the upgrade process to gain control of the contract.
  • Privileges enabled in the contract: Some contracts have privileges enabled that give them special permissions. These privileges can be a security risk if they are not properly secured, as an attacker could exploit them to gain control of the contract.
  • Using block timestamp to calculate interest: Some contracts use the block timestamp to calculate interest. This can be a security risk if the block timestamp is not properly secured, as an attacker could exploit it to gain an unfair advantage.

 

Tech

A decentralized Layer 2 blockchain protocol, Taiko employs a Zero-Knowledge Ethereum Virtual Machine (ZK-EVM) and is envisioned to be the most Ethereum-compatible and general-purpose Zero Knowledge Rollup (ZK-Rollup).

Taiko's goal is to offer an efficient platform for decentralized applications (dApps) developers and users that allows them to harness the power of Ethereum Layer 1 (L1) without requiring modifications to their existing dApps.

Zero-Knowledge Rollups (ZK-Rollups) present a promising method to enhance computational scalability by processing, consolidating, and validating transactions off-chain, while concurrently leaning on Ethereum for the assurance of data availability and the substantiation of validity proofs. 

TL;DR​​ of rollups

  • Transactions: Transactions on Taiko are submitted to a sequencer, who then batches them together and submits them to Ethereum as a single transaction.
  • ZKPs: The sequencer uses ZKPs to prove to Ethereum that the transactions in the batch are valid.
  • Rollup contract: The transactions are then stored in a rollup contract on Ethereum.

The predominant limitation of the presently operational ZK-Rollups is their inability to support the broad computational abilities of the Ethereum Virtual Machine (EVM) with precision, resulting in these systems being predominantly application-specific. This characteristic undermines their compatibility with existing Layer 1 Ethereum smart contracts and decentralized applications (dApps) and complicates the task of constructing new applications that afford comparable composability and expressive capabilities.

However, there exists a category of ZK-Rollups that are congruent with Ethereum, often referred to as ZK-EVMs, that stands as the apex of Layer 2 scaling solutions. The distinctive trait of these platforms is their unwavering commitment to security and compatibility, steadfastly avoiding any compromises, thereby embodying the very essence of an ideal scaling solution.

Ethereum-Equivalent ZK-EVM

Taiko is dedicated to building a Type 1 ZK-EVM, aiming to achieve full compatibility with Ethereum by integrating a ZK-EVM that supports all EVM opcodes. The primary mission of Taiko as a type-1 ZK-EVM is to prioritize Ethereum-equivalence over the speed of ZK-proof generation. Developers can deploy their existing Ethereum dApps on Taiko without any modifications, saving developer time and attracting existing EVM developers.

What is zkEVM?  

Well, let’s just take it from the beginning. The “zk” refers to zero knowledge and “EVM” refers to the Ethereum Virtual Machine. Breaking those down further:

In cryptography (and cryptocurrencies), zero-knowledge is a cryptographic method of transaction verification in which a prover develops a proof for specific information, and a verifier validates the proof. A zero-knowledge proof (ZKP) allows someone to publicly verify that they possess specific information without revealing the specifics or details of that information. As a result, zero-knowledge cryptographic proofs provide phenomenal privacy features as well as reduce the computing and storage resources for validating a block by reducing the amount of data held in a transaction (since zero knowledge of the entire data is needed). 

The "witness" is the knowledge shared (the data) between a prover and a verifier. The prover must prove that they know the witness accurately, and the verifier must be able to assess whether the proponent has knowledge of the witness.

zk machine diagram Source

There are different types/implementations of ZKPs, with some of the most popular being zkSNARK, zk STARK, and PLONK. They each have differences “under the hood” involving the math and polynomial commitment schemes used.

Looking specifically at zkSNARKs, we can break down the name/acronym further to get a better understanding of what is actually happening.

  • Zk: “zero knowledge,” used for protecting user’s privacy
  • S: “succinct” proofs, referring to data compression, which can be verified in only a few milliseconds. This means that, rather than the Ethereum mainnet validating nodes needing to verify every transaction individually, validators will just verify a small proof to ensure the validity of the transactions. Typically, proofs have a set number of group elements (consider transactions), although the actual proof size is significantly smaller.
  • N: Non-Interactive signifies that the prover just needs to send a single message to the verifier instead of exchanging messages back and forth. Non-interactivity is necessary because the prover may generate a single proof that can be verified by anyone, anywhere, without ever requiring information sharing with the prover
  • ARK: generate off-chain trusted proofs

ZKPs can be used for various purposes: a) anonymous payment service, b) allowing access to services without revealing personal data, c) proving statements on personal data, and d) enabling trustless computing services.  

While ZKPs are used in zero-knowledge rollups like zkSyncStarknetLoopring, and others, these rollups are predominantly using the technology for the succinct proofs (the S in SNARK) and the scalability gains that come with it. So, despite being called zero-knowledge rollups, these projects aren’t actually even utilizing the zk portion of the tech. Therefore, oftentimes, they are referred to as “validity” rollups. While not technically accurate, we use the term interchangeably in this piece. 

zkEVMs: EVM Compatibility

In 2021, many of the so-called "Ethereum Killers" relied on EVM compatibility and token incentives to lure users away from the Ethereum ecosystem. However, while this strategy was successful for Layer 1 adoption, it may not be as effective for zkEVMs due to a tradeoff between Ethereum compatibility and performance. More specifically, zkEVMs that prioritize Ethereum compatibility will be less efficient due to computational inefficiencies and longer wait times for L1 finality, but they will provide out-of-the-box functionality that requires little to no contract alterations. In contrast, zkEVMs that prioritize performance will require more backend changes and may struggle with user adoption. While token grants and ecosystem funds may incentivize development and user adoption, they are not always effective in driving sustained adoption. Nonetheless, the slow but steady growth of Arbitrum and Optimism during the last year provides hope that these challenges can be overcome.

EVM compatibility is a metric used to measure the degree of similarity between the behavior of a given system and the Ethereum Virtual Machine (EVM). One framework for understanding this concept includes several levels of compatibility:

  • Language-level compatibility: Programs written in one language, such as Solidity, can be compiled or transpiled into bytecode for the target rollup and executed correctly.
  • Opcode-level compatibility: The rollup implements all EVM opcodes, but there may be some implementation differences.
  • Full EVM-equivalence: Bytecode deployed on Ethereum Layer 1 can be copied and pasted to a given Layer 2, and it runs as if it were operating on Layer 1, with no differences in behavior between the two. This category can also be broken down into two subcategories:
    • True full equivalence: the cost of running any opcode on Layer 1 is equal to the cost on Layer 2, multiplied by a constant.
    • "Full" equivalence: The Layer 1/Layer 2 gas cost per-opcode relationship varies based on the difficulty of proof.

So-called "EVM-equivalent" zkEVMs, such as Taiko, are able to verify programs that run in an environment that is exactly like the normal Ethereum. These zkEVMs are compatible with the EVM at the byte-code level, which is important because it makes the developer experience virtually indistinguishable from developing on Ethereum itself. It also allows for the re-use of familiar and battle-tested Ethereum clients like geth, and it means that the zkEVM can draft on upgrades to Ethereum itself with minimal extra work needed from the project.

zkevm vitalik diagram

The Different Levels of zkEVMs - Vitalik Buterin

On the other hand, "EVM-compatible" zkEVMs are not as rigorous when it comes to harmonizing with the EVM. These zkEVMs take smart contract code written in, say, Solidity and compile it into a format that has been optimized for ZK proofs. This approach allows for code to run more efficiently, but it throws out a lot of Ethereum's existing infrastructure. The geth client, for example, is known to have certain limitations, which is why teams like zkSync have replaced it with other software written in Rust.

 

Taiko Tech

Taiko utilizes ZK-Rollup technology to enhance transaction throughput and reduce fees. ZK-rollups employ cryptographic proofs to validate transactions, making them more secure and efficient than traditional optimistic rollups.

Taiko emphasizes security and decentralization, aiming to initiate with a fully decentralized proposer and prover set. Taiko's approach is to allow anyone to propose blocks, further planning to be leaderless and completely community-driven.

In addition to these factors, Taiko is a fully open-sourced project, with its code available on GitHub. Its use of the permissive MIT license fosters compatibility and simplicity, facilitating codebase usage and increasing opportunities for collaboration.

How do you rate this article?

43


Michael @ CryptoEQ
Michael @ CryptoEQ

I am a Co-Founder and Lead Analyst at CryptoEQ. Gain the market insights you need to grow your cryptocurrency portfolio. Our team's supportive and interactive approach helps you refine your crypto investing and trading strategies.


CryptoEQ
CryptoEQ

Gain the market insights you need to grow your cryptocurrency portfolio. Our team's supportive and interactive approach helps you refine your crypto investing and trading strategies.

Send a $0.01 microtip in crypto to the author, and earn yourself as you read!

20% to author / 80% to me.
We pay the tips from our rewards pool.