0% found this document useful (0 votes)
11 views52 pages

Module 1 - FBT (Material 1)

The document provides an overview of blockchain technology, including its architecture, core components, and various consensus mechanisms like Practical Byzantine Fault Tolerance and Proof of Work. It discusses challenges such as scalability, security, and energy consumption, as well as applications of blockchain technology. Additionally, it highlights the importance of widespread adoption for efficiency and addresses issues like illegal activities and workforce availability in the blockchain sector.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views52 pages

Module 1 - FBT (Material 1)

The document provides an overview of blockchain technology, including its architecture, core components, and various consensus mechanisms like Practical Byzantine Fault Tolerance and Proof of Work. It discusses challenges such as scalability, security, and energy consumption, as well as applications of blockchain technology. Additionally, it highlights the importance of widespread adoption for efficiency and addresses issues like illegal activities and workforce availability in the blockchain sector.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Introduction

• Blockchain is a distributed, immutable ledger that facilitates the process of recording transactions
and tracking assets in a business network. An asset can be tangible (a house, car, cash, land) or
intangible (intellectual property, patents, copyrights, branding).

• Virtually anything of value can be tracked and traded on a blockchain network, reducing risk and
cutting costs for all involved.

Blockchain Blockchain Network


Introduction
Blockchain Architecture
Core components of blockchain architecture :

Node: user or computer within the blockchain architecture (each has an independent copy of the whole
blockchain ledger)

Transaction: smallest building block of a blockchain system (records, information, etc.) that serves as the
purpose of blockchain

Block: a data structure used for keeping a set of transactions which is distributed to all nodes in the network

Chain: a sequence of blocks in a specific order

Miners: specific nodes which perform the block verification process before adding anything to the
blockchain structure

Consensus: a set of rules and arrangements to carry out blockchain operations.


Blockchain Architecture
Hardware/Infrastructure Layer:

• In this layer, miners will be creating new blocks using


specialized equipment (GPU, ventilator, stabilizer) and
validators running nodes for block mining.

• The infrastructure layer also includes virtual machines,


which act like operating systems and host smart contracts.

• Blockchains often have native virtual machines, such as the


Ethereum Virtual Machine for Ethereum.
Blockchain Architecture
Data Layer:

• The data layer of blockchain technology is primarily


concerned with data storage and structure. It houses the
blockchain, a linear succession of blocks that store
transaction information.

• Every transaction is accompanied by a digital signature, a


cryptographic mechanism that validates the control of the
correct private key without revealing it, thus ensuring
security.
Blockchain Architecture
Network Layer:

The network layer enables effective discovery and


interaction among peers called nodes. Typically, a node
locates a bootnode, which scans for available peers and
initiates bonding. As information circulates, it’s safeguarded
through a Trusted Execution Environment (TEE) to maintain
integrity.
Blockchain Architecture
Consensus Layer:

The protocol layer sets the rules for blockchain


participation, with the consensus mechanism being its key
component. Consensus ensures agreement among nodes for
block mining and processing and outlines validator
requirements, varying across proof-of-work, proof-of-stake,
and other consensus mechanisms.
Blockchain Architecture
Application Layer:

The application layer is the end product of the entire


system offering specific products for the users, i.e., wallet,
lending, staking, etc. The application layer starts with a smart
contract, a programmable code that governs state transitions.
Challenges
Lack of Adoption:
Blockchains work better and more efficiently when used by a large network of users.
According to APQC, only 29% of businesses are actively experimenting with or using blockchain.
Blockchains will remain inefficient and scalable without widespread usage.
Challenges
Scalability:
Blockchain networks can be slow and inefficient due to the high computational requirements
needed to validate transactions. As the number of users, transactions, and applications increases, the
ability of blockchain networks to process and validate them in a timely way becomes strained.
Challenges
Privacy:
In blockchain based real-time applications the clients information won't be completely private
if it's all preserved on a public ledger. Here, blockchain technology in private or consortium settings
may be used.
Challenges
Security:
Even while blockchain-based apps, systems, and businesses are more secure than traditional
computer systems, hackers may still be able to access them. Not just having the government protect our
privacy is the solution. Blockchain self-sovereign IDs will enable us to gather and control our data.
Challenges
Rising Cost of Blockchain Implementation:
Costs associated with implementation may be too high for some businesses. Even though most
existing solutions are free, recruiting competent software engineers specializing in blockchain
development, paying licensing fees if one wishes to switch to a for-profit software version demand a
considerable investment.
Challenges
Illegal Activities:
The proliferation of fraudulent enterprises and other bad actors looking to take advantage of
naive investors has been encouraged by the absence of strict regulations and the fact that blockchain
technology is still in its infancy. Many prominent cryptocurrency exchange thefts including Mt. Gox
bitcoin hack occurred in 2014.
Challenges
Low Workforce Availability:
The nonfungible token (NFT) and DeFi industries have experienced a sharp increase in
nonfungible tokens and projects over the past year, which has caused problems in the labor market.
According to current data, as startups and established companies search for top talent, the demand for
blockchain talent has surged by more than 300%.
Challenges
Energy Consumption:
The process of validating transactions on a blockchain network requires a lot of computing
power, which in turn requires a lot of energy. This has led to concerns about carbon emissions and the
environmental impact of blockchain technology.
Applications
Blockchain Architecture
Application Layer:

The application layer is the end product of the entire


system offering specific products for the users, i.e., wallet,
lending, staking, etc. The application layer starts with a smart
contract, a programmable code that governs state transitions.
Byzantine Fault Tolerance
Byzantine General Problem:
• The classic Byzantine Generals Problem is a well-known problem in distributed systems
that illustrates the challenges of achieving consensus in a network with faulty or malicious
nodes.
• The problem is as follows: a group of Byzantine generals are surrounding a city and must
coordinate their attack. The generals can only communicate with each other through
messengers, and some of the generals may be traitors who will send false information to
the other generals.
Byzantine Fault Tolerance
Byzantine General Problem:
• How can a loyal generals agree on a plan that is resilient to the traitors attempt to disrupt
the process?
• Byzantine faults in blockchain network may typically take the form of conflicting
information regarding transaction data, which may involve a miner or validator proposing
an invalid block or attempting to validate an invalid transaction.
• Therefore, the purpose of consensus protocols is not to eliminate such faults and achieve
100% Byzantine fault tolerance.
Practical Byzantine Fault Tolerance
Practical Byzantine Fault Tolerance (PBFT) is designed to be fast and efficient while still
providing strong Byzantine Fault Tolerance. In PBFT, nodes are divided into three groups: a leader
node, a set of replica nodes, and a set of client nodes. In the PBFT, consensus happens through the
following five steps:
• The client makes a request and sends it to the leader node (or primary node).
• The primary node broadcasts the request to all the secondary(backup) nodes. It is called the
pre-prepare phase.
• Then every node (primary and secondary) sends a prepare message to all other nodes.
• Once every node receives (n/3)+1 prepare messages, it sends a commit message to all other
nodes and commits the changes made by the client's request.
• Once every node receives (n/3)+1 commit messages from other nodes, it sends a reply to the
client.
Practical Byzantine Fault Tolerance
In the Practical Byzantine Fault Tolerance (PBFT), consensus happens through the following
five steps:
Practical Byzantine Fault Tolerance
Advantages:
• Energy Efficient – PBFT does not need to compute complex mathematical problems to
reach a consensus.
• Faster transaction finality – PBFT does not require any confirmations, it is much more efficient than
other consensus algorithms.
• Low reward variance – In PBFT, every node is participating in processing the client's request.
Disadvantages:
• Sybil attacks – A distributed network using PBFT is susceptible to Sybil attacks if one entity controls
many nodes in the network.
• Scalability – As the number of nodes in the network increases, communication overhead (messages
sent to other nodes) increases.
Federated Byzantine Agreement
Each node in a federated network that is structured into FBA manages its own local state and
interacts with other nodes to reach a consensus. The fundamental principle of FBA is that
each node simply needs to agree on a set of rules for validating and ordering transactions,
rather than having to agree on the state of the system as a whole.
• Each participating node keeps track of its own local state, which includes a copy of the
shared ledger and a list of other nodes in the network that it trusts.
• Any node in the network has the ability to put forth a new transaction for the shared
ledger.
• Following the submission of a transaction proposal, the federated network votes to decide
whether the transaction should be approved or disapproved.
Federated Byzantine Agreement
• FBA uses the idea of “quorum slices” to establish voting thresholds. A subset of trusted
nodes necessary for a transaction to be accepted is known as a quorum slice. Every node
has its own quorum slice, which when combined with all other quorum slices creates the
global quorum.
• Voting is done by nodes inside their respective quorum slices to reach agreements and
validate transactions. The transaction is broadcast to the network as accepted if a node
receives enough affirmative votes from its quorum slice to deem the transaction to be
approved.
• Each network node adds a transaction to the shared ledger after it has been verified. The
shared ledger is maintained uniformly throughout the network by having all nodes update
their local state accordingly.
Federated Byzantine Agreement
Advantages:
• Open membership and decentralized control
• No gatekeeper or central authority — individual nodes can decide whom they trust for
information.
• Low latency as transactions can be closed in just a few seconds

Disadvantages:
• One of the main limitations of FBA is that it is more complex than PBFT, as it requires
nodes to manage multiple sub-networks and consensus mechanisms.
Asynchronous Byzantine Agreement
• Asynchronous Byzantine Agreement is designed to achieve consensus among a group of
nodes even when the network communication is prone to unpredictable delays and
message losses or other asynchronous behaviors.
• It aims to allow loyal nodes to agree on a common decision and further ensuring the
consensus reached in a fault-tolerant manner.
• Asynchronous Byzantine Agreement protocol works in multiple rounds, allowing nodes to
exchange messages and progressively converge towards a shared decision.
Asynchronous Byzantine Agreement
• Asynchronous Byzantine Agreement protocol has the following steps
• Initialization
• Proposal & Broadcasting
• Message Exchange
• Update & Broadcasting
• Iteration
• Decision
Asynchronous Byzantine Agreement

Reference:Bracha,G.(1987).Asynchronous Byzantine Agreem entProtocols.Inf.Com put.,75,130-143.


Asynchronous Atomic Broadcast Protocol (AAP)
• Ensures reliable and consistent message delivery in asynchronous distributed systems, like
blockchain networks. Guarantees that all processes receive messages in the same order, even in the
presence of failures.
Working Mechanism:
• Message Sending:
A node sends a message to a designated sequencer.
• Sequencing:
The sequencer assigns a unique sequence number to each message. It broadcasts the message
along with its sequence number to all nodes.
• Message Delivery:
Nodes deliver messages in sequence number order. If a node misses a message, it requests
retransmission from other nodes.
GARAY Model
• GARAY model refers to the Bitcoin Backbone protocol, also known as the "Bitcoin
Backbone" or the "Garay-Kiayias-Leonardos (GKL) model".
• This model formally analyzes the core security guarantees of consensus mechanisms in
blockchains like Bitcoin and Ethereum.
• Properties of Bitcoin Backbone protocol:
 Common Prefix
 Chain Quality
 Chain Growth

Reference: Garay, Juan A. et al. “The Bitcoin Backbone Protocol: Analysis and Applications.” IACR
Cryptol. ePrint Arch. 2014 (2015): 765.
GARAY Model
Double Spending:
• A crucial issue in Bitcoin (or any electronic payment system) is the need to
prevent double-spending attacks.
• In the case of Bitcoin, a double-spending attack can occur when an attacker first
transfer funds to an account to obtain goods or services from the account holder,
and then manipulates the transaction history to reverse the initial credit to the
account holder.
• This allows the attacker to retain their bitcoin while still benefiting from the goods
or services received, enabling them to spend the same bitcoin elsewhere.
GARAY Model
Double Spending:
GARAY Model
• Common Prefix: The common prefix property Qcp with parameter k ∈ N states that for any
pair of honest players P1, P2 adopting the chains C1, C2 then it holds as long as removing k
blocks from P1 honest party’s chain results to a prefix of P2 honest party’s chain.
• Chain Quality: The chain quality property Qcq with parameters µ ∈ R and l ∈ N states that
for any honest party P with chain C it holds that for any consecutive blocks of C the ratio
of honest blocks is at least µ.
• Chain Growth: The chain growth property Qcg with parameters τ ∈ R and s ∈ N states that
for any honest party P that has a chain C it holds that after any s consecutive rounds it
adopts a chain that is at least τ · s blocks longer than C.
GARAY Model

Overview of the basic operation of the Bitcoin backbone protocol


GARAY Model
Proof of Work (PoW):
• The Proof of Work consensus algorithm involves solving a computationally challenging
puzzle in order to create new blocks in the Bitcoin blockchain. The process is known as
‘mining’, and the nodes in the network that engages in mining are known as ‘miners’.

• The Proof of Work consensus algorithm involves solving a computationally challenging


puzzle in order to create new blocks in the Bitcoin blockchain. The process is known as
‘mining’, and the nodes in the network that engages in mining are known as ‘miners’.
GARAY Model
Proof of Work (PoW):
Miners collect a set of transactions
tx = (tx1, tx2, tx3, …) SHA‐256 (.)

Then do “work”
ctr := 0; while Hash(ctr; Hash(𝜏, tx)) > T do ctr++
T: block’s “target” (difficulty level)
(T= 000000000000000000049ca90000000000000000000000000000000000000000)

If while loop terminates “broadcast” (𝜏, ctr, tx)


(new “block”: state, counter, set of transactions)
GARAY Model
Proof of Work (PoW):
In the receiver side,

if a vector (𝜏’, ctr’ tx’) is received, check


(𝜏 = 𝜏’) n (Hash(ctr’; Hash(𝜏, tx’)) <= T)

Extend the transaction ledger


𝜏:= 𝜏’ || tx’
GARAY Model
Proof of Stake (PoS):
• Proof-of-stake reduces the amount of computational work needed to verify blocks and
transactions.
• Proof-of-stake changes the way blocks are verified using the machines of coin owners, so
there doesn't need to be as much computational work done.
• Validators are selected randomly to confirm transactions and validate block information.
This system randomizes who gets to collect fees rather than using a competitive rewards-
based mechanism like proof-of-work.
GARAY Model
Proof of Stake (PoS) vs Proof of Work:

Proof of Stake Proof of Work


Block creators are called validators Block creators are called miners

Participants must own coins or tokens to Participants must buy equipment and
become a validator energy to become a miner

Energy efficient Not energy efficient


Robust security due to expensive upfront
Security through community control
requirement
Validators receive transactions fees as
Miners receive block rewards
rewards
Basis of Bitcoin
Dapps
All the best . . .

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy