Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dBFT_consensus_as_distributed_system
Search
____easy
October 25, 2018
Programming
2
740
dBFT_consensus_as_distributed_system
2018/10/25 blockchaintokyo # 13 発表資料
____easy
October 25, 2018
Tweet
Share
More Decks by ____easy
See All by ____easy
overviewofneo
____easy
0
240
neo-python-workshop
____easy
0
190
Other Decks in Programming
See All in Programming
今から始めるClaude Code入門〜AIコーディングエージェントの歴史と導入〜
nokomoro3
0
110
Go言語での実装を通して学ぶLLMファインチューニングの仕組み / fukuokago22-llm-peft
monochromegane
0
120
AWS発のAIエディタKiroを使ってみた
iriikeita
1
180
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
500
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
430
Azure SRE Agentで運用は楽になるのか?
kkamegawa
0
2.1k
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
850
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
430
Testing Trophyは叫ばない
toms74209200
0
860
速いWebフレームワークを作る
yusukebe
5
1.7k
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
230
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.3k
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
RailsConf 2023
tenderlove
30
1.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Making Projects Easy
brettharned
117
6.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Bash Introduction
62gerente
615
210k
How GitHub (no longer) Works
holman
315
140k
A designer walks into a library…
pauljervisheath
207
24k
Automating Front-end Workflow
addyosmani
1370
200k
For a Future-Friendly Web
brad_frost
180
9.9k
Code Review Best Practice
trishagee
70
19k
Transcript
dBFT 1 20181025 blockhain.tokyo #13
@____easy
2 &# @NeoKeymakersJP • n $ *3 • Keymakers)
n + n '! • R & D n ( n dApps+" NEO +"%
3 Contents 1 !!!$ 2 dBFT !! 3
2& /3& 4 #% 5 "!!
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
5
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 <bkfVoC zMK jh Zw @OZ Ta}SLYJt
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\
8 dBFTddelegated(%) %$ '"! (& #
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
NEO Keymaers Japan 10 dBFT F = (N
- 1) / 3 N F
NEO Keymaers Japan 11 dBFT PrepareRequest PrepareResponse/ChangeView
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
13 39!6. • $#$ #" 5; n COMMIT70 ABORT7083<
: 70*( n % #INIT>&4? ABORTCOMMIT70 -+ • '/,1 2=)
14 • • "$#%( &
• +*!)'
15 • /8# -D BAK '%L %)%K%$#L7 •
')( /8# 4G* 10J9: ' %/%$# ;?<I • BFT 2>" 3>" F 2,5 .=E3 • ')(@ $&(! trade-off H+6C
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 ! − % ≥ %⋯② ①/② ! − % > ! − # $ + # ∴ # < ! -
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/