In this paper [1], the authors aimed to boost the deficient scalability of current mainstream Blockchain technology by proposing a novel parallel mining method.
They first introduced the background of Blockchain and pointed out that the data structure of classical Blockchain limits the transactions processing rate to be under a very low level, which causes the Blockchain unable to scale.
Some Proposals
Then the authors introduced a list of different approaches to solve this scalability problem that had been proposed by other researchers.
Increasing the Block Size and Decreasing the Mining Period
Increasing the Block size and decreasing the Block mining period are two most intuitive proposals that came up first. The former increases the capacity of each unit Block and the latter increases the Block generating speed. Both of them can temporarily relieve the mining congestion problem, yet the contiguously growing number of transactions will be a problem again and again. Let alone the fact that these two approaches themselves will bring new problems. For example, increasing the Block size can also make the Blockchain over-sized, which will cause higher requirements on local persistence volume for all the nodes in the network and on bandwidth of the network. As for decreasing the Block mining period, you can either decrease it too little to make any difference or decrease it too much that the stability will be affected.
Redesigning Block Data Structure and Off-Chain Transactions
Some people also proposed to redesign the Block data structure to store only most essential information of transactions so that more number of transactions can be stored in each block. This idea is also problematic because the security of the Blockchain might be damaged with some information abandoned and to maintain the security level you won’t be able to cut off much information to make any big difference. Other ideas like off-chain transactions are also considered impractical since those methods do not address the capacity of the mining network itself directly. In the end, they might still need a larger block size which is proved not ideal in the above section.
Finally, the Binary Sharding Blockchain
With parallel mining obtaining researchers’ attention, sharding technology, which originally comes from the area of database, has become the most popular approach that a number of different implementations are proposed. The fundamental idea of applying sharding to Blockchain is to divide a single Blockchain into several disjoint subchains, so that the workload on each subchain can be reduced. The authors in this paper also presented an sharding solution based on a data structure of binary Blockchain. This method does not require any modification on the Block size or Block mining period. Also, unlike some parallel mining solutions that require some preprocessed parallel chains from the beginning, this method has one main chain at first, and will dynamically split the main chain into binary subchains or merge existing subchains according to the transactions processing workload. The total computing power of the network will also be divided and arranged to each subchain according to the subchain’s splitting level. For a subchain of splitting level k, the allocated computing power would be (total computing power *(2^-k)). To maintain the same mining period and minting rate, the PoW difficulty level would be (original difficulty *(2^-k)), and the reward would be (original reward *(2^-k)). Every time a chain is split, both new blocks would inherit the hash value from the parent. Every time two chains are merged, the new block would inherit both parents’ hash value. Under this scheme, without any modification to the block size or block data structure, the overall mining capacity can be improved by 2^k times. In the case of Bitcoin, the current transactions processing rate is about 4 to 7 per second, while with Binary Blockchain, with 10 divisions, the capacity would be increased to 3,000 per second. Since this method does not require more computing power to increase the transactions processing rate, the cost per transaction would become much lower. What’s more, since this scheme would dynamically manage the splitting and merging of the subchains based on the mining congestion level, the network will be less vulnerable to DDoS attack. The authors also test this methods using simulations, and the results were very closed to the hypothesis.
Conclusion
This method has been proved by the simulations that it can resolve the mining congestion problem efficiently. However, the scalability trilemma of decentralization, security and scalability are still not avoided. Although this method can efficiently improve the scalability, it is notable that with a high splitting level, the whole Blockchain network would have to be divided into a number of disjoint pieces. A miner will not be able to manage the Blocks in other groups and the number of nodes(miners) working on each subchain is smaller than those under the classical Blockchain. As a result, the decentralization is damaged and the security level can also be threatened since now it costs less to attack a single subchain.
References:
[1] Kim, Y., & Jo, J. (2018). Dynamically adjusting the mining capacity in cryptocurrency with binary blockchain. International Journal of Networked and Distributed Computing, 6(1), 43-52.
[2] Nakamoto, S. (2009). Bitcoin: A peer-to-peer electronic cash system. https://bitcoin.org/bitcoin.pdf.