A Highly Efficient and Scalability Blockchain

A Highly Efficient and Scalability Blockchain

A blockchain is a series of digital blocks that are comprised of data and built via 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.

Is a Prime Partitioned Blockchain the answer?

A newly published paper, proposed a novel method for constructing a decentralised, 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 the 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 Blockchain is a procedure that requires powerful dedicated computers. This can lead to a serious challenge, in 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 Blockchain's, 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 parallelise, 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 the 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 a 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.

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.

What is a Prime Number in Math

A Prime Number can be divided evenly only by 1, or itself, and it must be a whole number greater than 1.

Example: 5 can only be divided evenly by 1 or 5, so it is a prime number.

But 6 can be divided evenly by 1, 2, 3 and 6 so it is NOT a prime number (it is a composite number).

要查看或添加评论,请登录

社区洞察

其他会员也浏览了