Lately there’s been a lot of talk of sharding technology in crypto circles. Striving to make an advanced blockchain-based project, Truegame’s team decided to carry out a detailed review of the technology and its perspective in the world of crypto.
Earlier this year the reports showed that Ethereum blockchain could handle 12–30 transactions per second. However, this speed of transactions is still not good enough for Ethereum blockchain and any other blockchain to be considered as viable alternative for day-to-day transactions. It is way too slow compared to the traditional transactions channels like Visa or MasterCard. To address this concern, Ethereum and probably other blockchains have come up with ways to improve transaction speed and sharding is one of such methods. There’s no doubt blockchain is the most powerful technological innovation in recent years. Nothing can be more promising than the knowledge that blockchain has made decentralization and immutable record a reality. What is even more encouraging is the fact that it is being accepted outside FinTech companies.
Therefore, what is standing on the way of blockchain replacing the ordinary ways of payment is the speed of transactions. To mitigate this challenge, blockchain sharding has been adopted by Ethereum and other cryptocurrencies.
What is sharding?
Sharding is a technology where the entire state of the network is divided into sections or partitions called shards. These shards have their own piece of state and transaction history. When we talk about a state here, we mean the whole set of information that describes a system at any point in time. A state in Ethereum means a current account set containing nonces at a particular moment, smart contract code, and current balances. With every transaction, this state changes completely to another new state. In sharding, some nodes would process transactions only for a particular shard. This ensures the throughput of transactions processed in total across all shards to be higher than having a single shard do it all. Transaction in this case is an operation commanded by the user and it changes the state of the system.
It is important to note that POW consensus algorithm can’t be use together with sharding as there is no way all the participating nodes can be involved in transaction validation because the nodes have information for only one shard — the one it belongs to. Therefore, Ethereum and other blockchains that implement sharding use Proof of Stake consensus algorithm. In PoS algorithm, some specific and designated nodes have a responsibility of validating transactions. These nodes are known as ‘stakers’, because they stake their crypto tokens for transaction validation. Once the validation process has been completed, the staker may earn part or whole of the transaction fees. The number of the transactions the node gets to validate depends on the crypto token a staker takes for transaction validation purpose and also the length of time the stake takes, i.e. longer duration results in more transactions.
This whole sharding story may look like a complex chunk especially to the users. Luckily, they don’t need to understand anything as this system will exist only at the protocol layer and will not be exposed to developers. The Ethereum users will continue interacting with the state system as it is now, but the protocol will have a built-in system that creates shards, gets rid of shards that are too small, balances state across shards and many more. And everything will be done behind the scene.
It is no doubt Ethereum is therefore leading the way in embracing what will transform blockchain forever. In fact, Ethereum will adopt a supper-quadratic sharding scheme — a system created from shards of shards. This will increase scalability massively. To add on that, a super-quadratic sharding will give tremendous benefits to users; reducing transaction fee and serving more general purpose infrastructure.
Let us speak about an example of an Ethereum-based project where sharding technology can be actually implemented. Truegame is a smart contract based iGaming platform launched at the end of 2017. At Truegame participants can take part in a secure smart contract lotteries, win valuable prizes in instant ticket games, play dice, and many other smart contract games. The games collection is being updated continuously, and every month the team adds 3–5 new in-house developed games to the platform. Important to note is the fact that once the platform goes live, the games will be purely based on smart contracts and open source code.
How sharding can benefit such projects as Truegame
Transparency and independence. One of the problems Truegame seeks to solve is lack of transparency and independence in many casinos. Due to the Proof of Stake technology used in sharding, the results of each game can be verified and cannot be manipulated. Each game is based on the smart contracts, the codes of which are publicly available to the players.
Speed. One of the main purposes why sharding is taking shape in the blockchain environment is to address blockchain scalability. Sharding is a type of database partitioning that divides a large database into smaller, faster, more easily managed parts called data shards. Owing to this sharding can be effectively used at Truegame to increase the throughputs and reduce the length of time taken to complete a transaction. To drive the point further home, Truegame is a blockchain-based gaming platform and as a result, a large number of transactions has to be verified. What sharding will do in this case is improving scalability because in sharding each node has to carry only a portion of data in order to complete a transaction, thereby, drastically reducing transaction completion time.
Privacy. Truegame recognises the fact that the security of personal data is very important especially to the players in gambling. Blockchain has super measures to ensure the privacy of personal information. With the increased number of users sharding will ensure the privacy of users because data is stored in small partitions unlike in other blockchain technologies where data is stored in the whole block. At Truegame, public registry is used to store game information, not personal information.
To sum up, sharding indeed is a game changer in the blockchain technology. So far, it is proving to be an exciting and promising path for blockchain to pursue in-order overcome scalability problems without compromising decentralization and transparency. Despite the fact that sharding may seem like a super comprehensive solution, and in most cases it is, sharding is notoriously difficult to implement both at the design level and at the implementation level. This goes without saying, a lot has to be figured out before implementing sharding.