Friday, October 5, 2018

Sharding in the Blockchain

Sharding in the Blockchain


Sharding is a relatively new concept in the Blockchain.

Sharding: a solution to the scalability, latency and transaction throughput issues. 
Sharding is a concept that's widely used in databases, to make them more efficient. 

In case of the blockchain, each node will have only a part of the data on the blockchain, and not the entire information, when sharding is implemented.

A blockchain (https://en.wikipedia.org/wiki/Blockchain), originally block chain, is a growing list of records, called blocks, which are linked using cryptography.
Each block contains a cryptographic hash of the previous block, a timestamp, and transaction data (generally represented as a merkle tree root hash).

In cryptography and computer science, a hash tree or Merkle tree is a tree in which every leaf node is labelled with the hash of a data block, and every non-leaf node is labelled with the cryptographic hash of the labels of its child nodes.

By design, a blockchain is resistant to modification of the data. It is "an open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way". For use as a distributed ledger, a blockchain is typically managed by a peer-to-peer network collectively adhering to a protocol for inter-node communication and validating new blocks. Once recorded, the data in any given block cannot be altered retroactively without alteration of all subsequent blocks, which requires consensus of the network majority. 

See more about implementations of blockchain in Java:

No comments: