• S

    Sumit Bera

    How Sharding Will Change Crypto World

    Ethereum Sharding
    Sharding is the separation of the network into autonomous blockchains (shards), each with its own “mini-blockchain." So all the nodes don’t have to process each transaction in real-time mode. This increases transaction processing speed and network bandwidth.

    Sharding has become one of the top topics for discussion in the Ethereum community. It is considered one of the
    key solutions to the scalability problem of this blockchain. Previously, Ethereum acted as a single database, all nodes of which stored the same copies of the blockchain and confirmed the same network transactions, then after a hard fork, the network includes separate shards, each of which processes its own transactions and smart contracts. 

    Why apply sharding?

    Sooner or later, developing applications face the problem of scaling. This happens when the current database server can no longer cope quickly and efficiently with the load and respond to application requests. Then the database is divided into parts and sends info to different shards. Also in conjunction with sharding, replication is often used. In this case, the servers (shards) receive copies of themselves. This improves system resiliency.

    Sharding technology and its application

    In Ethereum each fragment may contain data that all other shardings have. However, access to this information is possible only through the main fragment. This means that the data in each element of the system is unique. To access and use the data, it is necessary to queue a specific fragment containing the specified information.

    Technically, database sharding looks simple enough, but in practice, you need to use it extremely carefully. Because when the database is divided into parts and one request must receive data from different shards (servers), the divided data must be "collected" back correctly.

    How does sharding work on the Ethereum network?

    1. First, it will be necessary to direct 32 ETH in the Beacon Chain to become a validator in a subsidiary network.
    2. Periodically the system will check registered validators and queue those who burned ETH in the contract.
    3. Verification is required to mix all validators to exclude pseudo-randomness.
    4. Each fragment has nodes that can create a new/next shard.
    5. The new shard must meet certain requirements:
    • It should get information about the current state of the shard before receiving new transactions;
    • Signatures (2/3) of all validators must confirm the transaction (the number of signing validators is 111).

    An example of sending 10 ETH from one shard (5) to another (10).

    1. A transaction is sent to shard (5), which reduces the balance by 10 ETH and the system waits for the transaction to complete.
    2. A receipt is created for the transaction, which is not written to the network but stored in the Merkle hash tree, which can be easily verified.
    3. The transaction is sent to shard (10) and sends data to the location of this action in the Merkle tree. Shard (10) checks if this receipt has expired.
    4. Shard (10) processes the transaction and increases the balance by 10 ETH.
    5. Shard (10) publishes information about the receipt of funds in the network and these funds can be spent from shard (10).

    Where can it be scaled further?

    Next is the super-quadratic or exponential shard scheme. Super-quadratic sharding does all of the above-mentioned but in a segmented chain. If this segmented chain works as expected, then in 2022, or possibly in 2025, we will receive more than a billion transactions per day, or almost a million per second, with the current number of nodes.


    Even though sharding is a relatively new technology in the field of blockchain, the developers of several projects are already actively using or intend to use it soon. Indeed, this technology can solve key barriers to the development of the blockchain, which hinders the process of its expansion and adoption on a global scale.

    However, the final implementation of the “fragments” in the blockchain will require the fulfillment of some conditions. Firstly, for their wider implementation developers of the block and cryptographic systems must pay more attention to this area. Secondly, the so-called smooth connection between the nodes inside the "fragments" is actually not technically as simple and requires the development of a separate protocol.

    The fulfillment of these key conditions can provide a wider introduction of sharding technology. This can help the blockchain overcome current scalability issues and provide higher bandwidth.