SlideShare a Scribd company logo
1 of 10
Consensus Models
Barry O’Connor
9th April 2018
When?
1. Permissionless Blockchains
2. Permissioned Blockchains
1. A dynamic way of reaching agreement in a group
2. Not voting – majority rule
3. Consensus – for the good of the group
What?
1. Agreement Seeking: As much agreement from the group as possible.
2. Collaborative: Aim to work together to achieve a result that puts the
best interest of the group first.
3. Cooperative: Should not put their own interests first and work as a team
more than individuals.
4. Egalitarian: A group trying to achieve consensus should be as egalitarian
as possible.
5. Inclusive: As many people as possible should be involved in the
consensus process.
6. Participatory: It should be such that everyone should actively participate
in the the overall process.
Byzantine Generals Problem(BGP)
1. A General
2. His lieutenants
3. Traitors
• The generals are collectively known as processes.
• The general who initiates the order is the source process, and the orders sent to the other processes are messages.
• Traitorous generals and lieutenants are faulty processes, and loyal generals and lieutenants are correct processes.
• The order to retreat or attack is a message with a 1 or 0.
• In general, a solution to agreement problems must pass three tests: termination, agreement, and validity. As applied to the
Byzantine General's problem, these three tests are:
1. A solution has to guarantee that all correct processes eventually reach a decision regarding the value of the order they have
been given.
2. All correct processes have to decide on the same value of the order they have been given.
3. If the source process is a correct process, all processes have to decide on the value that was originally given by the source
process.
https://people.eecs.berkeley.edu/~luca/cs174/byzantine.pdf
How do you solve it?
1.Proof for work
2.Proof of stake
3.Delegated proof of stake
4.Delegated Byzantine fault tolerance
1. Proof of work
BGP
1. “Attack tonight”
2. Add a NONCE to the text – a random hex
3. They hash the text with the nonce and see the result. They only
decide to share messages that start with “00000”.
4. If the hash is met, they send the messages. If not, they will
randomly change the nonce until the hash works.
5. If it is intercepted and changed, a general can look for the 00000.
This is BTC Mining using cryptographic puzzles.
2. Proof of stake
1. The validators lock up some of their coins as stake.
2. After that, they will start validating the blocks.
• Meaning, when they discover a block which they think can be added to the
chain, they will validate it by placing a bet on it.
3. Validators take turns proposing and voting on the next block.
4. If the block gets appended to the chain, then the validators will get
a reward proportionate to their bets.
Ethereum is moving to this model with Casper.
3. Delegated proof of stake
1. At the start of every round, 21 block producers(Witnesses) are chosen.
• Top 20 are automatically chosen while the 21st one is chosen proportional to the
number of their votes relative to the other producers.
2. The producers are then shuffled around using a pseudorandom number
derived from the block time.
• This is done to ensure that a balance connectivity to all other producers is
maintained.
3. To ensure that regular block production is maintained and that block
time is kept to 3 seconds, producers are punished for not participating by
being removed from consideration.
4. A producer has to produce at least one block every 24 hours to be in
consideration.
EOS is using this to scale up to millions of TPS
4. Delegated Byzantine fault tolerance
1. One of the delegates is randomly chosen as a speaker.
1. The Speaker then look at all the demands of the citizens and creates a law.
2. They then calculate a “Happiness Factor” of these laws to see if the number is enough to
satisfy the citizen’s needs or not.
3. They then pass that down to the delegates.
2. The delegates then individually check the Speaker’s calculations.
1. If the the speaker’s number matches the Delegate’s then they give their approval, if not
then they give their disapproval.
2. 66% of the delegates need to give their approval for the law to pass.
3. If the majority is not sealed, then a new leader is chosen and the process starts
again.
4. The citizens are whoever owns tokens aka ordinary nodes.
5. Delegates are the bookkeeping nodes.
The NEO network uses this model
Thank you.

More Related Content

Similar to Consensus models April 2018

ALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptx
ALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptxALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptx
ALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptx
Aman298462
 

Similar to Consensus models April 2018 (11)

ALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptx
ALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptxALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptx
ALTERNATIVE DISPUTE RESOLUTION - BBA LLB 5th Year.pptx
 
Writing A Policy Paper. How To Write A Policy Brief
Writing A Policy Paper. How To Write A Policy BriefWriting A Policy Paper. How To Write A Policy Brief
Writing A Policy Paper. How To Write A Policy Brief
 
Free Example Short Story Essay
Free Example Short Story EssayFree Example Short Story Essay
Free Example Short Story Essay
 
Environment Day Essay In Punjabi. Online assignment writing service.
Environment Day Essay In Punjabi. Online assignment writing service.Environment Day Essay In Punjabi. Online assignment writing service.
Environment Day Essay In Punjabi. Online assignment writing service.
 
Mexico Economy Essay
Mexico Economy EssayMexico Economy Essay
Mexico Economy Essay
 
Cover Page For Essay - The Writing Center.
Cover Page For Essay - The Writing Center.Cover Page For Essay - The Writing Center.
Cover Page For Essay - The Writing Center.
 
Ivy League Personal Statement Examples - Sanox
Ivy League Personal Statement Examples - SanoxIvy League Personal Statement Examples - Sanox
Ivy League Personal Statement Examples - Sanox
 
How a bill becomes a law
How a bill becomes a lawHow a bill becomes a law
How a bill becomes a law
 
Free Printable Lined Paper For Letter Writing - Get Wh
Free Printable Lined Paper For Letter Writing - Get WhFree Printable Lined Paper For Letter Writing - Get Wh
Free Printable Lined Paper For Letter Writing - Get Wh
 
011110 Econ Free Markets 50m
011110 Econ Free Markets 50m011110 Econ Free Markets 50m
011110 Econ Free Markets 50m
 
Anti-Money Laundering - Ashrith Barthur, Security Scientist, H2O.ai
Anti-Money Laundering - Ashrith Barthur, Security Scientist, H2O.aiAnti-Money Laundering - Ashrith Barthur, Security Scientist, H2O.ai
Anti-Money Laundering - Ashrith Barthur, Security Scientist, H2O.ai
 

Recently uploaded

Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
daisycvs
 
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
lizamodels9
 
Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000
Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000
Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000
dlhescort
 
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Sheetaleventcompany
 
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
dollysharma2066
 
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
amitlee9823
 
Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 

Recently uploaded (20)

Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
 
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
 
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLBAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
 
Value Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsValue Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and pains
 
Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1Katrina Personal Brand Project and portfolio 1
Katrina Personal Brand Project and portfolio 1
 
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort ServiceEluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Eluru Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
 
Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000
Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000
Call Girls In Majnu Ka Tilla 959961~3876 Shot 2000 Night 8000
 
Business Model Canvas (BMC)- A new venture concept
Business Model Canvas (BMC)-  A new venture conceptBusiness Model Canvas (BMC)-  A new venture concept
Business Model Canvas (BMC)- A new venture concept
 
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
Chandigarh Escorts Service 📞8868886958📞 Just📲 Call Nihal Chandigarh Call Girl...
 
JAYNAGAR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
JAYNAGAR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLJAYNAGAR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
JAYNAGAR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
 
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
 
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60% in 6 Months
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60%  in 6 MonthsSEO Case Study: How I Increased SEO Traffic & Ranking by 50-60%  in 6 Months
SEO Case Study: How I Increased SEO Traffic & Ranking by 50-60% in 6 Months
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 May
 
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
👉Chandigarh Call Girls 👉9878799926👉Just Call👉Chandigarh Call Girl In Chandiga...
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
Call Girls Service In Old Town Dubai ((0551707352)) Old Town Dubai Call Girl ...
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
Call Girls Electronic City Just Call 👗 7737669865 👗 Top Class Call Girl Servi...
 
Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Nelamangala Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 

Consensus models April 2018

  • 2. When? 1. Permissionless Blockchains 2. Permissioned Blockchains 1. A dynamic way of reaching agreement in a group 2. Not voting – majority rule 3. Consensus – for the good of the group
  • 3. What? 1. Agreement Seeking: As much agreement from the group as possible. 2. Collaborative: Aim to work together to achieve a result that puts the best interest of the group first. 3. Cooperative: Should not put their own interests first and work as a team more than individuals. 4. Egalitarian: A group trying to achieve consensus should be as egalitarian as possible. 5. Inclusive: As many people as possible should be involved in the consensus process. 6. Participatory: It should be such that everyone should actively participate in the the overall process.
  • 4. Byzantine Generals Problem(BGP) 1. A General 2. His lieutenants 3. Traitors • The generals are collectively known as processes. • The general who initiates the order is the source process, and the orders sent to the other processes are messages. • Traitorous generals and lieutenants are faulty processes, and loyal generals and lieutenants are correct processes. • The order to retreat or attack is a message with a 1 or 0. • In general, a solution to agreement problems must pass three tests: termination, agreement, and validity. As applied to the Byzantine General's problem, these three tests are: 1. A solution has to guarantee that all correct processes eventually reach a decision regarding the value of the order they have been given. 2. All correct processes have to decide on the same value of the order they have been given. 3. If the source process is a correct process, all processes have to decide on the value that was originally given by the source process. https://people.eecs.berkeley.edu/~luca/cs174/byzantine.pdf
  • 5. How do you solve it? 1.Proof for work 2.Proof of stake 3.Delegated proof of stake 4.Delegated Byzantine fault tolerance
  • 6. 1. Proof of work BGP 1. “Attack tonight” 2. Add a NONCE to the text – a random hex 3. They hash the text with the nonce and see the result. They only decide to share messages that start with “00000”. 4. If the hash is met, they send the messages. If not, they will randomly change the nonce until the hash works. 5. If it is intercepted and changed, a general can look for the 00000. This is BTC Mining using cryptographic puzzles.
  • 7. 2. Proof of stake 1. The validators lock up some of their coins as stake. 2. After that, they will start validating the blocks. • Meaning, when they discover a block which they think can be added to the chain, they will validate it by placing a bet on it. 3. Validators take turns proposing and voting on the next block. 4. If the block gets appended to the chain, then the validators will get a reward proportionate to their bets. Ethereum is moving to this model with Casper.
  • 8. 3. Delegated proof of stake 1. At the start of every round, 21 block producers(Witnesses) are chosen. • Top 20 are automatically chosen while the 21st one is chosen proportional to the number of their votes relative to the other producers. 2. The producers are then shuffled around using a pseudorandom number derived from the block time. • This is done to ensure that a balance connectivity to all other producers is maintained. 3. To ensure that regular block production is maintained and that block time is kept to 3 seconds, producers are punished for not participating by being removed from consideration. 4. A producer has to produce at least one block every 24 hours to be in consideration. EOS is using this to scale up to millions of TPS
  • 9. 4. Delegated Byzantine fault tolerance 1. One of the delegates is randomly chosen as a speaker. 1. The Speaker then look at all the demands of the citizens and creates a law. 2. They then calculate a “Happiness Factor” of these laws to see if the number is enough to satisfy the citizen’s needs or not. 3. They then pass that down to the delegates. 2. The delegates then individually check the Speaker’s calculations. 1. If the the speaker’s number matches the Delegate’s then they give their approval, if not then they give their disapproval. 2. 66% of the delegates need to give their approval for the law to pass. 3. If the majority is not sealed, then a new leader is chosen and the process starts again. 4. The citizens are whoever owns tokens aka ordinary nodes. 5. Delegates are the bookkeeping nodes. The NEO network uses this model