{"id":10535,"date":"2023-02-07T09:19:26","date_gmt":"2023-02-07T09:19:26","guid":{"rendered":"https:\/\/www.bitnovo.com\/blog\/?p=10535"},"modified":"2025-09-10T15:22:58","modified_gmt":"2025-09-10T15:22:58","slug":"what-are-rollups-ethereums-scalability-solution","status":"publish","type":"post","link":"https:\/\/www.bitnovo.com\/blog\/en\/what-are-rollups-ethereums-scalability-solution","title":{"rendered":"What are Rollups? Ethereum\u2019s scalability solution"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Alternar tabla de contenidos\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #ffffff;color:#ffffff\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #ffffff;color:#ffffff\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-are-rollups-ethereums-scalability-solution\/#what_are_rollups_understand_how_they_work\" >What are Rollups? Understand how they work<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-are-rollups-ethereums-scalability-solution\/#optimistic_rollups\" >Optimistic Rollups<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-are-rollups-ethereums-scalability-solution\/#zero_knowledge_rollups\" >Zero Knowledge Rollups<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-are-rollups-ethereums-scalability-solution\/#advantages_and_disadvantages\" >Advantages and disadvantages<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-are-rollups-ethereums-scalability-solution\/#what_the_future_holds\" >What the future holds<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 4<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span><p>From the very first<strong>\u00a0beginnings of cryptocurrencies<\/strong>, with Bitcoin, one question resonated in the discussions of skeptics, and also of the passionate: \u201cHow are we going to\u00a0<strong>scale the blockchain?\u201d<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>As the blockchain consists of a\u00a0<strong>distributed registry of transactions<\/strong>, it cannot allow\u00a0<strong>many transactions<\/strong>\u00a0or it will end up<strong>\u00a0centralized<\/strong>\u00a0(few could maintain the registry due to its high cost). The possibility of not depending on third parties (<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-a-node-its-importance-in-cryptocurrencies\/\">running a node<\/a>) is diminished if the blockchain grows too much. As a curious fact, the first of all the criticisms that Bitcoin received (in 2008) was for scalability!<\/p>\n<p>&nbsp;<\/p>\n<p>After many years we have reached an\u00a0<strong>advanced point<\/strong>\u00a0in scalability research. In this scenario we can distinguish<strong>\u00a03 major solutions<\/strong>\u00a0(called\u00a0<strong>second layer<\/strong>) with their own tradeoffs.\u00a0<strong>These are paid channel networks<\/strong>\u00a0(such as\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-the-lightning-network\/\">Lightning Network<\/a>),<strong>\u00a0Plasma<\/strong>\u00a0(such as\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-polygon-the-eth-scalability-solution\/\">Polygon<\/a>) and\u00a0<strong>Rollups<\/strong>.<\/p>\n<p>&nbsp;<\/p>\n<p>In this article we will discuss Rollups, scalability solutions for<strong>\u00a0smart contract platforms<\/strong>, such as<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-ethereum-eth-and-how-does-it-work\/\">\u00a0Ethereum<\/a>, which are extremely promising.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h2><span class=\"ez-toc-section\" id=\"what_are_rollups_understand_how_they_work\"><\/span><strong>What are Rollups? Understand how they work<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>Rollups are\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-a-smart-contract\/\">smart contracts<\/a>\u00a0that hold a certain\u00a0<strong>state in a compressed<\/strong>\u00a0form. For example, the status can be that John has 3 ETH and Albert has 5 ETH. When Rollup users make transactions,\u00a0<strong>these transactions are grouped in batches<\/strong>\u00a0and processed by\u00a0<strong>changing the state<\/strong>. If John makes a transfer of 1 ETH to Albert, the new status will be: John, 2 ETH and Albert, 6 ETH.<\/p>\n<p>&nbsp;<\/p>\n<p>As with all second-layer solutions, what we are looking to do is to\u00a0<strong>perform transactions off-chain<\/strong>, outside the blockchain. This is done to achieve much\u00a0<strong>higher transaction throughput<\/strong>\u00a0(we are not as constrained by the blockchain) and\u00a0<strong>reduce fees.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>Therefore,<strong>\u00a0the state of the rollup is computed<\/strong>, not by the miners and nodes of the blockchain, but by other users\u00a0<strong>off-chain<\/strong>. In other words, the computation (transactions and smart contract executions) is done off-chain, and only a\u00a0<strong>summary of the current state and batches of compressed transactions remain on the blockchain.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>And here is the crux of the matter. How can the blockchain\u00a0<strong>verify<\/strong>\u00a0that, if John takes money out of the Rollup, he will take out his current balance? Note that it cannot compute that balance to verify it (the computation is off-chain).<\/p>\n<p>It turns out that we have two ways of doing this, which differentiate the 2 types of Rollups:\u00a0<strong>Optimistic Rollups and ZK-Rollups.<\/strong><\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div id=\"image_772244190\" class=\"img has-hover x md-x lg-x y md-y lg-y\">\n<div class=\"img-inner dark\"><img fetchpriority=\"high\" decoding=\"async\" class=\"attachment-large size-large lazyloaded\" src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups2.jpg\" sizes=\"(max-width: 768px) 100vw, 768px\" srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups2.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups2-300x205.jpg 300w\" alt=\"Qu\u00e9 son las Rolllups\" width=\"768\" height=\"526\" data-srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups2.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups2-300x205.jpg 300w\" data-src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups2.jpg\" data-sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/div>\n<\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h3><span class=\"ez-toc-section\" id=\"optimistic_rollups\"><\/span><strong>Optimistic Rollups<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>In Optimistic Rollups,<strong>\u00a0Rollup processors<\/strong>\u00a0<strong>put their money in play<\/strong>, and withdrawing funds from a Rollup<strong>\u00a0takes one week.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>If John has agreed with the Rollup processor and tries to withdraw 3 ETH (instead of 2, which he would have according to our example) he will have to wait for a week. This time is enough for another honest processor, from the same Rollup, to identify the cheating transaction and earn all the money from the attacking processor (who agreed with John, or who could be John himself).<\/p>\n<p>&nbsp;<\/p>\n<p>This model is called \u201coptimistic\u201d because<strong>\u00a0you need<\/strong>\u00a0at least one<strong>\u00a0honest processor online<\/strong>\u00a0(who has calculated the current state and can identify cheating transactions).\u00a0<strong>Honesty is rewarded by earning money, and dishonesty is punished by losing it.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>In short, this means, \u201cThe blockchain trusts Rollup by default, but if someone proves otherwise that state is reversed.\u201d<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h3><span class=\"ez-toc-section\" id=\"zero_knowledge_rollups\"><\/span><strong>Zero Knowledge Rollups<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>Zero Knowledge Rollups (ZK-Rollups)\u00a0<strong>do not require prior incentives<\/strong>. Their operation is based on a\u00a0<strong>cryptographic technology called ZK-SNARKS<\/strong>. This very complex mathematical technique allows to\u00a0<strong>prove cryptographically that a computation has been carried out.<\/strong><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p>Moreover,\u00a0<strong>the cost of verifying the proof is very low<\/strong>. This layman block fits perfectly with our purpose, to perform\u00a0<strong>off-chain computation<\/strong>\u00a0that can be\u00a0<strong>verified on-chain<\/strong>\u00a0(on the blockchain).<\/p>\n<p>&nbsp;<\/p>\n<p>Unlike Optimistic Rollups,\u00a0<strong>every batch of transactions<\/strong>\u00a0(and status therefore) i<strong>s verified by the blockchain<\/strong>\u00a0thanks to mathematical proof (rather than only those that are challenged by honest processors).<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div id=\"image_1677220840\" class=\"img has-hover x md-x lg-x y md-y lg-y\">\n<div class=\"img-inner dark\"><img decoding=\"async\" class=\"attachment-large size-large lazyloaded\" src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups.jpg\" sizes=\"(max-width: 768px) 100vw, 768px\" srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups-300x205.jpg 300w\" alt=\"Qu\u00e9 son las Rolllups\" width=\"768\" height=\"526\" data-srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups-300x205.jpg 300w\" data-src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/08\/Que-son-las-Rollups.jpg\" data-sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/div>\n<\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h2><span class=\"ez-toc-section\" id=\"advantages_and_disadvantages\"><\/span><b>Advantages and disadvantages<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>Each model has its own advantages and disadvantages. In\u00a0<strong>Optimistic Rollups<\/strong>\u00a0you can publish\u00a0<strong>batches of transactions faster<\/strong>\u00a0because the blockchain trusts it by default.\u00a0<strong><a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-gas-in-ethereum\/\">Gas<\/a>\u00a0costs are lower<\/strong>\u00a0because, in most cases, the blockchain does not verify a cryptographic proof.<\/p>\n<p>&nbsp;<\/p>\n<p>Add to that that their<strong>\u00a0technology is simpler<\/strong>, it is much easier to implement a\u00a0<strong>general purpose<\/strong>\u00a0Optimistic Rollup (which implements the entire\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-the-ethereum-virtual-machine\/\">EVM<\/a>) and\u00a0<strong>off-chain computing is less expensive<\/strong>\u00a0because you don\u2019t have to create a cryptographic proof.<\/p>\n<p>&nbsp;<\/p>\n<p>On the downside,\u00a0<strong>more on-chain information<\/strong>\u00a0has to be recorded for each Rollup transaction (although it is still very small compared to an on-chain transaction) and\u00a0<strong>withdrawals take a week.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>On the\u00a0<strong>Zk-Rollups<\/strong>\u00a0side we have\u00a0<strong>instant funds withdrawals<\/strong>, although they are\u00a0<strong>not currently in general use<\/strong>\u00a0(they do not implement the entire EVM) due to the prematurity of the technology.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h3><span class=\"ez-toc-section\" id=\"what_the_future_holds\"><\/span>What the future holds<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>However, although Optimist Rollups seem better,\u00a0<strong>many developers<\/strong>, such as\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/who-is-vitalik-buterin\/\">Vitalik<\/a>\u00a0himself, believe that\u00a0<strong>ZK-Rollups<\/strong>, once developed,\u00a0<strong>will be superior.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>These will allow<strong>\u00a0instant withdrawals<\/strong>, will be\u00a0<strong>general purpose, will not rely on honest processors and will be more efficient in terms of on-chain<\/strong>\u00a0<strong>information.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><strong>The fundamental problem<\/strong>\u00a0with rollups is that they\u00a0<strong>require leaving information on-chain<\/strong>\u00a0(between 10 and 15 bytes per transaction). This means that rollups cannot scale infinitely as the blockchain acts as a<strong>\u00a0bottleneck.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>However,\u00a0<strong>Ethereum<\/strong>\u00a0is on its way to<strong>\u00a0sharding<\/strong>\u00a0with Ethereum 2.0 (despite its risks and disadvantages of being layer one scalability). By scaling the layer one or blockchain in this way, it will be able to greatly improve its performance with rollups reaching tens of thousands of transactions per second.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Bitcoin<\/strong>\u00a0will probably also implement the<strong>\u00a0ZK-SNARKS technology when it has matured<\/strong>, perhaps 5 to 10 years. In this case Bitcoin will scale only at layer two to remain, in keeping with its philosophy, as decentralized as possible.<\/p>\n<p>&nbsp;<\/p>\n<p>Rollups, especially Zero Knowledge, are likely to mark a<strong>\u00a0new chapter in the scalability of blockchains.<\/strong>\u00a0Although we are years away from the blockchain\u2019s peak, its development is being much\u00a0<strong>more accelerated than that of the Internet<\/strong>\u00a0and we have already come up with the\u00a0<strong>solutions needed<\/strong>\u00a0to scale its use. Satoshi would be proud!<\/p>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 4<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>From the very first\u00a0beginnings of cryptocurrencies, with Bitcoin, one question resonated in the discussions of skeptics, and also of the passionate: \u201cHow are we going to\u00a0scale the blockchain?\u201d &nbsp; As the blockchain consists of a\u00a0distributed registry of transactions, it cannot allow\u00a0many transactions\u00a0or it will end up\u00a0centralized\u00a0(few could maintain the registry due to its high cost). [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":15033,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[185],"tags":[],"class_list":["post-10535","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blockchain-en"],"_links":{"self":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10535","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/comments?post=10535"}],"version-history":[{"count":2,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10535\/revisions"}],"predecessor-version":[{"id":24647,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10535\/revisions\/24647"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media\/15033"}],"wp:attachment":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media?parent=10535"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/categories?post=10535"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/tags?post=10535"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}