SlideShare une entreprise Scribd logo
1  sur  18
Dilum Bandara, PhD
Dept. of Computer Science & Engineering,
University of Moratuwa
Colombo Blockchain Dev Meetup, Sep 4, 2018
2
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
3
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Bob 1,000
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Bob 1,000
Peter 500
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Peter 500
Rani Plot 123 @ Col 7
Rasa
Mango
Polonnaruwa,
Org. #45781
ID Assets
Alice 500
Bob 1,000
Rani Plot 123 @ Col 7
4
ID Assets
Alice 500
Bob 1,000
Peter 500
A
ID Assets
Alice
Bob
Peter 500
B
ID Assets
Alice 200 500
Bob 1,300 1,000
Peter 500
P
Transfer 300 to Bob
200 500
1,300 1,000
• Alice may initiate request from
her node or any other node
• No of messages increase with no
of ledger copies
5
ID Assets
Alice 500
Bob 1,000
Peter 500
A
ID Assets
Alice
Bob
Peter 500
B
ID Assets
Alice 500
Bob 1,000
Peter 500
P
Transfer 300 to Bob
200 500
1,300 1,000
• Likeliness of failure increases
with no of ledger copies
6
ID Assets
Alice 500
Bob 1,000
Peter 500
A
ID Assets
Alice 200 500
Bob 1,300 1,000
Peter 500
B
ID Assets
Alice 100 500
Bob 1,000
Peter 900 500
P
Transfer 300 to Bob
• Likeliness of attack increases
with no of ledger copies
Blockchain concept focuses on Public-Key Cryptography &
Hashing
Implementation needs to address many distributed system
problems
 Timing & Ordering
 Consensus
 CAP Theorem
Distributed systems research community seems to not care
Lots of others want to solve these problems due to monetary
benefits (e.g., cryptocurrency)
7
8
ID Assets
Alice 200 500
Bob 1,300 1,000
Peter 500
A
ID Assets
Alice 200 500
Bob 1,300 1,000
Peter 500
B
ID Assets
Alice 500
Bob 1,000
Peter 500
P
Transfer 300 to Bob
t = 10 t = 12
Transfer 1,200 to Peter t = 15t = 18
t = 16t = 18
Reject
Accept
• Inconsistent ledger due to
concurrent transactions (TXs)
• Inconsistency increases with no
of ledger copies
 Use of sender’s time to order TXs not reliable
 Clocks aren’t accurate – Drift & skew
 Difficult to sync them & keep them synched
 Sender could change time to game the system
 Global ordering of TXs
 Lamport’s time stamp
 A logical counter that increments when messages
are send & received
 Lamport’s Totally Ordered Multicast
 Vector clocks
 Address “lower logical clock doesn’t guarantee
happened before relationship” in Lamport’s time stamp
 Doesn’t scale with no of ledger copies
9
 No concurrent TXs related to same account in same block
 E.g., Bitcoin, Ethereum, & Hyperledger
 Low transaction throughput – 3-6 TX/Sec
 Store global state in a database (RDBMS or NO-SQL) & proof of
existence on Blockchain
 E.g., Stellar & BigchainDB
 Fully or semi-centralized
 Not quite Blockchain
 Need more scalable concurrent transaction support
 High throughput
 Low Latency
10
 2 Blue armies need to simultaneously attack or retreat
 Blue army have to communicate across area controlled by White army
 White army area  Unreliable communication channel
 Goal – 2 blue armies to reach agreement about attacking
11
Source:
www.ee.surrey.ac.uk/Projects/CAL/networks/
Network-Transport_Application_Layers.htm
Agreement in the judgment or opinion reached by a
group as a whole
 Getting 2 nodes to agree is hard
 Getting many nodes to agree is even harder
Achieving consensus under:
 Unreliable communication – Partition tolerance
 Failed nodes – Fault tolerance
 Misbehaving nodes – Byzantine fault tolerance
12
13
I have a plan – Let’s attack at dawn tomorrow
Splendid idea, A! See you at dawn tomorrow!
Received message. We are ready for the battle.
Received acknowledgement. We are also ready
Blue 1
Blue 2
Gotcha,
I lied
“It’s impossible for a web service to provide following 3
guarantees at the same time” (Eric Brewer, 2000)
 Consistency
 Availability
 Partition-tolerance
14
ID Assets
Alice 500
Bob 1,300 1,000
Peter 200 500
ID Assets
Alice 500
Bob 1,300 1,000
Peter 200 500
Peter = 200
Peter = 500
Nodes loose network
connectivity
 Networks will partition!
 Partition tolerance is mandatory in
distributed systems
So, choose Consistency or
Availability…
 Blockchain needs to be Available
 Ledger needs to be Consistent
 Consensus  Consistency
15
C A
P
Required
 No guarantee that a TX will be included in next block
 Leader election
 Selected leader decides on what goes into block
 Believe leader’s block/ledger as ground truth
 How to elect leader?
 Proof of Authority (PoA) – e.g., VeChain, Kovan (Ethereum testnet)
 Based on trust – e.g., Stellar
 Random leader
 Based on votes – e.g., Hyperledger Fabric & Sawtooth
 Proof of Stake – e.g., Hyperledger Iroha
 Proof of Brain – Steem
 Fast
 Consistency depends on leader
16
 Proof of Work
 Believe 1st one that solves a given puzzle
 Puzzle should be difficult to compute (no short-cuts), but easy check
 E.g., calculating a hash with specific no of 0/1 bits
 Anyone can compete & difficult to game
 Slow & expensive
 Multiple truths may exist for a while
 Longest chain wins
 New truth may replace current truth  Some TXs need to be reversed
 E.g., wait for 6 blocks in Bitcoin to confirm a TX
 TXs need to be fast, persistent, & low cost
17
 Low-latency TX processing
 Inclusion guarantees
 Fast confirmations
 Persistence
 High-throughput Concurrent TX processing
 Low cost
 Truly distributed ledger
 Beyond proof of existence 18
Distributed
System
Problems
Blockchain
 Working systems used & contributed by many
 But
 Slow
 No guarantees
 High cost
 Not scalable

Contenu connexe

Similaire à Blockchain - A Catalyst for Solving Age-old Distributed Systems Problems

Similaire à Blockchain - A Catalyst for Solving Age-old Distributed Systems Problems (20)

Blockchain Introduction
Blockchain IntroductionBlockchain Introduction
Blockchain Introduction
 
01 what is blockchain
01 what is blockchain01 what is blockchain
01 what is blockchain
 
2018 SAI workshop blockchain Kristof Verslype
2018 SAI  workshop blockchain Kristof Verslype2018 SAI  workshop blockchain Kristof Verslype
2018 SAI workshop blockchain Kristof Verslype
 
c13n - Lightning Network - Greek Bitcoin Meetup.pdf
c13n - Lightning Network - Greek Bitcoin Meetup.pdfc13n - Lightning Network - Greek Bitcoin Meetup.pdf
c13n - Lightning Network - Greek Bitcoin Meetup.pdf
 
BlockChain for the Banker
BlockChain for the BankerBlockChain for the Banker
BlockChain for the Banker
 
Blockchain Technology and Cryptocurrency
Blockchain Technology and CryptocurrencyBlockchain Technology and Cryptocurrency
Blockchain Technology and Cryptocurrency
 
crypto ppt.ppt
crypto ppt.pptcrypto ppt.ppt
crypto ppt.ppt
 
fbc final ppt.pptx
fbc final ppt.pptxfbc final ppt.pptx
fbc final ppt.pptx
 
Deja vu Security - Blockchain Security Summit - Adam Cecchetti
Deja vu Security - Blockchain Security Summit - Adam CecchettiDeja vu Security - Blockchain Security Summit - Adam Cecchetti
Deja vu Security - Blockchain Security Summit - Adam Cecchetti
 
A beginners Guide to NFTs.pdf
A beginners Guide to NFTs.pdfA beginners Guide to NFTs.pdf
A beginners Guide to NFTs.pdf
 
Bitcoin (BTC) vs Bitcoin Cash (BCH)
Bitcoin (BTC) vs Bitcoin Cash (BCH)Bitcoin (BTC) vs Bitcoin Cash (BCH)
Bitcoin (BTC) vs Bitcoin Cash (BCH)
 
Token btlcoin btlcoin
Token btlcoin btlcoinToken btlcoin btlcoin
Token btlcoin btlcoin
 
Demystifying Blockchain for businesses
Demystifying Blockchain for businessesDemystifying Blockchain for businesses
Demystifying Blockchain for businesses
 
Blockchain Explained
Blockchain Explained Blockchain Explained
Blockchain Explained
 
Blockchain - A Solution For Nothing
Blockchain - A Solution For NothingBlockchain - A Solution For Nothing
Blockchain - A Solution For Nothing
 
Ethereum Mining How To
Ethereum Mining How ToEthereum Mining How To
Ethereum Mining How To
 
State of Crypto in 2019
State of Crypto in 2019State of Crypto in 2019
State of Crypto in 2019
 
Ethereum Casper Protocol
Ethereum Casper ProtocolEthereum Casper Protocol
Ethereum Casper Protocol
 
Cryptomania! The Past and Future of Digital Distributed Consensus
Cryptomania! The Past and Future of Digital Distributed ConsensusCryptomania! The Past and Future of Digital Distributed Consensus
Cryptomania! The Past and Future of Digital Distributed Consensus
 
Consensus Algorithms - Nakov @ jProfessionals - Jan 2018
Consensus Algorithms - Nakov @ jProfessionals - Jan 2018Consensus Algorithms - Nakov @ jProfessionals - Jan 2018
Consensus Algorithms - Nakov @ jProfessionals - Jan 2018
 

Plus de Dilum Bandara

Plus de Dilum Bandara (20)

Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
Time Series Analysis and Forecasting in Practice
Time Series Analysis and Forecasting in PracticeTime Series Analysis and Forecasting in Practice
Time Series Analysis and Forecasting in Practice
 
Introduction to Dimension Reduction with PCA
Introduction to Dimension Reduction with PCAIntroduction to Dimension Reduction with PCA
Introduction to Dimension Reduction with PCA
 
Introduction to Descriptive & Predictive Analytics
Introduction to Descriptive & Predictive AnalyticsIntroduction to Descriptive & Predictive Analytics
Introduction to Descriptive & Predictive Analytics
 
Introduction to Concurrent Data Structures
Introduction to Concurrent Data StructuresIntroduction to Concurrent Data Structures
Introduction to Concurrent Data Structures
 
Hard to Paralelize Problems: Matrix-Vector and Matrix-Matrix
Hard to Paralelize Problems: Matrix-Vector and Matrix-MatrixHard to Paralelize Problems: Matrix-Vector and Matrix-Matrix
Hard to Paralelize Problems: Matrix-Vector and Matrix-Matrix
 
Introduction to Map-Reduce Programming with Hadoop
Introduction to Map-Reduce Programming with HadoopIntroduction to Map-Reduce Programming with Hadoop
Introduction to Map-Reduce Programming with Hadoop
 
Embarrassingly/Delightfully Parallel Problems
Embarrassingly/Delightfully Parallel ProblemsEmbarrassingly/Delightfully Parallel Problems
Embarrassingly/Delightfully Parallel Problems
 
Introduction to Warehouse-Scale Computers
Introduction to Warehouse-Scale ComputersIntroduction to Warehouse-Scale Computers
Introduction to Warehouse-Scale Computers
 
Introduction to Thread Level Parallelism
Introduction to Thread Level ParallelismIntroduction to Thread Level Parallelism
Introduction to Thread Level Parallelism
 
CPU Memory Hierarchy and Caching Techniques
CPU Memory Hierarchy and Caching TechniquesCPU Memory Hierarchy and Caching Techniques
CPU Memory Hierarchy and Caching Techniques
 
Data-Level Parallelism in Microprocessors
Data-Level Parallelism in MicroprocessorsData-Level Parallelism in Microprocessors
Data-Level Parallelism in Microprocessors
 
Instruction Level Parallelism – Hardware Techniques
Instruction Level Parallelism – Hardware TechniquesInstruction Level Parallelism – Hardware Techniques
Instruction Level Parallelism – Hardware Techniques
 
Instruction Level Parallelism – Compiler Techniques
Instruction Level Parallelism – Compiler TechniquesInstruction Level Parallelism – Compiler Techniques
Instruction Level Parallelism – Compiler Techniques
 
CPU Pipelining and Hazards - An Introduction
CPU Pipelining and Hazards - An IntroductionCPU Pipelining and Hazards - An Introduction
CPU Pipelining and Hazards - An Introduction
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
High Performance Networking with Advanced TCP
High Performance Networking with Advanced TCPHigh Performance Networking with Advanced TCP
High Performance Networking with Advanced TCP
 
Introduction to Content Delivery Networks
Introduction to Content Delivery NetworksIntroduction to Content Delivery Networks
Introduction to Content Delivery Networks
 
Peer-to-Peer Networking Systems and Streaming
Peer-to-Peer Networking Systems and StreamingPeer-to-Peer Networking Systems and Streaming
Peer-to-Peer Networking Systems and Streaming
 
Mobile Services
Mobile ServicesMobile Services
Mobile Services
 

Dernier

Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsRussian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Monica Sydney
 
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
pxcywzqs
 
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsIndian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Monica Sydney
 
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsRussian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Monica Sydney
 
call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7
call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7
call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理
F
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
ydyuyu
 
Abu Dhabi Escorts Service 0508644382 Escorts in Abu Dhabi
Abu Dhabi Escorts Service 0508644382 Escorts in Abu DhabiAbu Dhabi Escorts Service 0508644382 Escorts in Abu Dhabi
Abu Dhabi Escorts Service 0508644382 Escorts in Abu Dhabi
Monica Sydney
 
一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理
F
 

Dernier (20)

20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime BalliaBallia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
 
Nagercoil Escorts Service Girl ^ 9332606886, WhatsApp Anytime Nagercoil
Nagercoil Escorts Service Girl ^ 9332606886, WhatsApp Anytime NagercoilNagercoil Escorts Service Girl ^ 9332606886, WhatsApp Anytime Nagercoil
Nagercoil Escorts Service Girl ^ 9332606886, WhatsApp Anytime Nagercoil
 
Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
 
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsRussian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
 
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
 
Call girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsCall girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girls
 
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsIndian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
 
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsRussian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
 
call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7
call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7
call girls in Anand Vihar (delhi) call me [🔝9953056974🔝] escort service 24X7
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
 
一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理一比一原版田纳西大学毕业证如何办理
一比一原版田纳西大学毕业证如何办理
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
 
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
best call girls in Hyderabad Finest Escorts Service 📞 9352988975 📞 Available ...
 
Abu Dhabi Escorts Service 0508644382 Escorts in Abu Dhabi
Abu Dhabi Escorts Service 0508644382 Escorts in Abu DhabiAbu Dhabi Escorts Service 0508644382 Escorts in Abu Dhabi
Abu Dhabi Escorts Service 0508644382 Escorts in Abu Dhabi
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
 
一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理
 

Blockchain - A Catalyst for Solving Age-old Distributed Systems Problems

  • 1. Dilum Bandara, PhD Dept. of Computer Science & Engineering, University of Moratuwa Colombo Blockchain Dev Meetup, Sep 4, 2018
  • 2. 2 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781
  • 3. 3 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Bob 1,000 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Bob 1,000 Peter 500 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Peter 500 Rani Plot 123 @ Col 7 Rasa Mango Polonnaruwa, Org. #45781 ID Assets Alice 500 Bob 1,000 Rani Plot 123 @ Col 7
  • 4. 4 ID Assets Alice 500 Bob 1,000 Peter 500 A ID Assets Alice Bob Peter 500 B ID Assets Alice 200 500 Bob 1,300 1,000 Peter 500 P Transfer 300 to Bob 200 500 1,300 1,000 • Alice may initiate request from her node or any other node • No of messages increase with no of ledger copies
  • 5. 5 ID Assets Alice 500 Bob 1,000 Peter 500 A ID Assets Alice Bob Peter 500 B ID Assets Alice 500 Bob 1,000 Peter 500 P Transfer 300 to Bob 200 500 1,300 1,000 • Likeliness of failure increases with no of ledger copies
  • 6. 6 ID Assets Alice 500 Bob 1,000 Peter 500 A ID Assets Alice 200 500 Bob 1,300 1,000 Peter 500 B ID Assets Alice 100 500 Bob 1,000 Peter 900 500 P Transfer 300 to Bob • Likeliness of attack increases with no of ledger copies
  • 7. Blockchain concept focuses on Public-Key Cryptography & Hashing Implementation needs to address many distributed system problems  Timing & Ordering  Consensus  CAP Theorem Distributed systems research community seems to not care Lots of others want to solve these problems due to monetary benefits (e.g., cryptocurrency) 7
  • 8. 8 ID Assets Alice 200 500 Bob 1,300 1,000 Peter 500 A ID Assets Alice 200 500 Bob 1,300 1,000 Peter 500 B ID Assets Alice 500 Bob 1,000 Peter 500 P Transfer 300 to Bob t = 10 t = 12 Transfer 1,200 to Peter t = 15t = 18 t = 16t = 18 Reject Accept • Inconsistent ledger due to concurrent transactions (TXs) • Inconsistency increases with no of ledger copies
  • 9.  Use of sender’s time to order TXs not reliable  Clocks aren’t accurate – Drift & skew  Difficult to sync them & keep them synched  Sender could change time to game the system  Global ordering of TXs  Lamport’s time stamp  A logical counter that increments when messages are send & received  Lamport’s Totally Ordered Multicast  Vector clocks  Address “lower logical clock doesn’t guarantee happened before relationship” in Lamport’s time stamp  Doesn’t scale with no of ledger copies 9
  • 10.  No concurrent TXs related to same account in same block  E.g., Bitcoin, Ethereum, & Hyperledger  Low transaction throughput – 3-6 TX/Sec  Store global state in a database (RDBMS or NO-SQL) & proof of existence on Blockchain  E.g., Stellar & BigchainDB  Fully or semi-centralized  Not quite Blockchain  Need more scalable concurrent transaction support  High throughput  Low Latency 10
  • 11.  2 Blue armies need to simultaneously attack or retreat  Blue army have to communicate across area controlled by White army  White army area  Unreliable communication channel  Goal – 2 blue armies to reach agreement about attacking 11 Source: www.ee.surrey.ac.uk/Projects/CAL/networks/ Network-Transport_Application_Layers.htm
  • 12. Agreement in the judgment or opinion reached by a group as a whole  Getting 2 nodes to agree is hard  Getting many nodes to agree is even harder Achieving consensus under:  Unreliable communication – Partition tolerance  Failed nodes – Fault tolerance  Misbehaving nodes – Byzantine fault tolerance 12
  • 13. 13 I have a plan – Let’s attack at dawn tomorrow Splendid idea, A! See you at dawn tomorrow! Received message. We are ready for the battle. Received acknowledgement. We are also ready Blue 1 Blue 2 Gotcha, I lied
  • 14. “It’s impossible for a web service to provide following 3 guarantees at the same time” (Eric Brewer, 2000)  Consistency  Availability  Partition-tolerance 14 ID Assets Alice 500 Bob 1,300 1,000 Peter 200 500 ID Assets Alice 500 Bob 1,300 1,000 Peter 200 500 Peter = 200 Peter = 500
  • 15. Nodes loose network connectivity  Networks will partition!  Partition tolerance is mandatory in distributed systems So, choose Consistency or Availability…  Blockchain needs to be Available  Ledger needs to be Consistent  Consensus  Consistency 15 C A P Required
  • 16.  No guarantee that a TX will be included in next block  Leader election  Selected leader decides on what goes into block  Believe leader’s block/ledger as ground truth  How to elect leader?  Proof of Authority (PoA) – e.g., VeChain, Kovan (Ethereum testnet)  Based on trust – e.g., Stellar  Random leader  Based on votes – e.g., Hyperledger Fabric & Sawtooth  Proof of Stake – e.g., Hyperledger Iroha  Proof of Brain – Steem  Fast  Consistency depends on leader 16
  • 17.  Proof of Work  Believe 1st one that solves a given puzzle  Puzzle should be difficult to compute (no short-cuts), but easy check  E.g., calculating a hash with specific no of 0/1 bits  Anyone can compete & difficult to game  Slow & expensive  Multiple truths may exist for a while  Longest chain wins  New truth may replace current truth  Some TXs need to be reversed  E.g., wait for 6 blocks in Bitcoin to confirm a TX  TXs need to be fast, persistent, & low cost 17
  • 18.  Low-latency TX processing  Inclusion guarantees  Fast confirmations  Persistence  High-throughput Concurrent TX processing  Low cost  Truly distributed ledger  Beyond proof of existence 18 Distributed System Problems Blockchain  Working systems used & contributed by many  But  Slow  No guarantees  High cost  Not scalable

Notes de l'éditeur

  1. BitCoin 180 GB Ethereum – 600 GB (essential 50GB)