What is Sharding? Sharding is the ultimate scaling solution for Ethereum and is also the step to bring Ethereum to Mass Adoption, but recently Vitalik Buterin introduced to the community Danksharding as an alternative solution to Sharding. So what is Sharding and why it was removed like that? Let’s find out together in this article.
To understand Sharding, people can refer to some of the articles below:
- What is Layer 2? Complete Guide to Layer 2 Solutions
- What is DankSharding? All About Ethereum’s DankSharding & EIP 4844
- Differences between Sharding on Near Protocol and Ethereum 2.0
What is Sharding?
Background of Sharding’s birth
Sharding on Ethereum was first proposed by Vitalik Buterin in a September 2014 article called “Ethereum Scalability Research and Development Subsidy Programs”.
However, in 2018, when Ethereum was experiencing problems with blockchain scalability and scale, they officially introduced a detailed plan for sharding in the “Sharding FAQ” article. This plan explains how Ethereum will implement sharding and the benefits of dividing the network into smaller shards.
Some parallel solutions of Sharding
Overview of Layers 2
Scaling solutions for Ethereum besides the evolution to Sharding are Layer 2 solutions such as Plasma, Validium, Rollup (including Optimismtic Rollup and zkRollup) and State Channel. Of all those solutions, over a long period of construction, Rollup solutions have surpassed them all and become the best scaling solutions on Ethereum.
The mechanism of Rollups is relatively simple such as:
- Step 1: Squencers will arrange transactions on Layer 2 into a block which is then accompanied by transaction proof created by Prover.
- Step 2: Blocks will be sent to Layer 1 in the form of Call Data.
- Step 3: Validators on Ethereum will authenticate the transaction proof and if successful, the data in the form of Call Data will be included in the Ethereum blockchain and cannot be changed.
Some outstanding Layer 2s
Up to now, there have been a number of Layer 2s in the Optimistic Rollup puzzle that are operating very effectively after more than 1 year since mainnet, Optimism & Arbitrum. Some objective reviews and comments about these two platforms are as follows:
- The number of transactions on Arbitrum & Optimism has at times surpassed that of Ethereum.
- The number of Active Users has also grown over time even though retroactivity has occurred.
- The number of deployed Smart Contracts is also growing.
- The ecosystem of Arbitrum or Optimism is also constantly expanding with all the pieces of an ecosystem such as DeFi, NFT, Gaming, NFTFi,…
All indicators show that Layer 2 is attracting users and following the vision and goals of the projects from the beginning. However, besides Arbitrum or Optimism, there are also many Optimistic Rollup platforms that have not been successful such as Boba Network or Metis DAO.
Besides the Optimistic Rollups that are taking the spotlight of the market, there is a solution that is more appreciated in the long term: zkRollup is starting to deploy mainnet or beta mainnet similar to the time of the Optimistic Rollups in Q3 – Q4/2021. . We have many different zkRollup platforms such as zkSyn, StarkNet, Linea, Scroll, Taiko,… but these projects need more time.
Why does Layer 2 still need Sharding?
In essence, in the process of movement and development, people or projects cannot wait for solutions to come from outside. Likewise, Ethereum cannot put all its trust in Layer 2. They both need a plan of their own and additional plans to prevent the other plan from failing.
Besides, Ethereum’s self-improvement, upgrades, development and changes also have a lot of impacts for Layer 2. It’s as simple as if the Ethereum network itself has faster speeds and cheaper transaction fees. Automatically, transaction speed and transaction fees on Layer 2 will also be greatly improved.
Another point is that Layer 2 solutions are still likely to fail if you look back at the early days when Layer 2 started to be built, solutions like Plasma or State Channel are highly anticipated, but up to now, Currently, these pieces are no longer suitable to become Layer 2 for Ethereum.
Overview of Sharding
Sharding on Ethereum can be understood in the following way, we will have many different Shard Chains (maximum 64 Shard Chain). These shard chains randomly assign a Validator that will produce a block from transactions that have been performed on that shard chain. That validator will propose a shard block (add the above block to the main chain – Beacon Chain) based on a randomly selected group.
Ethereum 2.0 will develop into a truly Modular Blockchain where transactions are either executed on the Shard Chain or on Layer 2 and then agreed upon, storing the transactions on the Beacon Chain.
Sharding’s operating mechanism
The operating mechanism of Sharding on Ethereum and on Shard Chains is as follows:
- Step 1: Transactions will be synthesized and arranged by Propoers (Propoers will be similar to Miners or Validators on Blockchains).
- Step 2: Notaries are responsible for validating Blocks and then putting this Block into the Shard Chain.
- Step 3: Many Blocks combine into many different Blocks into a chain (Shard Chain).
- Step 4: The Committee will validate the Shard Chain and compile it into a single Shard Block sent to the Beacon Chain along with Crosslink transaction proof.
- Step 5: That Shard Block is officially added to the Beacon Chain and cannot be reversed. Completing 1 block can take 10 seconds.
With transactions being processed simultaneously in 64 different Shard Chains, scalability on Ethereum is completely resolved. Ethereum can reach 100,000 TPS when completing the Ethereum 2.0 vision, not only that, the scalability on Ethereum will be even stronger when it can reach millions of TPS.
Disadvantages of Sharding on Ethereum
All technologies have pros & cons. Sharding on Ethereum has some disadvantages as follows:
- The operating mechanism is quite cumbersome, consuming time and energy for unnecessary steps, leading to transactions taking a long time to authenticate.
- The divided phase also makes the network more vulnerable because of the greater trade-off of decentralization.
Obviously, with such major disadvantages, Sharding needs to change to suit the actual market situation. Danksharding is born!
What is Danksharding?
Overview of Danksharding
The effects of Danksharding on Layer 2
Danksharding introduces to the market a new type of data, Blob Data, replacing Call Data from Layer 2, promising to continue reducing transaction fees for Layer 2 Rollup platforms. It can be said that after Danksharding, Layer 2 Rollups will is the most complete and powerful version. Dankshading is named after the researcher Dankrad Feist.
Unlike Call Data, which is permanently stored on Ethereum, leading to a large amount of transaction fees, Blob Data is like a blip of light attached to Blocks on Ethereum and will automatically disappear after 1 – 2 months. Because according to the development team, Call Data only needs to be proven correct at the time it is sent to the blockchain without needing to be permanently stored. That’s also the reason why Blob Data is so economical.
The effects of Danksharding on Ethereum
The first step in Danksharding’s change to Ethereum is the synchronization of the Shard Chain and Beacon Chain into a single Chain. Returning to the original problem, there will only be one Committee to resolve issues surrounding transactions. But having only one Committee poses a danger to the network, so there are two new roles: Builder and Proposer.
Besides, Danksharding also changes the way of operation between Shard Chain and Beacon Chain as follows:
- Step 1: Builder is responsible for synthesizing transactions and then sending them to Proposer.
- Step 2: In the transaction information that Builder sends to Proposer, there will only be information including Block Hash and Transaction Fee, there will be no transaction details.
- Step 3: Proposer will select transactions with the highest fees to include in the Beacon Block.
- Step 4: Beacon Block is presented to the Committee for authentication.
- Step 5: After the Beacon Block is validated, the Builder will reveal all information about the Block for the Committee to final validate because at step 4 the Committee only validates txs with information including Block Hash & Gas.
- Step 6: The Committee will post the Beacon Block on the Beacon Chain.
Disadvantages of Danksharding
Knowing all the information of the Block makes the Builder the person with the most power because they have the right to choose which transactions to send to the Proposer. Therefore, a solution proposed is that Proposers will be the ones who elect Builders. However, whether there are underlying constraints between Proposer and Builder, I think there are but it will be very difficult to eliminate.
Danksharding’s development roadmap
From February 2023, according to the Ethereum Foundation, it will take several years for us to truly see Danksharding. However, internal changes can absolutely take place when reality changes.
Summary
Sharding has been removed and we continue to see Danksharding but we will have to wait a long time, maybe until the next cycle.