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
The Libra Blockchain : 技術と問題 / The Libra Blockc...
Search
Kenji Saito
PRO
August 19, 2019
Technology
0
730
The Libra Blockchain : 技術と問題 / The Libra Blockchain : Technology and Problems
2019年8月19日(月)、福岡市 GBEC Park にて開催された「Libraを技術的視点からひも解く」にて使用したスライドです。
Kenji Saito
PRO
August 19, 2019
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
関連2群のt検定/独立2群のt検定 / Related 2-group t-test and independent 2-group t-test
ks91
PRO
0
42
A Guide to Paper Writing Support with Generative AI - A Joint Zemi
ks91
PRO
0
7
正規分布と簡単な統計理論/t分布と信頼区間 / Normal distribution, simple statistical theory, t-distribution and confidence intervals
ks91
PRO
0
40
じわじわ迫ってきている自動化社会 (その先にメタ・ネイチャー) / The Slowly Approaching Automated Society (and its beyond: Meta-Nature)
ks91
PRO
0
6
起こりうる誤った推論/平均・分散・標準偏差・自由度 / Possible false inferences, means, variances, standard deviations and degrees of freedom
ks91
PRO
0
56
LaTeX と Overleaf によるショートペーパー作成 / Short paper writing with LaTeX and Overleaf
ks91
PRO
0
19
R を用いた検定(補講) (1) — Welch 検定 / Tests using R (supplementary) (1) - Welch test
ks91
PRO
0
11
R を用いた検定(補講) (2) — カイ二乗検定 / Tests using R (supplementary) (2) - Chi-squared test
ks91
PRO
0
12
R を用いた分析(補講) (1) — 重回帰分析 / Analysis using R (supplementary) (1) - Multiple regression analysis
ks91
PRO
0
10
Other Decks in Technology
See All in Technology
Microsoft Azure全冠になってみた ~アレを使い倒した者が試験を制す!?~/Obtained all Microsoft Azure certifications Those who use "that" to the full will win the exam! ?
yuj1osm
2
120
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
5
680
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
300
[Oracle TechNight#85] Oracle Autonomous Databaseを使ったAI活用入門
oracle4engineer
PRO
1
120
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
830
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
550
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
180
ゼロから創る横断SREチーム 挑戦と進化の軌跡
rvirus0817
3
280
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
210
Working as a Server-side Engineer at LY Corporation
lycorp_recruit_jp
0
370
AWS re:Invent 2024 ふりかえり勉強会
yhana
0
460
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
180
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
530
A better future with KSS
kneath
238
17k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Mobile First: as difficult as doing things right
swwweet
222
9k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Navigating Team Friction
lara
183
15k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Why Our Code Smells
bkeepers
PRO
335
57k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
Transcript
The Libra Blockchain : ٕज़ͱ ܚጯٛक़େֶ SFC ݚڀॴ ্੮ॴһ /
גࣜձࣾϒϩοΫνΣʔϯϋϒ CSO ੪౻ ݡ࣐
[email protected]
The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.1/10
͜ͷ͓ҎԼͷจॻʹج͖ͮ·͢ Learn About Libra – Welcome https://developers.libra.org/docs/welcome-to-libra The Libra Blockchain
( : Libra ϒϩοΫνΣʔϯ) https://developers.libra.org/docs/the-libra-blockchain-paper Move: A Language With Programmable Resources ( : Move ϓϩάϥϛϯάݴޠ) https://developers.libra.org/docs/move-paper State Machine Replication in the Libra Blockchain ( : LibraBFT ߹ҙϓϩτίϧ) https://developers.libra.org/docs/state-machine-replication-paper The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.2/10
ಛ Libra ϗϫΠτϖʔύʔ͕ଧͪग़͍ͯ͠Δಛ ϓϩάϥϛϯάݴޠʮMoveʯΛσβΠϯ͠ɺ༻͢Δ Ϗβϯνϯোੑ (BFT) ߹ҙΞϓϩʔνΛ༻͢Δ ͘࠾༻͞Ε͍ͯΔϒϩοΫνΣʔϯσʔλߏΛ࠾༻͢Δ ɹ (←
͜Εಛͱͯ͠ଥ) ࣮ࡍͷٕज़తͳಛ طଘͷ༷ʑͳٕज़ͷཁૉΞΠσΞΛྗٕͰΈ߹Θͤͯઃܭ͍ͯ͠Δ ઃܭऀͨͪʹྗ͋Δ طଘͷٕज़ͷʮ͍͍ͱ͜औΓʯͱ͍͏ධՁҰ෦Ͱ͋Δ͕ɺ ʮ͍͍ͱ͜ʯͳͷ͔ٞΛཁ͢Δ ϚΠϧετʔϯ ݕূऀͷϝϯόγοϓ͕ཧ͞ΕΔ (ڐՄ੍) ϓϥΠϕʔτϨοδϟʔͱͯ࢝͠·Γɺ 5 Ҏʹϝϯόγοϓ͕ཧ͞Εͳ͍ (ඇڐՄ੍) ύϒϦοΫϨοδϟʔͷҠߦΛ։࢝ ಉٕ͡ज़ͰԆͰ͖Δͱߟ͍͑ͯΔͱͨ͠ΒඇৗʹνϟϨϯδϯά The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.3/10
ࢲ͕Α͘͏εϥΠυ : ͋Γ͕ͪͳύλʔϯ (ෆ) োੑ (by Խ) ͷͨΊͷٕज़ (since 1984)
(ݖݶͷࢄ{༰ | ଘࡏ}ূ໌ؔͳ͍) (εέʔϧ͠ͳ͍) ಉ͡ΠϕϯτྻΛड͚औΔঢ়ଶϚγϯಉ͡ঢ়ଶʹͳΔͱ͍͏લఏ (ܾఆత) Πϕϯτͷॱংʹ߹ҙ͢Δඞཁ͕͋Δ . . . σδϟϰʁɹ (͍ΘΏΔʮ༻ϒϩοΫνΣʔϯʯͷߏʹࠅࣅ) ⇒ ͜Ε state machine replication Ͱ͢ΑͶʁ The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.4/10
ઃܭʹؔ͢Δٞ The Libra Blockchain ͷجຊతͳߟ͑ํ τϥϯβΫγϣϯεςʔτ (ঢ়ଶ) ΛϚʔΫϧͷߏͰอଘ͢Δ ϒϩοΫΛ࣋ͨͣɺϚʔΫϧ͕͍ͯ͘͠ ঢ়ଶϚγϯΛෳ͢Δͱ͖͚ͩτϥϯβΫγϣϯΛϒϩοΫʹ·ͱΊΔ
(1) ϚʔΫϧϧʔτΛ publish ͠ͳ͍ͷͩͱͨ͠Βଘࡏূ໌͕Ͱ͖ͳ͍ ެ։͞Ε͍ͯΔϧʔτͱಥ߹Ͱ͖ͳ͍ͳΒԿͰΞϦͰʁ (2) ϨϓϦΧ͕ূ໌͢Δͱ͍͏ߟ͑ํͩͱͯ͠ೋॏாΛ͛ͳ͍ ಉ্ (ϨϓϦΧʹຊͷه͕͞Ε͍ͯΔͱ͍͏ূ໌͕Ͱ͖ͳ͍) (3) ڐՄ੍ɾϒϩοΫ୯ҐͰෳͳΒ BFT ϓϩτίϧ؆ུԽͰ͖ΔͷͰʁ ࣄ্ِ࣮Ͱ͖ͳ͍σδλϧॺ໊ΛϒϩοΫʹ͚ΒΕΔ͔Β (4) Ethereum ͷεϚʔτίϯτϥΫτ࣮ߦϞσϧΛ࠾༻͢Δཧ༝ʁ ڐՄ੍ͳΒ Gas ʹΑΔίετෛ୲ϞσϧΓཱͨͳ͍ͷͰʁɹ (ͳͥΘ͟Θ͟ैྔ੍ʁDoS ରࡦͱͷઆ໌͕ͩ) (5) ৽͘͠ݴޠ/VM Λ࡞ֶͬͯशͷϋʔυϧΛΘ͟Θ্͛͟Δཧ༝ʁ The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.5/10
ϚʔΫϧͱͦͷ෦(αϒπϦʔ) Λͬͨূ໌(ྫ) ূ໌ ॻ ূ໌ ॻ ূ໌ ॻ
ূ໌ ॻ ূ໌ ॻ O μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ حͷ߹ ෳ͢Δ ɾূ໌ॻ Λड͚औͬͨ " ࢯɺಉ࣌ʹϒϧʔͰࣔ͞ΕΔμΠδΣετͱͦΕ͕ࠨӈͷͲͪΒʹҐஔ͢Δ͔Λड͚औΔɻ ɾ" ࢯূ໌ॻ ͷμΠδΣετ͔Β࢝Ίͯɺ࿈͖݁͢Ұ࿈ͷμΠδΣετΛΔ͜ͱʹͳΔͷͰɺϚʔΫϧϧʔτʹࢸΔ·Ͱͷ ɹܭࢉΛ࠶ݱͰ͖ɺಘΒΕͨϚʔΫϧϧʔτ͕ &UIFSFVN εϚʔτίϯτϥΫτʹه͞Ε͍ͯΔͱҰக͢Δ͜ͱΛ֬ೝͰ͖Δɻ ɾͦͷܭࢉΛߦ͢Δͷ͕DFSU@qBTLQZͷαʔϏε ݪཧͷཧղͱඞཁͳใ͕͋Ε୭Ͱ࠶ݱͰ͖Δ ূ໌͞ΕΔ ɻ ه͢Δ ಡΈग़ͤΔ ূ໌Λ ඞཁͱ͢Δऀʹ ։ࣔ͞ΕΔใ ˞##Dɺ͜ͷߏΛอଘ ɹ͍ͯ͠Δ͕ɺαϒπϦʔΛ ɹ63- Խͯͨ͠͠ޙɺ ɹূ໌͢Δ্Ͱ##D ෆཁ ެ։͞ΕΔใ ϚʔΫϧϧʔτ Ϛ ồ Ϋ ϧ γ ε ς Ϝ ͕ อ ͠ ֤ Ϣ ồ β ʹ ෦ త ʹ ͑ Δ ʜʜ ʜʜ ʜʜ ʜʜ ʜʜ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ &UIFSFVNϒϩοΫνΣʔϯ ʜ ʜ ##DϥΠϒϥϦ ূ໌ॻΞϓϦͰ࣮ݱ The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.6/10
ϒϩοΫνΣʔϯ/ாٕज़ͷػೳΛղ͢Δ ਖ਼ੑͷอূ ྫ6590ߏͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస ɾ
τϥϯβΫγϣϯͷ༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼ͳϢʔβʹΑΓೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕ೖ͞Εͨ߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ ػೳ͕Լ͔ΒੵΈ্͕͍ͬͯ·͢ (ྫϏοτίΠϯͰ͕͢ɺ֤Λͯ͠ผʑͷٕज़Ͱ࣮ݱՄೳ) The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.7/10
The Libra Blockchain – ઃܭ্ͷબ ϧʔϧ Move ݴޠ (VM Ϛγϯޠ)
Ͱهड़͞ΕΔεϚʔτίϯτϥΫτ །Ұੑ BFT (= োੑ) (ͳͷʹ 1,000 نͰΔͭΓΒ͍͠) ଘࡏূ໌ ϚʔΫϧ (ϧʔτΛ publish ͍ͯ͠ΔΑ͏ʹݟ͑ͳ͍) ਖ਼ੑ εςʔτཧ + σδλϧॺ໊ 5 ҎʹඇڐՄ੍ͷҠߦΛ։࢝͢Δͱ͍͏͕ . . . BFT ಉ࣌ʹߴʑ f ͕ҙͷյΕํΛ͢Δͱ͍͏લఏͰಈ࡞͢Δ (֬) ඇڐՄ੍Ͱ࣮ࡍʹʹͳΔͷҙਤతͳ߈ܸͰ͋Γɺҙਤ͢ΔݶΓ֬ 1 (f ΛݟੵΕͳ͍) αΠΤϯεʹଇ͍ͬͯΔΑ͏Ͱ͍ͯɺͲ͔͜ͰઌਓͨͪͷݟΛແࢹ͍ͯ͠Δ ઃܭ͕͙͙ͪͱݴ͏ॴҎ The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.8/10
Ethereum ͱ BBc-1 – ઃܭ্ͷબ (͝ࢀߟ) Ethereum ϧʔϧ EVM ϚγϯޠͰهड़͞ΕΔεϚʔτίϯτϥΫτ
།Ұੑ φΧϞτίϯηϯαε → Casper (PoS) ଘࡏূ໌ PoW → Casper νΣ οΫϙΠϯτʹΑΔϑΝΠφϦςΟ ਖ਼ੑ εςʔτཧ + σδλϧॺ໊ BBc-1 (Beyond Blockchain One) ϧʔϧ ΞϓϦέʔγϣϯʹͯҙʹهड़ (Python → bbc1-lib-contracts?) །Ұੑ σδλϧΞηοτෛ࠴Ͱ͋Γɺ࠴ऀ͕อূ͢Δ ଘࡏূ໌ PoCX (υϝΠϯؒཤྺަࠩ) (τϥϯβΫγϣϯؒͷࢀরؔͷ DAG) (ॳظύϒϦοΫͳϒϩοΫνΣʔϯʹΞϯΧϦϯά) ਖ਼ੑ UTXO/εςʔτ ͔ͭࣝผࢠͱެ։ݤΛɺυϝΠϯ֎ʹൿಗ The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.9/10
·ͱΊ The Libra Blockchain طଘͷ༷ʑͳٕज़ͷཁૉΞΠσΞΛྗٕͰΈ߹Θͤͨઃܭ ͢ͳΘͪઃܭऀͨͪʹྗ͕͋Δ ϖʔύʔ͕͔ͬ͠Γॻ͔Ε͍ͯΔͷͰɺٯʹΛࢦఠ͍͢͠ ࠷େ͖ͳ ূ໌ػೳ͕ূ໌ʹͳ͍ͬͯΔ͔Ͳ͏͔
ͳ͍ͬͯͳ͚Εতͷٕज़ʹͪΐ ͬͱຯ͚͞Ε͍ͯΔ͚ͩ State Machine Replication 1984 ʹཱ͍֬ͯͨ͠ςΫχοΫ ·ͨɺ5 ޙʹ։࢝͢ΔඇڐՄ੍ͷҠߦʹےಓ͕ະͩݟ͑ͳ͍ The Libra Blockchain : ٕज़ͱ — 2019-08-19 – p.10/10