# Rollups

With the exception of Solana (which has its own challenges), most Smart Contract platforms are currently unable to handle the massive data and computational requirements that will be required for blockchain gaming, the metaverse and mass distribution of NFTs.

For instance, Ethereum can only handle around 15 transactions per second (vs. Visa’s 1,700) and the average fee for using Ethereum is \~$25 (and that’s the mean for *all* transactions – NFT transactions, which are generally much more complex, can often cost users several hundred dollars).&#x20;

The most likely solution to these problems is the use of “Layer 2” networks – secondary protocols that are built on top of existing blockchains.                &#x20;

While there are many different types of Layer 2 solutions (these are discussed in much greater detail in the article X), one flavor that is showing extraordinary promise is rollups.

Rollups temporarily remove data from the underlying blockchain, perform computations on that data and then insert the results back into the chain.  This removes a ton of congestion from the network and results in faster processing times and lower fees. &#x20;

Because rollups execute off-chain, they can’t be fully trusted – after all, how do we know that the architects of the rollup aren’t being malicious?  As such, they need a way to prove to the main network that they’re not being malicious.  There are currently two different ways of doing this:

* **zk-rollups**:  When returning data to the main chain, zk-rollups submit a cryptographically secure "validity proof" to the network, showing that all calculations are valid.  The mechanics of this proof are out of the scope of this article, but for reference it is called a “zero-knowledge proof” because it can be used to prove something is true without relaying any additional data (that’s where they get the name “zk”)
* **Optimistic rollups**:  Optimistic Rollups take the opposite approach.  Instead of submitting a proof, it is assumed that the data is correct BUT users can easily check this through a "fraud proof", which means that there is a 7-14 day waiting period that allows validators to review and reverse the transaction if they suspect fraud.&#x20;

In general, zK rollups are faster but offer less functionality, while optimistic rollups have more functionality but are also slower due to the potential of fraud challenges.&#x20;

As zK rollups mature and more functionality is added, many expect for them to become the dominant L2 solution for ETH.&#x20;

In fact, Vitalik [wrote](https://vitalik.ca/general/2021/01/05/rollup.html): “In general, my own view is that in the short term, optimistic rollups are likely to win out for general-purpose EVM computation and ZK rollups are likely to win out for simple payments, exchange and other application-specific use cases, but in the medium to long term ZK rollups will win out in all use cases as ZK-SNARK technology improves.”

Major optimistic rollup solutions include Optimism and Arbiritum and major zK- rollup projects include ZKSync, Loopring and Starkware.&#x20;

&#x20;                             **Arbitrum is the Largest Rollup Provider with 54% Market Share**

<figure><img src="/files/b9J5m6BDTZHptLN2QwOf" alt=""><figcaption><p>Source:  <a href="https://l2beat.com/">L2Beat</a> as of 5.28.22</p></figcaption></figure>

<figure><img src="/files/nOm0iqZ0pOIcWvDFl3RC" alt=""><figcaption><p>Market share figures as of 5.28.22</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.digitalnations.xyz/web3-overview/the-web3-ecosystem/nfts/nft-infrastructure/rollups.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
