Blockchain Essentials & Dapps
Blockchain Essentials & Dapps
Blockchain Essentials & Dapps
DApps
Course Outcomes
Student will be able to illustrate the Blockchain terminologies with its applications.- L2
Student will be able to analyze the working principles of Blockchain -L2
Student will be Able to comprehend the principles and methodologies used in Bitcoin –L2
Student will be Able to create Ethereum Network, Wallets, Nodes, Smart contract &
DApps –L4
Student will be Able to develop Blockchain Based Application Architecture using
Hyperledger –L3
CO-PO Mapping
PO 1 2 3 4 5 6 7 8 9 10 11 12 PSO1 PSO2
CO1 3 3
CO2 2
3 3
CO3 2
3 3
CO4 2 2 2
2 2 3 2 2 3
CO5 2 2 3 2 2 2 2 2
3
14IS71 3 2 3 2 2 2 2 2
3
Teaching Methodology:
A distributed system is
a collection of independent computers
that appears to its users
as a single coherent system.
... or ...
as a single system.
Resource Sharing and the Web
Naming
Access control
Security
Availability
Performance
Mutual exclusion of users, fairness
Consistency in some cases
Transparencies
2 2 2
(“prepare”,1) . (“accept”,1 ,v1) . .
. . .
.(“ack”,1, ^, ^) . .
n n n
(“accept”,1 ,v1)
decide v1
Practical implementations
State Variables
Deterministic Commands
Consensus
Termination
Validity
Integrity
Agreement
Ensures procedures are called in same
order across all machines
Fault Tolerant State Machines
Implement the state machine on multiple processors.
State Machine Replication
Each starts in the same initial state
Executes the same requests
Requires consensus to execute in same order
Deterministic, each will do the exact same thing
Produce the same output.
state machine replication
Blockchain 1.0
Introduced with the invention of bitcoin and is basically
used for cryptocurrencies.
Categorize Generation 1 of blockchain technology to
only include cryptographic currencies.
All alternative coins and bitcoin fall into this category.
This includes core applications such as payments and
applications.
This generation started in 2009 when Bitcoin was
released and ended in early 2010.
Tiers of blockchain technology
Blockchain 2.0
Generation 2.0 blockchains are used by financial services
and contracts are introduced in this generation.
This includes various financial assets, for example
derivatives, options, swaps, and bonds.
Applications that are beyond currency, finance, and
markets are included at this tier.
Ethereum, Hyperledger, and other newer blockchain
platforms are considered part of Blockchain 2.0.
This generation started when ideas related to using
blockchain for other purposes started to emerge in
2010.
Tiers of blockchain technology
Blockchain 3.0
Generation 3 blockchains are used to implement applications beyond the
financial services industry
Used in more general-purpose industries such as government, health, media,
the arts, and justice.
Again, as in Blockchain 2.0, Ethereum, Hyperledger, and newer blockchains
with the ability to code smart contracts are considered part of this blockchain
technology tier.
This generation of blockchain emerged around 2012 when multiple
applications of blockchain technology in different industries were researched.
Tiers of blockchain technology
Generation X (Blockchain X)
This is a vision of blockchain singularity where one day we will have a
public blockchain service available that anyone can use just like the Google
search engine
It will provide services in all realms of society.
This is a public open distributed ledger with general purpose rational agents
(Machina Economicus) running on blockchain, making decisions and
interacting with other intelligent autonomous agents on behalf of humans
and regulated by code instead of law or paper contracts.
Machina Economicus is a concept which comes from the field of Artificial
Intelligence (AI) and computational economics. It can be defined as a
machine that makes logical and perfect decisions.
Types of blockchain-Public blockchains
Blockchains are open to the public
Anyone can participate as a node in the decision-making process.
Users may or may not be rewarded for their participation.
Ledgers are not owned by anyone and are publicly open for anyone to
participate in.
All users of the permission-less ledger maintain a copy of the ledger
on their local nodes and use a distributed consensus mechanism in
order to reach a decision about the eventual state of the ledger.
Public blockchains are also known as permission-less ledgers.
Types of blockchain-Private blockchains
Private blockchains as the name implies are private
Open only to a consortium or group of individuals or
organizations that has decided to share the ledger among
themselves
Types of blockchain-Semi-private blockchains
Shared ledger
This is generic term that is used to describe any application or database that
is shared by the public or a consortium.
Fully private and proprietary blockchains
These blockchains perhaps have no mainstream application as they deviate
from the core idea of decentralization in blockchain technology.
Nonetheless in specific private settings within an organization there might
be a need to share data and provide some level of guarantee of the
authenticity of the data.
For example, for collaboration and sharing data between various
government departments.
Types of blockchain
Tokenized blockchains
These blockchains are standard blockchains that generate
cryptocurrency as a result of a consensus process via mining or
via initial distribution
Tokenless blockchains
These are probably not real blockchains because they lack the
basic unit of transfer of value
These are still valuable in situations where there is no need to
transfer value between nodes and only sharing some data
among various already trusted parties is required.
Consensus in blockchain
Consensus is basically a distributed computing concept that has
been used in blockchain in order to provide a means of agreeing to a
single version of truth by all peers on the blockchain network.
Two categories of consensus mechanism exist:
Proof-based, leader-based, or the Nakamoto consensus whereby
a leader is elected and proposes a final value
Byzantine fault tolerance-based, which is a more traditional
approach based on rounds of votes
Proof of Work
Decentralization
no need for a trusted third party or intermediary to
validate transactions
Transparency and trust
blockchains are shared and everyone can see what is on
the blockchain
Immutability
Once the data has been written to the blockchain, it is
extremely difficult to change it back
Benefits of blockchain
High availability
data is replicated and updated on each and every node
Highly secure
All transactions on a blockchain are cryptographically secured
and provide integrity
Simplification of current paradigms
Blockchain can serve as a single shared ledger among
interested parties
Benefits of blockchain
Faster dealings
Blockchain does not require a lengthy process of
verification, reconciliation, and clearance
Because a single version of agreed upon data is already
available on a shared ledger
Cost saving
No third party or clearing houses are required in the
blockchain model
Challenges and limitations of blockchain
technology
Scalability
Adaptability
Regulation
Relatively immature technology
Privacy
References