0% found this document useful (0 votes)
60 views

Unit 3

This document provides an overview of permissioned blockchains. It defines permissioned blockchains and how they differ from public and private blockchains by maintaining an access control layer. Permissioned blockchains provide additional security over systems like Bitcoin by requiring an access control layer and are favored for applications requiring security, identity, and role definition. The document also discusses how permissioned blockchains work, including controlling participant transactions and roles, and maintaining identities on the network. It provides Smart Contracts and state machine replication as examples of concepts relevant to permissioned blockchains.

Uploaded by

Shailaja
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)
60 views

Unit 3

This document provides an overview of permissioned blockchains. It defines permissioned blockchains and how they differ from public and private blockchains by maintaining an access control layer. Permissioned blockchains provide additional security over systems like Bitcoin by requiring an access control layer and are favored for applications requiring security, identity, and role definition. The document also discusses how permissioned blockchains work, including controlling participant transactions and roles, and maintaining identities on the network. It provides Smart Contracts and state machine replication as examples of concepts relevant to permissioned blockchains.

Uploaded by

Shailaja
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/ 62

Sharad Institute of Technology college of

Engineering, Yadrav-Ichalkaranji
NBA Accredited Programmes
An ‘A’ Grade Institute Accredited by NAAC
Subject - Blockchain
Prepared by
Ms. K S Patil
Assistant Professor
Computer Science & Engineering Department
1
[Unit 3] Permissioned Blockchain
Permissioned model
 Permissioned blockchains can be seen as an additional blockchain security
system, as they maintain an access control layer to allow certain actions to
be performed only by certain identifiable participants.
 User know each other but user may not trust each other.
 For this reason, these blockchains differ from public and private
blockchains.
 Permissioned blockchains provide an additional level of security over
typical blockchain systems like Bitcoin, as they require an access control
layer.
 These blockchains are favored by individuals who require security,
identity, and role definition within the blockchain.
 Permissioned blockchains are not as common as other public blockchains
like Bitcoin and other cryptocurrencies.
How a Permissioned Blockchain Works
 A blockchain can be built and accessed in multiple ways.
 There are certain other blockchains that need special permissions to read,
access, and write information on them.
 The intrinsic configuration of such blockchains controls the participants'
transactions and defines their roles in which each participant can access
and contribute to the blockchain.
 It may also include maintaining the identity of each blockchain participant
on the network. Such blockchains are called permissioned blockchains.
 Example, Bitcoin, the most popular cryptocurrency blockchain, allows
anyone to participate in the network in the capacity of a full node, or a
contributing miner.
Smart Contract
 A Smart contract is a self-executing contract in which the terms of the
agreement between the buyer and the seller is directly written into lines
of code.
 The code and the agreements contained in the contract exist across a
decentralized and distributed blockchain network.
 Smart contracts allow for trusted agreements and transactions to be
carried out among anonymous parties without the need for a governance,
legal system, central authority or external enforcement mechanism.
 They render transactions to be more transparent and irreversible.
 Blockchain initially developed for the Bitcoin has slowly transcended in to
various other verticals and aspects of technology.
Smart Contract
Benefits of Smart Contracts
 Trust: All documents are encrypted on a shared ledger. Also all the entities or parties
could have access to these documents.
 Autonomous: All third parties become obsolete in the interactions
 Security: All documents are encrypted end to end which makes them near-
impenetrable by unethical methods.
 Redundancy: Documents are duplicated many times over on the blockchain, and
can’t ever be “lost”.
 Savings: Smart contracts save you money by taking out the middleman.
 Speed: These contracts automatically self-execute, saving you precious time.
 Transparency: For organizations like governments, they could add another level of
transparency to dealings.
 Precision: Smart contracts execute the exact code provided, ensuring zero errors.
State machine replication
 State machine replication or state machine approach is a general method for
implementing a fault-tolerant service by replicating servers and coordinating client
interactions with server replicas.
 The approach also provides a framework for understanding and designing replication
management protocols.
State machine replication
Distributed State machine replication
Distributed State machine replication
Distributed State machine replication
Distributed State machine replication
Distributed State machine replication
Distributed State machine replication
State machine replication
 simple technique for implementing a fault-tolerant service in terms of a
State Machine:
1. Place copies of the State Machine on multiple, independent
servers.
2. Receive client requests, interpreted as Inputs to the State
Machine.
3. Choose an ordering for the Inputs.
4. Execute Inputs in the chosen order on each server.
5. Respond to clients with the Output from the State Machine.
6. Monitor replicas for differences in State or Output.
Paxos

 Paxos is a family of protocols for solving consensus in a network


of unreliable processors.
 Consensus is the process of agreeing on one result among a
group of participants.
 This problem becomes difficult when the participants or their
communication medium may experience failures.
 The Paxos family of protocols includes a spectrum of trade-offs
between the number of processors, number of message delays
before learning the agreed value, the activity level of individual
participants, number of messages sent, and types of failures.
Paxos

 Although no deterministic fault-tolerant consensus protocol can


guarantee progress in an asynchronous network, Paxos
guarantees safety (consistency), and the conditions that could
prevent it from making progress are difficult to provoke.
 Paxos is an algorithm that is used to achieve consensus among a
distributed set of computers that communicate via an
asynchronous network.
 Paxos simply selects a single value from one or more values that
are proposed to it and lets everyone know what that value is.
Paxos
Making a Proposal: Proposer Process
Making a Proposal: Acceptor Decision Making
Making a Proposal: Acceptor’s message
Accepting value: Proposer’s decision making
Accepting a value: Accept Message
RAFT Consensus
 Raft is a consensus algorithm designed as an alternative to the Paxos family of
algorithms.
 It was meant to be more understandable than Paxos by means of separation of
logic, but it is also formally proven safe and offers some additional features.
 Raft offers a generic way to distribute a state machine across a cluster of
computing systems, ensuring that each node in the cluster agrees upon the same
series of state transitions.
 Raft achieves consensus via an elected leader.
 A server in a raft cluster is either a leader or a follower, and can be
a candidate in the precise case of an election (leader unavailable).
 The leader is responsible for log replication to the followers.
RAFT Consensus
RAFT Consensus
Electing the Leader: Voting Request
Electing the Leader: Follower Node’s Decision
Making
Electing the Leader: Majority Voting
Multiple Leader Candidate: Current leader
Failure
Multiple Leader Candidate: Current leader
Failure
Multiple Leader Candidate: Current leader
Failure
Multiple Leader Candidate: Current leader
Failure
Multiple Leader Candidate: Simultaneous
Request vote
Multiple Leader Candidate: Simultaneous
Request vote
Multiple Leader Candidate: Simultaneous
Request vote
Multiple Leader Candidate: Simultaneous
Request vote
Committing Entry log
Committing Entry log
Committing Entry log
Committing Entry log
Handling Failure
Byzantine general problem
 is a condition of a computer system, particularly distributed
computing systems, where components may fail and there is imperfect
information on whether a component has failed.
 The term takes its name from an allegory, the "Byzantine Generals
Problem", developed to describe a situation in which, in order to avoid
catastrophic failure of the system, the system's actors must agree on a concerted
strategy, but some of these actors are unreliable.
 In a Byzantine fault, a component such as a server can inconsistently appear
both failed and functioning to failure-detection systems, presenting different
symptoms to different observers.
 It is difficult for the other components to declare it failed and shut it out of the
network, because they need to first reach a consensus regarding which
component has failed in the first place.
Three Byzantine General Problem: Lieutenant
Faulty
Three Byzantine General Problem : Lieutenant
Faulty
Three Byzantine General Problem : Commander
Faulty
Three Byzantine General Problem : Commander
Faulty
Four Byzantine General Problem: Lieutenant
Faulty
Four Byzantine General Problem: Lieutenant
Faulty
Four Byzantine General Problem: Commander
Faulty
Four Byzantine General Problem: Commander
Faulty
Byzantine General Model
Byzantine general problem
Sharad Institute of Technology college of
Engineering, Yadrav-Ichalkaranji
NBA Accredited Programmes
An ‘A’ Grade Institute Accredited by NAAC
Subject – Blockchain
Prepared by
Mr. Umar Mulani
Assistant Professor
Computer Science & Engineering Department
55
Lamport-Shostak-Pease BFT Algorithm
Lamport-Shostak-Pease BFT Algorithm
Lamport-Shostak-Pease BFT Algorithm
Lamport-Shostak-Pease BFT Algorithm
Byzantine fault tolerant system
 Byzantine Faults are the most severe and difficult to deal with.
 Byzantine Fault Tolerance has been needed in airplane engine systems,
nuclear power plants and pretty much any system whose actions depend
on the results of a large amount of sensors.
 Even SpaceX was considering it as a potential requirement for their
systems.
 The algorithm mentioned in the previously is Byzantine Fault Tolerant as
long as the number of traitors do not exceed one third of the generals.
 Other variations exist which make solving the problem easier, including
the use of digital signatures or by imposing communication restrictions
between the peers in the network.
Byzantine fault tolerant system

You might also like