A blockchain is a series of digital blocks that are comprised of data and built via means of a network of collaborating nodes. A blockchain is created using a protocol that is formulated to make sure that the data included therein is publicly visible to anyone, and once written, it can never be modified.
A newly published paper proposed a novel method for constructing a decentralized, computationally efficient and highly scalable blockchain. The main focus is to design a network that has the capability of efficiently scaling any number of nodes and adding blocks at an extremely high rate, while still promoting speedy verification of the data stored on the blockchain. The proposed method varies from other proposed methods for improving bitcoin’s scalability including creation of off-chain payment channels and using sub-chains.
To create an operating large blockchain, an enormous amount of computing power is needed. Given the present implementations, the computational burden allocated to nodes keeps steadily increasing with the growth of the blockchain. This places a practical limit on the blockchain’s size and on the rate at which newer blocks can be added. Presently, adding new blocks to bitcoin’s blockahin is a procedure that requires powerful dedicated computers. This can lead to a serious challenge, on the long term, when it comes to the network’s openness and the possibility of keeping it functioning. The paper we’re reviewing, proposed a new approach to improve scalability while reducing the computational cost required for operation of a blockchain.
Blocks numbering scheme:
Presently, the major part of the computational power required for operating bitcoin’s blockchain, and other similar blockchains, is consumed in the so-called proof-of-work (PoW) scheme. The PoW scheme guarantees that adversary nodes can’t rewrite the blockchain and so fraudulently regain ownership of funds which they have already spent, yet it does that at the cost of consumption of a large amount of computational power. Other schemes, such as the proof-of-stake (PoS) scheme, are currently developed to provide less energy consuming means for promoting the integrity of the blockchain.
A more essential problem is that the blocks have to be added to the blockchain sequentially. In other words, the procedure of building the blockchain can’t be literally parallelized, which puts a ceiling to the rate at which new blocks are added to the blockchain, which is directly proportional to the computational power and network bandwidth provided by the network’s nodes. This problem cannot be simply mitigated by allowing the blockchain to grow indefinitely, due to the fact that the computing power consumed by a node to build a new block would rise as well.
The solution presented by the author of the paper is to allow addition of new blocks out of sequence, via reservation of every block number to a specific unique code, which would ensure that no two nodes can attempt writing the same block i.e. bearing the same id number. In other words, the blockchain can be written in an actually parallel manner, via an unlimited number of nodes that add blocks simultaneously. The following rules govern the reservation of block numbers:
1. Each node is identified via means of a prime number.
2. Every integer n ≥ 2 is reserved to a node s(n) where s(n) refers to the smallest possible prime divisor of n. Block n can only be created by the node to which the integer n is reserved.
3. Node 2 is the first node on the whole network. To join the network, every other node has to request a prime number id; any given node can respond to the request through assigning it to the n-th prime, as n represents the prime number reserved for that particular node.
The below table illustrates a few sequences of the prime numbers created via this scheme. To calculate which node has the right to create a particular block, the block id has to be decomposed into its prime factors, which requires a small amount of computational power provided that the block numbers are don’t grow to too large number.
Verification of blocks:
The previously described scheme prevents a block from being created by more than one node. If each block is cryptographically signed by the node that created it, this ensures that an adversary node can never manipulate blocks written by other nodes, unless it can phish its private keys to impersonate it, yet it can manipulate blocks it created by itself.
To avoid this, there should be a procedure to validate that the content of a block is the same as what has been originally written. Practically speaking, there are two cases that can lead to different procedures:
1. Validate a block that was created before another block that has been successfully verified.
2. Validate a block that was created after all of the known valid blocks.
The post A Prime Partitioned Blockchain – A Highly Efficient and Scalable Blockchain appeared first on Deep Dot Web.