Types of Blockchain - and - Consensus
Types of Blockchain - and - Consensus
Permissioned Blockchain
• participants of the network are already known
and trusted.
• no need to use a distributed consensus
mechanism; instead, an agreement protocol is
TRACE KTU
used to maintain a shared version of the truth
about the state of the records on the block chain.
• For verification of transactions on the chain, all
verifiers are already preselected by a central
authority and, typically, there is no need for a
mining mechanism.
Permissionless Block chain
• known as trustless or public blockchains,
• are available to everyone to participate in the
blockchains process that use to validate
TRACE KTU
transactions and data.
• used in the network where high transparency
is required.
TRACE KTU
1. Public Blockchain
TRACE KTU
• Not all consensus mechanisms are suitable for
all types of blockchains.
• Consensus is a process of achieving
agreement between distrusting nodes on the
final state of data.
• To achieve consensus, different algorithms
TRACE KTU
are used.
• This process of attaining agreement on a
common state or value among multiple nodes
despite the failure of some nodes is known as
distributed consensus.
Consensus mechanism
• set of steps that are taken by most or all
nodes in a blockchain to agree on a proposed
state or value.
TRACE KTU
Faults
• Fail-stop faults:
• fault occurs when a node merely has crashed.
• Fail-stop faults are the easier ones to deal with
TRACE KTU
of the two fault types.
• Paxos or the RAFT protocol are used to deal
with this type of fault.
• These faults are simpler to deal with.
• Byzantine faults:
• faulty node exhibits malicious or inconsistent
behavior arbitrarily.
• difficult to handle since it can create confusion
TRACE KTU
due to misleading information.
• This can be a result of an attack by adversaries, a
software bug, or data corruption.
• SMR protocols such as Practical Byzantine Fault
Tolerance (PBFT) was developed to address this
second type of faults
Requirements
• Agreement: All honest nodes decide on the same value.
• Integrity: This is a requirement that no node can make the
decision more than once in a single consensus cycle.
• Validity: The value agreed upon by all honest nodes must
be the same as the initial value proposed by at least one
TRACE KTU
honest node.
• Fault tolerant: The consensus algorithm should be able to
run correctly in the presence of faulty or malicious nodes
(Byzantine nodes).
• Termination: All honest nodes terminate the execution of
the consensus process and eventually reach a decision.
Types of consensus mechanisms
• Proof-based consensus mechanisms:
• nodes compete in a leader-election lottery, and the
node that wins proposes the final value.
• The algorithm works on the principle of providing proof
TRACE KTU
of some work and the possession of some authority or
tokens to win the right of proposing the next block.
• For example, the PoW mechanism used in Bitcoin
where a miner who solves the computational puzzle as
proof of computational effort expended wins the right
to add the next block to the blockchain.
• Traditional fault tolerance-based:
• designed to ensure that a distributed system can reach
agreement on a shared value or decision, even when some
of the nodes in the system are faulty or fail.
• The most widely used traditional fault tolerant consensus
TRACE KTU
mechanism is the Byzantine fault tolerance (BFT) algorithm
• This type of consensus mechanism relies on a simple
scheme of nodes that publish and verify signed messages in
a number of phases.
• Eventually, when a certain number of messages are
received over a period of rounds (phases), then an
agreement is reached
Proof of Work (PoW):
• This type of consensus mechanism relies on
proof that adequate computational resources
have been spent before proposing a value for
acceptance by the network.
TRACE KTU
• This scheme is used in Bitcoin, Litecoin, and
other cryptocurrency blockchains
Proof of Stake (PoS)