Private Blockchain & PBFT
Daegeun Yoon
KAIST, Electrical engineering department 2019/03/13
Private Blockchain & PBFT Daegeun Yoon KAIST, Electrical - - PowerPoint PPT Presentation
Private Blockchain & PBFT Daegeun Yoon KAIST, Electrical engineering department 2019/03/13 Overview Private Blockchain Understanding Private Blockchain Hyperledger Project PBFT FLP Impossibility Two Generals Problem
KAIST, Electrical engineering department 2019/03/13
2
3
4
Public Blockchain Network
Unauthorized group R/W
Not appropriate for enterprises purpose!
5
Private Blockchain Network Authorized group R/W
6
7
Alice company Stakeholder SEC DB for Account Ledger …
8
9
Hyperledger Frameworks Hyperledger Tools
10
11
12
13
FLP Impossibility Two Generals’ Problem Byzantine Generals’ Problem Byzantine Fault Tolerance Practical Byzantine Fault Tolerance
14
15
16
17
18
19
20
21
message was received by B
message was forged by the enemy
the message was received by A
the message was forged by the Enemy
between A and B
Consensus Msg A B
22
23
24
25
26
27
28
N1 N2 N3 Client bool(x)
29
N1 N2 system error! Client bool(x) bool(x) = true bool(x) = true bool(x) = ?
30
N1 Byzantine N3 Client bool(x) bool(x) = true bool(x) = False bool(x) = ?
31
N1 Byzantine N4 Client bool(x) bool(x) = true bool(x) = False bool(x) = True N2 bool(x) = true true
32
N1 Byzantine N4 Client bool(x) bool(x) = true bool(x) = False bool(x) = ?? N2 bool(x) = true true
33
34
35
signed by c
36
37
38
39
N1 N2 N3 N4
40
41
42
43
44
Checkpoint primary backup1 backup2 backup3
45
46
47
48
Node # Last stable checkpoint Sequence # in P 1(new primary) 100 190 2 200 200 3 200 200 4 200 200
49
50
51
52
53
54 User A
DApp
R E S T
S D K
chaincode ledger
peer1
with endorsement
peer2 peer3
the transaction
the requested transaction
new block
Is applied to the ledger
55
request pre-prepare prepare commit reply client primary backup1 backup2 backup3
Generating too many traffic
56
used PBFT in v0.6
upcoming version of fabric
57
58