Abstract
A blockchain is a linked set of records maintained in a decentralized
environment. The records in blockchain are publicly available but cryptographically
secured. The interesting property exhibited by blockchain is that once some
information is recorded, it is infeasible to modify the information. Blockchain is
generated as a chain of blocks that contains time-stamped digital documents so that it is
infeasible to back date them or tamper the documents. These time-stamped digital
documents are stored as a collection of records and grouped as a set of blocks,
chronologically linked in order of time.
A new block is created and appended to the existing blockchain, whenever there is a
need for updating the blockchain. Every block in the blockchain comprises of a hash of
the preceding block, collections of records of its own, and the hashed value records
known as merkle tree. The information inside the blocks varies depending on the nature
of blockchain. For example, when the nature of blockchain is bitcoin, they are
supposed to store the details about a transaction viz., sender, receiver and amount of
coins where as blockchain used for medical records stores the complete health history
of a patient over time. Since blockchain is stored in a distributed way, efficient hashing
techniques are used to ensure the integrity and robustness of blockchain. This chapter
describes the nuances of blockchain technology along with the protocol stack and the
most common consensus mechanisms. Furthermore, recent advances, challenges and
future trends of blockchain are discussed.