KEMBAR78
Distributed Consensus | PDF | Distributed Computing | Applications Of Cryptography
0% found this document useful (0 votes)
43 views9 pages

Distributed Consensus

Uploaded by

Meenakshi Rajput
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views9 pages

Distributed Consensus

Uploaded by

Meenakshi Rajput
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Distributed Consensus

 In distributed environment , there need a way to


come to consensus
 All financial transactions need to agreed by a
community
 Unless community agrees on that transaction,
possibility exist that someone is doing some kind of
false transactions
 e.g. with 100rs it’s not possible to do two transactions 1.
Rs. 60/ -& 2. Rs.80/-
 Same note is used multiple timed : double spending
Distributed Consensus
Need to ensure that : double spending does not
happen
This is done through a consensus mechanism among
all participants
A way to verify that person who initiated transaction
has solved some kind of puzzle.
Other participants can see, verify this transaction by
checking whether puzzle is solved correctly
Major requirement of crypto currency: open network
Requirements of cryptocurrency
 Any one can use for financial transaction
 Free from central authority like bank, govt.
 All transactions should be valid
Challenging Problem!!
• Nobody to monitor that financial transactions are correct
• Network is open
Consensus algorithm is based on message passing
– Need identity of others(works only within closed system)
– As network is open, don’t know identity of others,
message passing does not work
Bitcoin proof of work: open consensus
• Bitcoin: A peer to peer electronic cash system
– White paper by Satoshi Nakamoto
– Idea of how to reach consensus without message passing
• Financial transaction are possible in open
market without govt., bank
How it is done??
• Transaction verification need to be done in
decentralized/ distributed manner
• Need a leader to tell that transaction is valid, you add
transaction to your list
Consensus in open network: puzzle solving
Consensus in open network: puzzle
solving
• A person who solves this puzzle will be the leader
• Properties of the puzzle
– Very difficult solve
– Easy to verify
• Other persons will verify easily that this puzzle is
solved correctly
• Different persons may solve puzzle in different
rounds
• Good puzzle can be generated with cryptograhic
hash function
Consensus in open network: puzzle solving

– Where x & y are known priori, it’s difficult to find k


– K is nonce here..
– Once k is found, = y1; y1<=y
• Set of valid transactions are added to a public ledger
• This particular algorithm is known a “proof of work”
in bitcoin
– (certain work is done to find out a solution, that solution
act as a proof)
Bitcoin proof of work : open consensus
• Proof of Work: Nakamoto Consensus
• More emphasis is given on “liveness” than “safety”
Liveness (o/p will be produced within certain amount of time after running a consensus algorithm)
Safety: correct processes will yield the correct output
• Participants may agree on transaction, that is not the final one in a
chain
• consensus Finality over an open network
– Not present in Proof of Work/ Nakamoto consensus
From cryptocurrency to Blockchain
 2011: Litecoin
 2015: Ethereum
 2016 blockchain becomes popular

Why should someone solve this puzzle??


 Hard puzzle
 Needs more computing power to solve it
Bitcoin mining: The key to consensus
• Mining is a process to solve the complex puzzle
• Special nodes are called miners
– Task is propose new blocks – solve the puzzle
– Find the nonce corresponding to a target block hash
– Add solution as a proof of solving a challenge to be the
leader
• Miners collect transactions from different
participants combine them together and form a
block
• Multiple different miners as open network
• (just run the miner application on your system )

You might also like