0% found this document useful (0 votes)
16 views44 pages

Unit - 1 Block Chain

Blockchain is a decentralized, immutable ledger that securely records transactions in a chronological manner. It was first conceptualized in 1991 and has evolved to include features like smart contracts and various consensus protocols, such as Proof of Work and Proof of Stake. The technology has applications across multiple industries, providing transparency, security, and efficiency in processes like cryptocurrency transactions and supply chain management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views44 pages

Unit - 1 Block Chain

Blockchain is a decentralized, immutable ledger that securely records transactions in a chronological manner. It was first conceptualized in 1991 and has evolved to include features like smart contracts and various consensus protocols, such as Proof of Work and Proof of Stake. The technology has applications across multiple industries, providing transparency, security, and efficiency in processes like cryptocurrency transactions and supply chain management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 44

What is Blockchain

A blockchain is a constantly growing ledger which keeps a permanent record of all


the transactions that have taken place in a secure, chronological, and immutable
way.
A blockchain is a chain of blocks which contain information. Each block records
all of the recent transactions, and once completed goes into the blockchain as a
permanent database. Each time a block gets completed, a new block is generated.

History of Blockchain

The blockchain technology was described in 1991 by the research scientist Stuart
Haber and W. Scott Stornetta. They wanted to introduce a computationally
practical solution for time-stamping digital documents so that they could not be
backdated or tampered. They develop a system using the concept
of cryptographically secured chain of blocks to store the time-stamped
documents.

In 1992, Merkle Trees were incorporated into the design, which


makes blockchain more efficient by allowing several documents to be collected
into one block. Merkle Trees are used to create a 'secured chain of blocks.' It
stored a series of data records, and each data records connected to the one before it.
The newest record in this chain contains the history of the entire chain. However,
this technology went unused, and the patent lapsed in 2004.

Blockchain Distributed ledger

A distributed ledger is a type of database that is consensually shared, replicated,


and synchronized among the members of a decentralized network. All the
information on this ledger is securely and accurately stored using cryptography.
This information can be accessed by using keys and cryptographic signatures. The
distributed ledger allows transactions to have public witnesses, which makes
cyberattack more difficult. It records the transactions such as the exchange of
assets or data, among the participants in the network.

All the participants in the network govern and agreed-upon consensus on the
updates to the records in the ledger. There is no central authority, or third-party
mediators such as a financial institution or government agencies are involved.
Every record in the distributed ledger has a timestamp and unique cryptographic
signature. It makes the ledger an auditable, and immutable history of all
transactions in the network.

Further, if any alterations made to the ledger, they are reflected and copied to all
participants in seconds or minutes. In other words, when any modifications or
updates happen in the ledger, each node constructs the new transaction, and then
the nodes vote by consensus algorithm on which copy is correct. Once a
consensus algorithm has been determined, all the other nodes update themselves
with the new and correct copy of the ledger.

The primary advantage of the distributed ledger is the lack of central authority. As
we know that centralized ledgers are prone to cyber-attack, distributed ledgers are
inherently very hard to attack. It is because all the distributed copies need to be
attacked simultaneously for an attack to be successful.

Features of Blockchain
Last Updated : 14 Mar, 2023


Here In this article, we will discuss the features of blockchain technology and how
they make it a revolutionary and highly desirable platform for various applications.
A blockchain is a chain of blocks that contains information. Most people think that
Blockchain is Bitcoin and vice-versa. But it’s not the case. In fact, Bitcoin is a
digital currency or cryptocurrency that works on Blockchain Technology.
Blockchain was invented by Satoshi Nakamoto. As the name suggests, Each block
consists of a number of transactions, and each transaction is recorded in the form
of a Hash. Hash is a unique address assigned to each block during its creation and
any further modification in the block will lead to a change in its hash.
Features of Blockchain
Let’s have a look at the primary features of the blockchain technology:

1. Immutable

Immutability means that the blockchain is a permanent and unalterable network.


Blockchain technology functions through a collection of nodes. Once a transaction
is recorded on the blockchain, it cannot be modified or deleted. This makes the
blockchain an immutable and tamper-proof ledger that provides a high degree of
security and trust.
 Every node in the network has a copy of the digital ledger. To add a transaction
every node checks the validity of the transaction and if the majority of the
nodes think that it is a valid transaction then it is added to the network. This
means that without the approval of a majority of nodes no one can add any
transaction blocks to the ledger.
 Any validated records are irreversible and cannot be changed. This means that
any user on the network won’t be able to edit, change or delete it.
2. Distributed

All network participants have a copy of the ledger for complete transparency. A
public ledger will provide complete information about all the participants on the
network and transactions. The distributed computational power across the
computers ensures a better outcome.
Distributed ledger is one of the important features of blockchains due to many
reasons like:
 In distributed ledger tracking what’s happening in the ledger is easy as changes
propagate really fast in a distributed ledger.
 Every node on the blockchain network must maintain the ledger and participate
in the validation.
 Any change in the ledger will be updated in seconds or minutes and due to no
involvement of intermediaries in the blockchain, the validation for the change
will be done quickly.
 If a user wants to add a new block then other participating nodes have to verify
the transaction. For a new block to be added to the blockchain network it must
be approved by a majority of the nodes on the network.
 In a blockchain network, no node will get any sort of special treatment or favors
from the network. Everyone will have to follow the standard procedure to add a
new block to the network.
3. Decentralized
Blockchain technology is a decentralized system, which means that there is no
central authority controlling the network. Instead, the network is made up of a
large number of nodes that work together to verify and validate transactions. Each
and every node in the blockchain network will have the same copy of the ledger.
Decentralization property offers many advantages in the blockchain network:
 As a blockchain network does not depend on human calculations it is fully
organized and fault-tolerant.
 The blockchain network is less prone to failure due to the decentralized nature
of the network. Attacking the system is more expensive for the hackers hence it
is less likely to fail.
 There is no third-party involved hence no added risk in the system.
 The decentralized nature of blockchain facilitates creating a transparent profile
for every participant on the network. Thus, every change is traceable, and more
concreate.
 Users now have control over their properties and they don’t have to rely on
third-party to maintain and manage their assets.
4. Secure

All the records in the blockchain are individually encrypted. Using encryption adds
another layer of security to the entire process on the blockchain network. Since
there is no central authority, it does not mean that one can simply add, update or
delete data on the network.
Every information on the blockchain is hashed cryptographically which means that
every piece of data has a unique identity on the network. All the blocks contain a
unique hash of their own and the hash of the previous block. Due to this property,
the blocks are cryptographically linked with each other. Any attempt to modify the
data means to change all the hash IDs which is quite impossible.

5. Consensus

Every blockchain has a consensus to help the network to make quick and unbiased
decisions. Consensus is a decision-making algorithm for the group of nodes active
on the network to reach an agreement quickly and faster and for the smooth
functioning of the system. Nodes might not trust each other but they can trust the
algorithm that runs at the core of the network to make decisions. There are many
consensus algorithms available each with its pros and cons. Every blockchain must
have a consensus algorithm otherwise it will lose its value.
6. Unanimous
All the network participants agree to the validity of the records before they can be
added to the network. When a node wants to add a block to the network then it
must get majority voting otherwise the block cannot be added to the network. A
node cannot simply add, update, or delete information from the network. Every
record is updated simultaneously and the updations propagate quickly in the
network. So it is not possible to make any change without consent from the
majority of nodes in the network.

7. Faster Settlement

Traditional banking systems are prone to many reasons for fallout like taking days
to process a transaction after finalizing all settlements, which can be corrupted
easily. On the other hand, blockchain offers a faster settlement compared to
traditional banking systems. This blockchain feature helps make life easier.
Blockchain technology is increasing and improving day by day and has a really
bright future in the upcoming years. The transparency, trust, and temper proof
characteristics have led to many applications of it like bitcoin, Ethereum, etc. It is a
pillar in making the business and governmental procedures more secure, efficient,
and effective.

More Features of Blockchain

Smart Contracts – Blockchain technology enables the creation and execution of


smart contracts, which are self-executing contracts that automatically execute
when certain conditions are met. Smart contracts have the potential to
revolutionize various industries by providing a secure and transparent way to
execute contracts.
Transparency – The blockchain ledger is public and transparent, which means
that anyone can access and view the transactions on the network. This makes it a
highly transparent system that is resistant to fraud and corruption.
Applications of Blockchain – Blockchain technology has a wide range of
applications across various industries. Some of the most well-known applications
include cryptocurrency, supply chain management, identity verification, and voting
systems. However, blockchain technology has the potential to revolutionize many
other industries as well, such as healthcare, real estate, and finance.
Conclusion: In conclusion, blockchain technology is a revolutionary technology
that has the potential to transform various industries. Its decentralized, secure,
transparent, and immutable nature make it a highly desirable platform for various
applications. As the technology continues to evolve and mature, we can expect to
see more innovative use cases for blockchain technology in the future

REQUIREMENTS FOR CONSENSUS PROTOCOLS


Blockchain technology is a decentralized and transparent network in which no
corporate body or government controls or validates transactions. Blockchain
technology is a digital ledger that records every transaction that occurs on the
network; these transactions are highly secure and immutable in the sense that
hackers cannot manipulate any information, and all transaction activity on the
blockchain network is made available to everyone.
Because the blockchain network is autonomous and decentralized, automated
protocols are required to ensure that participating nodes agree on only valid
transactions. These protocols are put in place to prevent malicious activities such
as “double spending” attacks in order to provide a functional service on the
blockchain network.

These protocols are nothing more than algorithms that control all activity on a
blockchain network. In this article, we will discuss the various consensus protocols
used the blockchain network, including the advantages and disadvantages these
protocols, and in which situations they are most useful. We will be looking at the
following consensus protocols:

o Proof of Work (PoW)


o Proof of Stake (PoS)
o Delegated Proof of Stake (DPoS)
o Transaction as Proof of Stake (TaPoS)
o Delegated Byzantine Fault Tolerance (dBFT)
o Casper
o Proof of Importance (PoI)
o Proof of Elapsed Time (PoET)
o Proof of Burn (PoBr)

Proof of Work (PoW)

The first consensus protocol used in the blockchain network was Proof of Work
(PoW). Cynthia Dwork and Moni Naor introduced it in 1993, and Satoshi
Nakamoto, the creator of the Bitcoin network, reintroduced it in 2008.

PoW is a time and energy-consuming protocol in which validators continuously


run data from the block header through a cryptographic hash function. A linear
structure is used to represent the blocks, with each block being a collection of
transactions.

PoW employs a special type of computer (ASICs) to solve its complex


cryptographic problems, which necessitates a large amount of computing power.
Miners work to solve these complex problems, and the first person to solve a
problem is rewarded with Bitcoin.

Using the public and private keys assigned to each user, each transaction is
validated and signed.

The PoW consensus is best used by a developer who wants to create applications
that require security or node management identity, where users will need to be
identified, authorized, or authenticated before accessing services or systems.
Bitcoin, one of the largest blockchain networks, adopted this protocol.

Advantages of PoW
One of the advantages of PoW is that it is highly scalable, meaning it is good for
variety of applications like cryptocurrency mining, validation transaction, or
mining new tokens.
Disadvantages of PoW
A disadvantage of the PoW is the probability of a “51% attack”. This is the point at
which a single attacker gains control of more than half of the network’s computing
power, rendering decentralization ineffective.

Proof of Stake (PoS)

Unlike PoW, which validates blocks using a cryptographic hash function, PoS
validates blocks based on the stake of the validators (miners), where validators will
stake a portion of their cryptocurrency.

These validators are chosen at random by PoS based on the amount allocated. The
higher a validator’s stakes, the more likely they are to be chosen.

Ethereum, one of the largest blockchain networks, adopted the PoS protocol to
improve network scalability and reduce electricity consumption.

PoS can be used to improve security, validate transactions, and increase


performance. Some of the cryptocurrencies that use the PoS protocol are Steem,
Tezos, and Gridcoin
Advantages of PoS
Unlike the PoW consensus protocol, PoS protocol does not need any special kind
of computer or complex cryptographic problem to solve.
Also, PoS is more energy efficient than PoW, which requires miners to use a high
level of electricity to complete their tasks.

Disadvantages of PoS
A disadvantage of PoS is that an attacker can revert the victim’s transactions and
bribe the miners to confirm them.

Secondly, PoS benefits the wealthy. Mining power in Proof of Stake is determined
by the number of coins staked by a validator. Participants who stake more coins
have a better chance of being chosen to add new blocks.

ZERO KNOWEDGE PROOF:

Zero Knowing Proof is an excellent method for safeguarding private information in


the Blockchain system. This strategy allows a person to demonstrate to other
people that a particular assertion is true without revealing any extra information. In
an exchange, the prover must demonstrate to the verifier whether a certain value
(also referred to to both the provide and the verifier) is accurate and reliable, while
eliminating any extraneous information.
o It's like proving to somebody that you know the secret without actually
telling them the secret.

Byzantine model:

In 1982, The Byzantine General’s Problem was invented by Leslie Lamport,


Robert Shostak, and Marshall Pease. Byzantine Generals Problem is an
impossibility result which means that the solution to this problem has not been
found yet as well as helps us to understand the importance of blockchain. It is
basically a game theory problem that provides a description of the extent to
which decentralized parties experience difficulties in reaching consensus without
any trusted central parties.
 The Byzantine army is divided into many battalions in this classic problem
called the Byzantine General’s problem, with each division led by a general.
 The generals connect via messenger in order to agree to a joint plan of action
in which all battalions coordinate and attack from all sides in order to achieve
success.
 It is probable that traitors will try to sabotage their plan by intercepting or
changing the messages.
 As a result, the purpose of this challenge is for all of the faithful commanders
to reach an agreement without the imposters tampering with their plans.

How Bitcoin Solves the Byzantine General’s Problem?

In the Byzantine Generals Problem, the untampered agreement that all the loyal
generals need to agree to is the blockchain. Blockchain is a public, distributed
ledger that contains the records of all transactions. If all users of the Bitcoin
network, known as nodes, could agree on which transactions occurred and in
what order, they could verify the ownership and create a functioning, trustless
money system without the need for a centralized authority. Due to its
decentralized nature, blockchain relies heavily on a consensus technique to
validate transactions. It is a peer-to-peer network that offers its users transparency
as well as trust. Its distributed ledger is what sets it apart from other systems.
Blockchain technology can be applied to any system that requires proper
verification.
Proof Of Work: The network would have to be provable, counterfeit-resistant,
and trust-free in order to solve the Byzantine General’s Problem. Bitcoin
overcame the Byzantine General’s Problem by employing a Proof-of-Work
technique to create a clear, objective regulation for the blockchain. Proof of work
(PoW) is a method of adding fresh blocks of transactions to the blockchain of a
cryptocurrency. In this scenario, the task consists of creating a hash (a long string
of characters) that matches the desired hash for the current block.
1. Counterfeit Resistant: Proof-of-Work requires network participants to
present proof of their work in the form of a valid hash in order for their block,
i.e. piece of information, to be regarded as valid. Proof-of-Work requires
miners to expend significant amounts of energy and money in order to
generate blocks, encouraging them to broadcast accurate information and so
protecting the network. Proof-of-Work is one of the only ways for a
decentralized network to agree on a single source of truth, which is essential
for a monetary system. There can be no disagreement or tampering with the
information on the blockchain network because the rules are objective. The
ruleset defining which transactions are valid and which are invalid, as well as
the system for choosing who can mint new bitcoin, are both objectives.
2. Provable: Once a block is uploaded to the blockchain, it is incredibly difficult
to erase, rendering Bitcoin’s history immutable. As a result, participants of the
blockchain network may always agree on the state of the blockchain and all
transactions inside it. Each node independently verifies whether blocks satisfy
the Proof-of-Work criterion and whether transactions satisfy additional
requirements.
3. Trust-free: If any network member attempts to broadcast misleading
information, all network nodes immediately detect it as objectively invalid and
ignore it. Because each node on the Bitcoin network can verify every
information on the network, there is no need to trust other network members,
making Bitcoin a trustless system.

Byzantine Fault Tolerance (BFT)

The Byzantine Fault Tolerance was developed as inspiration in order to address


the Byzantine General’s Problem. The Byzantine General’s Problem, a logical
thought experiment where multiple generals must attack a city, is where the idea
for BFT originated.
 Byzantine Fault Tolerance is one of the core characteristics of developing
trustworthy blockchain rules or features is tolerance.
 When two-thirds of the network can agree or reach a consensus and the system
still continues to operate properly, it is said to have BFT.
 Blockchain networks’ most popular consensus protocols, such as proof-of-
work, proof-of-stake, and proof-of-authority, all have some BFT
characteristics.
 In order to create a decentralized network, the BFT is essential.
The consensus method determines the precise network structure. For instance,
BFT has a leader as well as peers who can and cannot validate.
In order to maintain the sequence of the Blockchain SC transactions and the
consistency of the global state through local transaction replay, consensus
messages must pass between the relevant peers.
More inventive approaches to designing BFT systems will be found and put into
practice as more individuals and companies investigate distributed and
decentralized systems. Systems that use BFT are also employed in sectors outside
of blockchains, such as nuclear power, space exploration, and aviation.
Byzantine General’s Problem in a Distributed System

In order to address this issue, honest nodes (such as computers or other physical
devices) must be able to establish an agreement in the presence of dishonest
nodes.
 In the Byzantine agreement issue, an arbitrary processor initializes a single
value that must be agreed upon, and all nonfaulty processes must agree on that
value. Every processor has its own beginning value in the consensus issue, and
all nonfaulty processors must agree on a single common value.
 The Byzantine army’s position can be seen in computer networks.
 The divisions can be viewed as computer nodes in the network, and the
commanders as programs running a ledger that records transactions and events
in the order that they occur. The ledgers are the same for all systems, and if
any of them is changed, the other ledgers are updated as well if the changes
are shown to be true, so all distributed ledgers should be in agreement.

Hashing:

Block chains the backbone Technology of Digital CryptoCurrency BitCoin. The


blockchain is a distributed database of records of all transactions or digital events
that have been executed and shared among participating parties. Each transaction
is verified by the majority of participants of the system. It contains every single
record of each transaction. In order to understand how blockchain works, it’s very
important to understand in detail the concept of Hashing.
There are three main parts of any blockchain network:
 Node/ Block: It is the main building block of any blockchain. It acts as a
database to store the information related to all transactions. The size, period,
and triggering event for blocks are different for every blockchain. Each block
or node contains a complete record of all the transactions that were ever
recorded in that blockchain.
 Network: The network is composed of “full nodes”. Think of them as the
computer running an algorithm that is securing the network.
 Hash: It acts as a chain that links one block to another, mathematically one
can say that it’s “chaining” all blocks together. This is one of the most
difficult concepts in blockchain to comprehend. It’s like magic that glues
blockchains together and allows them to create mathematical trust and
maintain privacy as well as security in the network. The hash in the
blockchain is created from the data that was in the previous block. So we can
say that the hash is a fingerprint of this data and locks blocks in order and
time.
Hashing In Blockchain:
In simple words, hashing refers to the process of having an input of any length
but showing an output item of a fixed length. If we take the example of
blockchain use in online transactions(using bitcoins), transactions of different
lengths are run through a given hashing algorithm, and all give an output that is
of a fixed length. This output is independent of the length of the input transaction.
 Secure Hashing Algorithm 256 (SHA-256): This hashing algorithm always
gives an output of fixed length 256-bits or 32 bytes, no matter whatever is the
size of the input transaction. It means if we hash two different input using
SHA-256, let’s say one is a movie of 1 gigabyte and another is an image of 5
kilobytes, then in both cases, the output hash will be 256-bits in length. The
only difference between the two will be the hash pattern. Currently, this
algorithm is used in the Bitcoin network.
 Keccak-256: This hashing algorithm always gives an output of fixed length
256-bit; currently it is used in the Ethereum network.
Hash Functions:
Basically, the process of using a given hash function to produce a transaction is
called hashing. A hash function, will take any transaction or data input and rehash
it to produce an output of a fixed size. The transaction output of that given hash
function is what we call a hash.
INPUT H(X) —->HASH H(x) —->
HASH HASH
DATA —> —-> OUTPUT
FUNCTION FUNCTION
This complete process is known as Hashing. It consists of two subparts, one is
encryption of data (the process of generating a hash from input data) and the
second one is the decryption of data (the process of generating output from hash
using a cryptographic hash function).
Properties of Hash Function: Three main properties of cryptographic hash
functions are:
 Its Input can be any string of any size.
 It produces a fixed size output. We had already seen the example of SHA-256
regarding this property.
 And the third one is, It is efficiently Computable, this means that for a given
input string, we can figure out what the output of the hash function is in a
reasonable amount of time. If I talk more technically, computing the hash of
an n-bit string has a running time that is O(N).
For a hash function to be strong and more secure, it has the following three
additional properties:
 Collision-resistance: A collision occurs when two distinct inputs produce the
same output. A hash function H(x) is collision-resistant if nobody can find a
collision. It means for two values x and y, such that x ≠ y, if h(x) =H(y), it
means the function h(.) is collision-resistant. We want to increase data security
then it’s very important to use a strong hash function that is not collision-
resistant.
 Hiding: This property of hash functions ensures that if we’re given the output
of hash function y=H(x), then there’s no feasible way to figure out what the
input, x, was. In a more technical and mathematical way “A hash function H is
hiding if: when a secret value r is chosen from a probability distribution that
has high min-entropy, then given H(r // x) it is infeasible to find x.
 Puzzle friendliness: This property of the hash function is a bit complicated to
understand, but I will try to make you understand in simple words. According
to this property, if someone wants to target the hash function to come out to
some particular output value y, that if there’s part of the input that is chosen in
a suitably randomized way, it’s very difficult to find another value that hits
exactly that target. In a more technical way, this property states that ” A hash
function H is said to be a puzzle – friendly if for every possible n-bit output
value y, if k is chosen from a distribution with high min-entropy, then it is
infeasible to find x such that H(k // x)=y in time significantly less than 2 n.
Applications:
1. Signature generation and verification: Almost all digital signature schemes
require a cryptographic hash to be calculated over the message. The message is
considered authentic if the signature verification succeeds given the signature and
recalculated hash digest over the message. So the message integrity property of
the cryptographic hash is used to create secure and efficient digital signature
schemes.
2. Password verification: To authenticate a user, the password presented by the
user is hashed and compared with the stored hash. A password hashing is
performed; the original password cannot be recalculated from the stored hash
value.
3. Verification of files and messages: An important application of secure hashes
is the verification of message integrity. Comparing messages digests( hash
digest over the message) calculated before, and after, transmission can determine
whether any changes have been made to the message or file.
Conclusion: The cryptographic hash function is an integral part of blockchain
innovation. It is essentially a feature that gives security capabilities to the
processed transactions, making them immutable. Hashing is also at the center of
“Merkle Trees”, which is an advanced approach to blockchain hashing. It is
useful in issues of scalability, and mobile/ light wallets.

Markle tree:

A hash tree is also known as Merkle Tree. It is a tree in which each leaf node is
labeled with the hash value of a data block and each non-leaf node is labeled with
the hash value of its child nodes labels.

What is a Cryptographic Hash?

A cryptographic hash is a function that outputs a fixed-size digest for a variable-


length input. A hash function is an important cryptographic primitive and
extensively used in blockchain. For example, SHA-256 is a hash function in
which for any variable-bit length input, the output is always going to be a 256-bit
hash.
 From the above picture, it is clear that even the slightest change in an alphabet
in the input sentence can drastically change the hash obtained. Therefore
hashes can be used to verify integrity.
 Consider there is a text file with important data. Pass the contents of the text
file into a hash function and then store the hash in the phone. A hacker
manages to open the text file and changes the data.
 Now when you open the file again, you can compute the hash again and
compare this hash with the one stored previously on the phone.
 It will be clearly evident that the two hashes do not match and hence the file
has been tampered with.

What is Hash Pointer?

A regular pointer stores the memory address of data. With this pointer, the data
can be accessed easily. On the other hand, a hash pointer is a pointer to where
data is stored and with the pointer, the cryptographic hash of the data is also
stored. So a hash pointer points to the data and also allows us to verify the data. A
hash pointer can be used to build all kinds of data structures such as blockchain
and Merkle tree.
Blockchain Structure

The blockchain is a proficient combination of two hash-based data structures-


1. Linked list: This is the structure of the blockchain itself, which is a linked
list of hash pointers. A regular linked list consists of nodes. Each node has 2
parts- data and pointer. The pointer points to the next node. In the blockchain,
simply replace the regular pointer with a hash pointer.
2. Merkle tree: A Merkle tree is a binary tree formed by hash pointers, and
named after its creator, Ralph Merkle.
Blockchain as linked list with hash pointers

Block Structure

1. Block header: The header data contains metadata of the block, i.e information
about the block itself. The contents of the block header include-
 Hash of the previous block header.
 Hash of the current block.
 Timestamp.
 Cryptographic nonce.
 Merkle root.
2. Merkle tree: A Merkle tree is a binary tree formed by hash pointers, and
named after its creator, Ralph Merkle.
 As mentioned earlier, each block is supposed to hold a certain number of
transactions. Now the question arises, how to store these transactions within a
block? One approach can be to form a hash pointer-based linked list of
transactions and store this complete linked list in a block. However, when we
put this approach into perspective, it does not seem practical to store a huge
list of hundreds of transactions. What if there is a need to find whether a
particular transaction belongs to a block? Then we will have to traverse the
blocks one by one and within each block traverse the linked list of
transactions.
 This is a huge overhead and can reduce the efficiency of the blockchain. Now,
this is where the Merkle tree comes into the picture. Merkle tree is a per-block
tree of all the transactions that are included in the block. It allows us to have a
hash/digest of all transactions and provides proof of membership in a time-
efficient manner.
 So to recap, the blockchain is a hash-based linked list of blocks, where each
block consists of a header and transactions. The transactions are arranged in a
tree-like fashion, known as the Merkle tree.
Each block comprises of block header + Merkle tree

Merkle Tree Structure

Structure of Merkle tree


1. A blockchain can potentially have thousands of blocks with thousands of
transactions in each block. Therefore, memory space and computing power are
two main challenges.
2. It would be optimal to use as little data as possible for verifying transactions,
which can reduce CPU processing and provide better security, and this is exactly
what Merkle trees offer.
3. In a Merkle tree, transactions are grouped into pairs. The hash is computed for
each pair and this is stored in the parent node. Now the parent nodes are grouped
into pairs and their hash is stored one level up in the tree. This continues till the
root of the tree. The different types of nodes in a Merkle tree are:
 Root node: The root of the Merkle tree is known as the Merkle root and this
Merkle root is stored in the header of the block.
 Leaf node: The leaf nodes contain the hash values of transaction data. Each
transaction in the block has its data hashed and then this hash value (also
known as transaction ID) is stored in leaf nodes.
 Non-leaf node: The non-leaf nodes contain the hash value of their respective
children. These are also called intermediate nodes because they contain the
intermediate hash values and the hash process continues till the root of the
tree.
4. Bitcoin uses the SHA-256 hash function to hash transaction data continuously
till the Merkle root is obtained.
5. Further, a Merkle tree is binary in nature. This means that the number of leaf
nodes needs to be even for the Merkle tree to be constructed properly. In case
there is an odd number of leaf nodes, the tree duplicates the last hash and makes
the number of leaf nodes even.

How Do Merkle Trees Work?

 A Merkle tree is constructed from the leaf nodes level all the way up to the
Merkle root level by grouping nodes in pairs and calculating the hash of each
pair of nodes in that particular level. This hash value is propagated to the next
level. This is a bottom-to-up type of construction where the hash values are
flowing from down to up direction.
 Hence, by comparing the Merkle tree structure to a regular binary tree data
structure, one can observe that Merkle trees are actually inverted down.
Binary tree direction vs Merkle tree direction

Example: Consider a block having 4 transactions- T1, T2, T3, T4. These four
transactions have to be stored in the Merkle tree and this is done by the following
steps-
Step 1: The hash of each transaction is computed.
H1 = Hash(T1).
Step 2: The hashes computed are stored in leaf nodes of the Merkle tree.
Step 3: Now non-leaf nodes will be formed. In order to form these nodes, leaf
nodes will be paired together from left to right, and the hash of these pairs will be
calculated. Firstly hash of H1 and H2 will be computed to form H12. Similarly,
H34 is computed. Values H12 and H34 are parent nodes of H1, H2, and H3, H4
respectively. These are non-leaf nodes.
H12 = Hash(H1 + H2)
H34 = Hash(H3 + H4)
Step 4: Finally H1234 is computed by pairing H12 and H34. H1234 is the only
hash remaining. This means we have reached the root node and therefore H1234
is the Merkle root.
H1234 = Hash(H12 + H34)
Merkle tree works by hashing child nodes again and again till only one hash

remains.

Key Points:
 In order to check whether the transaction has tampered with the tree, there is
only a need to remember the root of the tree.
 One can access the transactions by traversing through the hash pointers and if
any content has been changed in the transaction, this will reflect on the hash
stored in the parent node, which in turn would affect the hash in the upper-
level node and so on until the root is reached.
 Hence the root of the Merkle tree has also changed. So Merkle root which is
stored in the block header makes transactions tamper-proof and validates the
integrity of data.
 With the help of the Merkle root, the Merkle tree helps in eliminating
duplicate or false transactions in a block.
 It generates a digital fingerprint of all transactions in a block and the Merkle
root in the header is further protected by the hash of the block header stored in
the next block.
Why Merkle Trees are Important For Blockchain?
 In a centralized network, data can be accessed from one single copy. This
means that nodes do not have to take the responsibility of storing their own
copies of data and data can be retrieved quickly.
 However, the situation is not so simple in a distributed system.
 Let us consider a scenario where blockchain does not have Merkle trees. In
this case, every node in the network will have to keep a record of every single
transaction that has occurred because there is no central copy of the
information.
 This means that a huge amount of information will have to be stored on every
node and every node will have its own copy of the ledger. If a node wants to
validate a past transaction, requests will have to be sent to all nodes,
requesting their copy of the ledger. Then the user will have to compare its own
copy with the copies obtained from several nodes.
 Any mismatch could compromise the security of the blockchain. Further on,
such verification requests will require huge amounts of data to be sent over the
network, and the computer performing this verification will need a lot of
processing power for comparing different versions of ledgers.
 Without the Merkle tree, the data itself has to be transferred all over the
network for verification.
 Merkle trees allow comparison and verification of transactions with viable
computational power and bandwidth. Only a small amount of information
needs to be sent, hence compensating for the huge volumes of ledger data that
had to be exchanged previously.
Merkle trees use a one-way hash function extensively and this hashing separates
the proof of data from data itself

Proof of Membership

A very interesting feature of the Merkle tree is that it provides proof of


membership.
Example: A miner wants to prove that a particular transaction belongs to a
Merkle tree Now the miner needs to present this transaction and all the nodes
which lie on the path between the transaction and the root. The rest of the tree can
be ignored because the hashes stored in the intermediate nodes are enough to
verify the hashes all the way up to the root.
Proof of membership: verifying the presence of transactions in blocks using the

Merkle tree.

If there are n nodes in the tree then only log(n) nodes need to be examined. Hence
even if there are a large number of nodes in the Merkle tree, proof of membership
can be computed in a relatively short time.

Merkle Proofs

A Merkle proof is used to decide:


1. If data belongs to a particular Merkle tree.
2. To prove data belongs to a set without the need to store the whole set.
3. To prove a certain data is included in a larger data set without revealing the
larger data set or its subsets.
Merkle proofs are established by hashing a hash’s corresponding hash together
and climbing up the tree until you obtain the root hash which is or can be
publicly known.
Consider the Merkle tree given below:
Let us say we need to prove that transaction ‘a’ is part of this Merkle tree.
Everyone in the network will be aware of the hash function used by all Merkle
trees.
1. H(a) = Ha as per the diagram.
2. The hash of Ha and Hb will be Hab, which will be stored in an upper-level
node.
3. Finally hash of Hab and Hcd will give Habcd. This is the Merkle root obtained
by us.
4. By comparing the obtained Merkle root and the Merkle root already available
within the block header, we can verify the presence of transaction ‘a’ in this
block.
From the above example, it is clear that in order to verify the presence of ‘a’, ‘a’
does not have to be revealed nor do ‘b’, ‘c’, ‘d’ have to be revealed, only their
hashes are sufficient. Therefore Merkle proof provides an efficient and simple
method of verifying inclusivity, and is synonymous with “proof of inclusion”.
A sorted Merkle tree is a tree where all the data blocks are ordered using an
ordering function. This ordering can be alphabetical, lexicographical, numerical,
etc.
Proof of Non-Membership:
 It is also possible to test non-membership in logarithmic time and space using
a sorted Merkle tree. That is, it is possible to show that a given transaction
does not belong in the Merkle tree.
 This can be done by displaying a path to the transaction that is immediately
before the transaction in question, as well as a path to the item that is
immediately following it.
 If these two elements in the tree are sequential, this proves that the item in
issue is not included or else it would have to go between the two things shown
if it was included, but there is no room between them because they are
sequential.
Coinbase Transaction:
A coinbase transaction is a unique Bitcoin transaction that is included in the
Merkle tree of every block in the blockchain. It is responsible for creating new
coins and also consists of a coinbase parameter that can be used by miners to
insert arbitrary data into the blockchain.

Simple Payment Verification(SPV)

 SPV makes it extremely easy for a client to verify whether a particular


transaction exists in a block and is valid without having to download the
entire blockchain. The users will only require a copy of the block headers of
the longest chain.
 This copy of headers is stored in the SPV wallet and this wallet uses the SPV
client to link a transaction to a Merkle branch in a block. SPV client
requests proof of inclusion(Merkle proof), in the form of a Merkle branch.
The fact that the transaction can be linked to a Merkle branch is proof that the
transaction exists.
 Now by assessing the blocks which are being mined on top of the transaction’s
block, the client can also conclude that majority of the nodes have built more
blocks on top of this chain by using consensus mechanisms like Proof of
Work, and hence this is the longest, valid blockchain.

Advantages of Merkle Tree

1. Efficient verification: Merkle trees offer efficient verification of integrity and


validity of data and significantly reduce the amount of memory required for
verification. The proof of verification does not require a huge amount of data
to be transmitted across the blockchain network. Enable trustless transfer of
cryptocurrency in the peer-to-peer, distributed system by the quick verification
of transactions.
2. No delay: There is no delay in the transfer of data across the network. Merkle
trees are extensively used in computations that maintain the functioning of
cryptocurrencies.
3. Less disk space: Merkle trees occupy less disk space when compared to other
data structures.
4. Unaltered transfer of data: Merkle root helps in making sure that the blocks
sent across the network are whole and unaltered.
5. Tampering Detection: Merkle tree gives an amazing advantage to miners to
check whether any transactions have been tampered with.
 Since the transactions are stored in a Merkle tree which stores the hash of
each node in the upper parent node, any changes in the details of the
transaction such as the amount to be debited or the address to whom the
payment must be made, then the change will propagate to the hashes in
upper levels and finally to the Merkle root.
 The miner can compare the Merkle root in the header with the Merkle root
stored in the data part of a block and can easily detect this tampering.
6. Time Complexity: Merkle tree is the best solution if a comparison is done
between the time complexity of searching a transaction in a block as a Merkle
tree and another block that has transactions arranged in a linked list, then-
 Merkle Tree search: O(logn), where n is the number of transactions in a
block.
 Linked List search: O(n), where n is the number of transactions in a
block.

Gas limit:

The gas limit in blockchain technology refers to the maximum amount of


computational effort a user is willing to expend on a transaction or smart contract
execution. It prevents excessive use of network resources by setting a cap on the
work that can be done. Users set this limit to manage costs, as each operation
requires a certain amount of gas, with the price determined by network demand. A
transaction fails if the gas limit is too low, not completing its intended action, but
still consuming the set gas.

The gas limit is like setting a budget for how much you’re willing to spend on
sending a transaction or running a program on a blockchain, like Ethereum. It stops
your transaction from using up too much of the blockchain’s energy. Think of it
like telling a taxi driver the most you’ll pay for a ride. If the ride costs more than
your budget, you won’t get to your destination. If it costs less, you only pay for the
distance covered.
What is the Purpose of Gas Limit?
Over the ETH network, the processing of pending transactions depends on the gas
limit that each transaction is willing to spend on the block. The Ethereum Virtual
Machine processes every transaction and requires some amount of gas fees for
execution. Each block has its gas limit. While creating a block, designated users
must remember that the total transactional gas limit is not to exceed the block’s gas
limit. Thus, every transaction’s gas limit has to be carefully decided.
How do Gas Limits Work?

Source: Blockgeeks / What is a crypto gas limit in blockchain: purpose of


cryptocurrency block limit

Gas fees provide each node involved some incentive to add a new block to the
chain and execute a transaction. Now, they may charge very high depending upon
the traffic on the chain. The gas limit controls the users over how much they spend
on executing a transaction. A simulator suggests average gas fees to the users, who
can then decide whether they want to keep the gas limit equal to the average,
higher, or lower. A higher gas limit will get your transaction processed faster since
the designated node would get to charge more. A lower gas limit will keep you in
the queue until any willing node decides to execute the transaction. Usually, people
keep the cryptocurrency gas limit equal to the average gas fees.

Transaction fee:
Blockchain transaction fees are an essential aspect of the decentralized digital
currency system. In this comprehensive guide, we will explore what blockchain
transaction fees are, how they are determined, the different types of fees, how to
calculate them, and techniques to minimize these fees. So, whether you are a
crypto enthusiast, investor, or just curious about the technology behind digital
currencies, this guide will provide you with valuable insights into blockchain
transaction fees.

What are Blockchain Transaction Fees?


Blockchain transaction fees, simply put, are the charges incurred when you send or
receive cryptocurrency on a blockchain network. These fees are an integral part of
the system, as they serve multiple purposes. Firstly, they incentivize miners to
process and verify transactions. Secondly, they help regulate the blockchain
network and maintain its security and stability. Without transaction fees, bad actors
could spam the network, causing congestion and delays. Therefore, transaction fees
play a vital role in ensuring the smooth functioning of the blockchain ecosystem.

The Role of Transaction Fees in Blockchain Networks


Transaction fees are a fundamental part of the blockchain network’s economic
design. Miners, the individuals or entities responsible for verifying and adding
transactions to the blockchain, prioritize transactions based on their fees. Higher
fees incentivize miners to include transactions in blocks more quickly, ensuring
faster confirmations. Additionally, transaction fees serve as a reward for miners,
compensating them for their computational power and energy costs.

But what happens to the transaction fees once they are collected by the miners?
Well, these fees become part of the miner’s revenue. In addition to the block
reward, which is a predetermined amount of cryptocurrency given to the miner for
successfully mining a block, transaction fees contribute to their earnings. This dual
incentive system ensures that miners have a vested interest in maintaining the
integrity and security of the blockchain network.

Factors Determining the Cost of Transaction Fees


The cost of blockchain transaction fees varies depending on several factors. Firstly,
the network’s congestion level impacts the fees. During times of high demand,
when many people are transacting, fees tend to rise due to increased competition
for block space. Network congestion can occur during popular events or periods of
intense market activity.
Another factor influencing transaction fees is the transaction size in bytes.
Blockchain networks typically charge fees per byte, so more substantial
transactions, such as those involving multiple inputs and outputs, will incur higher
fees. This is because larger transactions require more computational power and
storage space to process and verify.

Lastly, the urgency of the transaction also affects the fees. If you need your
transaction to be confirmed quickly, you may opt to pay a higher fee to incentivize
miners to prioritize it. This is particularly important for time-sensitive transactions,
such as buying a limited-edition item or participating in a time-limited token sale.

Anonymity:

he ability to operate anonymously is a central tenet of crypto technology. All


cryptocurrency transactions are recorded on decentralized ledger systems called
blockchains, which let users transact namelessly, without registering a bank
account or interacting with traditional financial gatekeepers.

Chain policy:

Life of block chain applications

Applications and Uses of Blockchain



A blockchain is actually a digital ledger of transactions that is copied and


distributed across the network of computer systems. Each of the blocks generated
after every transaction holds various information about the transaction and gets
itself updated in every participant’s ledger which once written cannot be changed.
Every participant in the chain of transactions is a vital part of the network.
In simple terms, it is distributed database that everyone can get a copy of. Every
person with a copy can add new records to this database but cannot change any
record that’s already in there. So, how can it be used? Let us start with the most
obvious and most popular applications of blockchain and that is:
 Cryptocurrencies: A cryptocurrency is a digital currency, basically designed
to be used as a medium of exchange wherein each coin ownership record is
stored in a decentralized ledger. Cryptocurrencies use ‘decentralized control’,
which suggests that they are not controlled by one person or government. When
Bitcoin launched in 2008, it allowed people to directly transact with each other
without having to trust third parties like banks. Since then 4000 different
cryptocurrencies have been created. Some examples are Bitcoin, Ethereum,
Dogecoin, Fantom, etc. The blockchain is the technology behind cryptos where
all the exchange or transaction information is stored which cannot be hacked or
changed and a copy of the ledger is distributed among all the participants of the
network. It records every single transaction. Each and every person can buy/sell
or deal in cryptos and be a part of the network. Nowadays, several financial
applications provide a user with the luxury of doing so.
 Cars: Let us see how can blockchain be used in cars. Ever heard of odometer
fraud? By tampering with the odometer, someone can make a car appear to be
newer and less worn out, resulting in customers paying more than what the car
is actually worth. The government tries to encounter by collecting the mileage
of cars when they get a safety inspection, but that’s not enough. So, instead, we
could replace regular odometers with smart ones that are connected to the
internet and frequently write the car’s mileage to the blockchain. This would
create a secure and digital certificate for every car. And because we use a
blockchain, nobody can tamper with the data/information, and everyone can
look up a vehicle’s history to ensure it’s correct. In fact, this has already been
developed used by Bosch’s IoT lab and they are currently testing it on a fleet of
100 cars in Germany and Switzerland.
 Legal Documents: So, blockchains are great at keeping a good track of data
over time. So, besides odometers, you can keep track of things like intellectual
property or patents or it can even function as a notary. A notary is someone (for
example the Central Government) who can confirm and verify signatures on
legal documents. But we can just as well use blockchain for it. The online
website stampd.io as an example, allows you to feature the documents to the
Bitcoin or Ethereum Blockchain. Once, a document has been added you can
always prove that you simply created a document at a particular point of time
very similar to a notary, although right now blockchains are not on the same
level as notaries in a legal perspective.
 Digital Voting: Another interesting application is digital voting. Right now
voting happens either on paper or EVM (electronic voting machines) which are
special computers running proprietary software. Voting on paper costs a lot of
money and wastage and electronic voting has security issues. In recent years we
have seen countries move away from digital voting and adopting paper again
because they fear that electronic votes can be tampered with and influenced by
hackers. In our country as well, we have seen politicians fight over “EVM
hack” things. But, in place of paper ballots or EVMs, we could use blockchains
to cast and store votes. Such a system would be very transparent and everyone
could verify the voting count for themselves and it would make tampering with
it very difficult. The Swiss company Agora is already working on such a system
and it is going to be completely open-source. But there are many challenges.
First, you have to be able to verify voters without compromising their privacy.
Secondly, if you allow people to vote with their own computers or phones, you
have to take care of the situation that those devices might be infected with
malware designed to tamper with the voting process. And a final example: a
system like this also has to be able to withstand denial-of-service attacks that
could render the whole thing unusable. Definitely, a very tough nut to crack but
if it becomes reality it could make for a more transparent and practical voting
system.
 Food and Medical Industry: They could use blockchain technology to track
their food products from the moment they are harvested or made, to when they
end up in the hands of the customers. See, every year almost half a million
people die because of food-borne diseases and that’s partly because it takes too
long to isolate the food that is causing harm. Blockchains could help us to
create a digital certificate for each package of food, proving where it came from
and where it has been. So, if contamination has been detected i.e. the
manufacturer wants to revert a batch of food because of certain quality issues,
we can trace it back to its root and instantly notify other people who bought the
same batch of bad food. Walmart and IBM are the two big giants currently
working on such a system. It allowed them to trace the origin of a box of
mangoes in just 2 seconds, compared to days or even weeks with a traditional
system. A system like this could be applied to other similar industries as well.
We could use it to track medicines, and other regular products and battle
counterfeit goods by allowing anyone (the officials in general) to verify whether
or not the product comes from the original and authentic manufacturer.
 Logistics and Supply-chain: Another idea would be to track packages and
shipments using blockchain. That is something that IBM and container shipping
giant Maersk Line are working on a decentralized ledger to help with making
the global trade of goods more efficient. Many hackathons on blockchain have
this topic for college students to build the project. It is still in the development
phase and companies are trying to come up with such a system to track their
package pinpoint.
 Smart Contracts: So far, we have looked at ways blockchains can be used to
keep track of information and verify its integrity. But blockchains are even
more powerful when we use them as smart contracts as one of its applications.
These contracts live on the blockchain and can perform actions when various
conditions are met. Insurance companies could use smart contracts to validate
claims and keep a record of all the people who are buying insurance and paying
their premiums on time so as to continue the terms of the policy. Or they could
allow us to only pay for car insurance when we are driving. But it goes even
further, with smart contracts we can our own data on a blockchain. In the same
fashion, you could store your personal identity there and choose what data you
want to reveal.
 Original Content Creation and Royalties tracking: Think about collecting
royalties for artists. A beautiful idea for the use case would be streaming
platforms could set up two smart contracts: one where users send a monthly
subscription to and one that keeps track of what song or video a particular user
is consuming and how many times the song has been played or a video being
watched. At the end of each month, the smart contract that holds the
subscription fee can automatically distribute the money to artists, based o how
many times their songs have been played. People can have smart contracts for
their content and have proof that they were the creators and no other.
Mediachain is one of the companies working in the music industry using
blockchain and smart contracts. Similarly, smart contracts can be used in other
places as well, some of them are:
Blockchain technology can be used in so many different ways and we are still
discovering and finding other ways out. This list is just a brief of what things are
happening around this space. Similarly, other applications are:
 Real Estate: Propy, a California-based company is using blockchain as a title
registry system for property ownership with distributed and decentralized
systems.
 IoT Devices: Filament, a Nevada-based company, creates IoT microchip
hardware and software that lets the connected devices run on blockchain
technology. The product’s encrypted and secured ledger data distribute
information to other blockchain-connected devices and allow monetization of
machines based on the usage of time stamps and others. A cybersecurity
company, HYPR, is using this technology to secure IoT devices with a
decentralized credential system. By taking passwords away from a centralized
system to make devices even more secure and unhackable.
 Documents: Many countries are adopting blockchain technology to store their
data and people’s data, this way they are bringing transparency and security to
the documents like birth certificates, social security numbers, and voter
registration cards, and much more.
 Non-Fungible Tokens (NFTs): These are the new trend in the world after
crypto-currencies survive upon blockchain technology. The year 2020-2021
gave rise to digital items at par. NFTs are also digital items that include videos,
photos, arts, GIFs, and other media that are sold over blockchain such that the
owner of the media created can claim his/her full rights. The Nyan cat meme
that was a trend in 2011, that GIF was sold for $600,000.
 Gambling: The gambling industry can use blockchain to provide several
benefits to players. With the help of the blockchain there is a transparency
between the potential gamblers. The transaction are recorded in the blockchain
network, game could be played fairly.
 Big Data: The every computer in the network is trying to verify the information
stored in it, making blockchain an excellent tool for storing data with its
immutable nature.

Soft &hard fork:

WHAT IS A FORK IN BLOCKCHAIN?

A fork is a change to the protocol, or a divergence from the previous version of


the Blockchain. When a new, alternative block is generated by a rogue miner, the
system reaches consensus that this block is not valid, and this ‘orphan block’ is
very soon abandoned by the other miners.

Forks in Blockchain are two types: Soft Fork and Hard Fork.

Soft Fork
A soft fork is a software upgrade that is backwards compatible with older versions.

This means that participants that did not upgrade to the new software will still be
able to participate in validating and verifying transactions.

It is much easier to implement a soft fork as only a majority of participants need to


upgrade the software. All participants, whether they’ve updated or not will
continue to recognize new blocks and maintain compatibility with the network.

A point to take note, however, is that the functionality of a non-upgraded


participant is affected. An example of a soft fork is when the new rule states that
the block size will be changed from the current 1MB (1,000KB) to 800KB.
Non-upgraded participants will still continue to see that the incoming new
transactions are valid. The issue is when non-upgraded miners try to mine new
blocks, their blocks (and thus, efforts) will be rejected by the network.

Hence, soft forks represent a gradual upgrading mechanism as those who have yet
to upgrade their software is incentivized to do so, or risk having reduced
functionalities.

Hard Fork
Hard forks refer to a software upgrade that isn’t compatible with older versions.

All participants must upgrade to the new software to continue participating and
validating new transactions. Those who didn’t upgrade would be separated from
the network and cannot validate the new transactions. This separation results in a
permanent divergence of the Blockchain.

As long as there is support in the minority chain – in the form of participants


mining in the chain – the two chains will concurrently exist. (example: Ethereum
Classic and Bitcoin Cash)

EXAMPLES OF HARD FORKS


Ethereum Classic

Ethere
um Classic is a Blockchain-based open source platform that enables smart
contracts and has a full Turing programming language. Source: Wikipedia
Ethereum had a hard fork to reverse the effects of a hack that occurred in one of
their applications (called the Decentralized Autonomous Organization or simply,
DAO).

However, a minority portion of the community was philosophically opposed to


changing the Blockchain at any costs, to preserve its nature of immutability.

As Ethereum’s core developers and the majority of its community went ahead with
the hard fork, the minority that stayed behind and didn’t upgrade their software
continued to mine what is now known as Ethereum Classic (ETC).

It’s important to note that since the majority transited to the new chain, they still
retained the original ETH symbol, while the minority supporting the old chain
were given the term Ethereum Classic or ETC.
Bitcoin Cash

Bitcoi
n was forked to create Bitcoin Cash because the developers of Bitcoin wanted to
make some important changes to Bitcoin. Source: Wikipedia
Bitcoin Cash is a cryptocurrency that is a fork of Bitcoin. Bitcoin Cash is a spin-off
or altcoin that was created in 2017. In 2018 Bitcoin Cash subsequently split into
two cryptocurrencies: Bitcoin Cash, and Bitcoin. Bitcoin Cash is sometimes also
referred to as Bcash.

Bitcoin was forked to create Bitcoin Cash because the developers of Bitcoin
wanted to make some important changes to Bitcoin. The developers of the Bitcoin
community could not come to an agreement concerning some of the changes that
they wanted to make. So, a small group of these developers forked Bitcoin to
create a new version of the same code with a few modifications.
The changes that make all the difference between Bitcoin Cash vs Bitcoin are
these:

 Bitcoin Cash has cheaper transfer fees, so making transactions in BCH will
save you more money than using BTC.
 BCH has faster transfer times. So, you don’t have to wait the 10 minutes it
takes to verify a Bitcoin transaction!
 BCH can handle more transactions per second. This means that more people
can use BCH at the same time than they can with BTC.
Types of Blockchain



The basic application of the blockchain is to perform transactions in a secure


network. That’s why people use blockchain and ledger technology in different
scenarios. One can set up multichain to prevent unauthorized access to sensitive
data. It is not available to the public, and can only be available to authorized
entities in the organization. It depends on the organization which type it requires to
choose for their work.
By using blockchain we can track orders and payments from end to end.
Advantage using blockchain :
1. It provides greater trust among users.
2. It provides greater security among data.
3. Reduce the cost of production.
4. Improve Speed.
5. Invocation and tokenization.
6. It provides immutable records.
7. Smart contracts
Disadvantages using blockchain :
1. Data modification is not possible.
2. It requires large storage for a large database.
3. The owner cannot access the private key again if they forget or lose it.
Real life application of blockchain :

Here is a list of real world problem where we can use blockchain :


1. In a secure and full-proof voting management system.
2. To supply chain management.
3. In healthcare management.
4. Real estate project.
5. NFT marketplace.
6. Avoid copyright and original content creation.
7. In the personal identity system
8. To make an immutable data backup.
9. Internet of Things

Permissionless Blockchain

It is also known as trustless or public blockchains, are available to everyone to


participate in the blockchains process that use to validate transactions and data.
These are used in the network where high transparency is required.
Characteristics:
 Permissionless blockchain has no central authority.
 The platform is completely open-source.
 Full transparency of the transaction.
 Heavy use of tokens.

Advantages:
 Everyone can participate only requirement is good hardware and internet.
 Bring trust among users or entities.
 It has a high level of transparency as it’s a larger network.
 Broader decentralization of access to more participants.
Disadvantages:
 Poor energy efficiency due to large network.
 Lower performance scalability.
 Less privacy as many of the things is visible.
Permissioned Blockchain

These are the closed network only a set of groups are allowed to validate
transactions or data in a given blockchain network. These are used in the network
where high privacy and security are required.
Characteristics:
 A major feature is a transparency based on the objective of the organization.
 Another feature is the lack of anatomy as only a limited number of users are
allowed.
 It does not have a central authority.
 Developed by private authority.

Advantages:
 This blockchain tends to be faster as it has some nodes for validations.
 They can offer customizability.
 Strong Privacy as permission is needed for accessing transaction information.
 As few nodes are involved performance and scalability are increased.
Disadvantages:
 Not truly decentralized as it requires permission
 Risk of corruption as only a few participants are involved.
 Anytime owner and operator can change the rules as per their need.

Types of Blockchain

There are 4 types of blockchain:


 Public Blockchain.
 Private Blockchain.
 Hybrid Blockchain.
 Consortium Blockchain.
Let’s discuss each of these topics in detail.

1. Public Blockchain

These blockchains are completely open to following the idea of decentralization.


They don’t have any restrictions, anyone having a computer and internet can
participate in the network.
 As the name is public this blockchain is open to the public, which means it is
not owned by anyone.
 Anyone having internet and a computer with good hardware can participate in
this public blockchain.
 All the computer in the network hold the copy of other nodes or block present
in the network
 In this public blockchain, we can also perform verification of transactions or
records
Advantages:
 Trustable: There are algorithms to detect no fraud. Participants need not
worry about the other nodes in the network
 Secure: This blockchain is large in size as it is open to the public. In a large
size, there is greater distribution of records
 Anonymous Nature: It is a secure platform to make your transaction properly
at the same time, you are not required to reveal your name and identity in
order to participate.
 Decentralized: There is no single platform that maintains the network, instead
every user has a copy of the ledger.
Disadvantages:
 Processing: The rate of the transaction process is very slow, due to its large
size. Verification of each node is a very time-consuming process.
 Energy Consumption: Proof of work is high energy-consuming. It requires
good computer hardware to participate in the network
 Acceptance: No central authority is there so governments are facing the issue
to implement the technology faster.
Use Cases: Public Blockchain is secured with proof of work or proof of stake
they can be used to displace traditional financial systems. The more advanced
side of this blockchain is the smart contract that enabled this blockchain to
support decentralization. Examples of public blockchain are Bitcoin, Ethereum.

2. Private Blockchain

These blockchains are not as decentralized as the public blockchain only selected
nodes can participate in the process, making it more secure than the others.
 These are not as open as a public blockchain.
 They are open to some authorized users only.
 These blockchains are operated in a closed network.
 In this few people are allowed to participate in a network within a
company/organization.
Advantages:
 Speed: The rate of the transaction is high, due to its small size. Verification of
each node is less time-consuming.
 Scalability: We can modify the scalability. The size of the network can be
decided manually.
 Privacy: It has increased the level of privacy for confidentiality reasons as the
businesses required.
 Balanced: It is more balanced as only some user has the access to the
transaction which improves the performance of the network.
Disadvantages:
 Security- The number of nodes in this type is limited so chances of
manipulation are there. These blockchains are more vulnerable.
 Centralized- Trust building is one of the main disadvantages due to its central
nature. Organizations can use this for malpractices.
 Count- Since there are few nodes if nodes go offline the entire system of
blockchain can be endangered.
Use Cases: With proper security and maintenance, this blockchain is a great asset
to secure information without exposing it to the public eye. Therefore companies
use them for internal auditing, voting, and asset management. An example of
private blockchains is Hyperledger, Corda.
3. Hybrid Blockchain
It is the mixed content of the private and public blockchain, where some part is
controlled by some organization and other makes are made visible as a public
blockchain.
 It is a combination of both public and private blockchain.
 Permission-based and permissionless systems are used.
 User access information via smart contracts
 Even a primary entity owns a hybrid blockchain it cannot alter the transaction
Advantages:
 Ecosystem: Most advantageous thing about this blockchain is its hybrid
nature. It cannot be hacked as 51% of users don’t have access to the network
 Cost: Transactions are cheap as only a few nodes verify the transaction. All
the nodes don’t carry the verification hence less computational cost.
 Architecture: It is highly customizable and still maintains integrity, security,
and transparency.
 Operations: It can choose the participants in the blockchain and decide which
transaction can be made public.
Disadvantages:
 Efficiency: Not everyone is in the position to implement a hybrid Blockchain.
The organization also faces some difficulty in terms of efficiency in
maintenance.
 Transparency: There is a possibility that someone can hide information from
the user. If someone wants to get access through a hybrid blockchain it
depends on the organization whether they will give or not.
 Ecosystem: Due to its closed ecosystem this blockchain lacks the incentives
for network participation.
Use Case: It provides a greater solution to the health care industry, government,
real estate, and financial companies. It provides a remedy where data is to be
accessed publicly but needs to be shielded privately. Examples of Hybrid
Blockchain are Ripple network and XRP token.
4. Consortium Blockchain

It is a creative approach that solves the needs of the organization. This blockchain
validates the transaction and also initiates or receives transactions.
 Also known as Federated Blockchain.
 This is an innovative method to solve the organization’s needs.
 Some part is public and some part is private.
 In this type, more than one organization manages the blockchain.
Advantages:
 Speed: A limited number of users make verification fast. The high speed
makes this more usable for organizations.
 Authority: Multiple organizations can take part and make it decentralized at
every level. Decentralized authority, makes it more secure.
 Privacy: The information of the checked blocks is unknown to the public
view. but any member belonging to the blockchain can access it.
 Flexible: There is much divergence in the flexibility of the blockchain. Since
it is not a very large decision can be taken faster.
Disadvantages:
 Approval: All the members approve the protocol making it less flexible.
Since one or more organizations are involved there can be differences in the
vision of interest.
 Transparency: It can be hacked if the organization becomes corrupt.
Organizations may hide information from the users.
 Vulnerability: If few nodes are getting compromised there is a greater chance
of vulnerability in this blockchain
Use Cases: It has high potential in businesses, banks, and other payment
processors. Food tracking of the organizations frequently collaborates with their
sectors making it a federated solution ideal for their use. Examples of consortium
Blockchain are Tendermint and Multichain.

You might also like