Slide 1

Slide 1 text

  dBFT    1 20181025 blockhain.tokyo #13 @____easy

Slide 2

Slide 2 text

2 &# @NeoKeymakersJP •  n $ *3 • Keymakers) n + n '! • R & D n   ( n dApps+" NEO +"% 

Slide 3

Slide 3 text

3 Contents 1  !!!$ 2 dBFT !!  3 2& /3&  4 #%  5   "!!

Slide 4

Slide 4 text

4 9A!"%* '$&.0I3?K MB /),0#D=  8OHGC !"%* Ex:9A!"%* Q;+0-4J n PC+0- 0(0'$&.075F<>@  n  42 LE142(+0-N:6)= P

Slide 5

Slide 5 text

     5    

Slide 6

Slide 6 text

6 -":(:.7,,68:%Z ]} jh s!;-%pq Zwn ]} v` 6)#4]} ]}jhX/9&% Be  0)#5:]} /9&%2)&;$xIAN^  '0: ]} /9&% b{=Q‚~WF|b{ƒyH  -":(:]} ]} U/9&%>[G?Ru   E_3+7/9&% ]}n Zw v` JiZ #%*1 l{dtr\ mg AZ #%*1}S c{  \q  PDZ #%*1

Slide 7

Slide 7 text

7 .";';/8++79;%O EK28'6%+Hd • a[S^0:+ 8eZCWJaD, repilicated-write protocolf0:&%JaD5*8 BQ  • @\V@!<-<G cMAX  • 4(&<$ 0:&%`_ 0:&%`_  >]  k/<8++97;+O • ZCWJaDea[S^#%)3fYk? ;1<,;+Rb  ULC k/<8++97;+OP • .";';RbPIFk/<8++7;+OPT=2k+1?0:&%N\

Slide 8

Slide 8 text

8 dBFTddelegated(%) %$  '"!    (& #

Slide 9

Slide 9 text

9 dBFT(:+:)*-(:+:)*3;1uE • cMNEOMainnet(:+:)*3;17K • NEO@]k(:+:)*3;1Zhm • NEOjemw1B_HFNEO Councilid/`Fv • NEO Council@]NEOaWX9-'-7pz 2020WRD:9-' • NEO CouncilQHNEO@] y?TsgNEOvalidatoruE • $:,#;:&42:*VC • $5,#;:&42:*VC • Validator!:+:. 6rqy ^S • Windows!:*0;8 NEO-GUI>fx/Zh  • QN-7/;0NEO3.0t[Zh790(8PG  • %":0AnkU Zhm<%":0o\AnkZhJl Ex:3=Ank100NEO%":0ZhIOL Ank100h bY

Slide 10

Slide 10 text

NEO Keymaers Japan 10 dBFT   F = (N - 1) / 3 N    F    

Slide 11

Slide 11 text

NEO Keymaers Japan 11 dBFT PrepareRequest PrepareResponse/ChangeView

Slide 12

Slide 12 text

12 2E"I57 • dBFT ‘pre-prepare’ ‘prepare’ 2E "!&$9D • 0= &propose)< &.-G1C6 = FForkK/H7 • Primary;M  &' "!&$L/H7 • Neon #%  ,40>  (=@H+AB8 →3E"3dBFT:2?J* Pre-prepare Prepare

Slide 13

Slide 13 text

13 39!6. • $#$ #" 5;  n COMMIT70 ABORT7083< : 70*( n %  #INIT>&4? ABORTCOMMIT70 -+  • '/,1 2=)

Slide 14

Slide 14 text

14    •   • "$#%( & • +*!)'

Slide 15

Slide 15 text

15   • /8# -D BAK '%L %)%K%$#L7 • ')( /8# 4G* 10J9:  ' %/%$# ;?" 3>" F 2,5 .=E3 • ')(@  $&(! trade-off H+6C

Slide 16

Slide 16 text

16  :BFT?JD=*0)C 64*0)C N+%.(.*0) FD=#.'.$& ?J*0)C T  5N-FD=*0);C7 C 31I  ! − # $ F+%.(.*0)8ABH D=#.'.$& 31 > E ?J % > !'# $ + # ⋯① F+%.(.*0)6",-!.<: G2D=*0) #.'.$& 931>@F ! − % ≥ %⋯② ①/② ! − % > ! − # $ + # ∴ # < ! -

Slide 17

Slide 17 text

17  https://serversmtp.com/smtp-pop3/ https://github.com/neongd/reference/blob/master/How%20To%20Become%20A%20Consensus%20 Nodev1.2.md https://neonewstoday.com/general/neo-dos-vulnerability-patch-and-fork-incident-details/ https://github.com/neo-project/neo/pull/320 https://twitter.com/VladZamfir/status/942271978798534657 https://github.com/ethereum/cbc-casper/wiki/FAQ#what-is-the-tradeoff-triangle https://github.com/ethereum/cbc-casper/wiki/FAQ#why-is-13-used-as-the-in-protocol-fault- tolerance-threshold https://www.slideshare.net/YongRaeJo/fastbft https://slideplayer.com/slide/8400238/

Slide 18

Slide 18 text