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
ビットコインの技術 / Bitcoin Technology
Search
Kenji Saito
PRO
September 11, 2019
Technology
0
190
ビットコインの技術 / Bitcoin Technology
2019年9月11日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミー「ビットコインの技術」にて使用したスライドです。
Kenji Saito
PRO
September 11, 2019
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
スマートコントラクトデザイン / Smart Contract Design
ks91
PRO
0
4
FinTech 7-8 : Blockchain
ks91
PRO
0
70
スマートコントラクトプログラミング / Smart Contract Programming
ks91
PRO
0
18
AI が研究する時代に、人はどう育つのか? — GAMER PAT にみる "シリアスゲームとしての知的訓練" / In an era where AI conducts research, how will humans develop? — "Intellectual Training as a Serious Game" Seen in GAMER PAT
ks91
PRO
0
49
FinTech 5-6 : The World of Apps
ks91
PRO
0
100
生成AI による論文執筆サポート・ワークショップ ─ サーベイ/リサーチクエスチョン編 / Workshop on AI-Assisted Paper Writing Support: Survey/Research Question Edition
ks91
PRO
0
78
ブロックチェーン概論とインストール大会 / Introduction to Blockchain and Installation Workshop
ks91
PRO
0
9
FinTech 3-4 : Internet Technology and Governance
ks91
PRO
0
83
民主主義と博愛(Humanitarianism) / Democracy and Humanitarianism
ks91
PRO
0
14
Other Decks in Technology
See All in Technology
re:Invent 2025の見どころと便利アイテムをご紹介 / Highlights and Useful Items for re:Invent 2025
yuj1osm
0
220
serverless team topology
_kensh
3
240
ゼロコード計装導入後のカスタム計装でさらに可観測性を高めよう
sansantech
PRO
1
500
Okta Identity Governanceで実現する最小権限の原則 / Implementing the Principle of Least Privilege with Okta Identity Governance
tatsumin39
0
180
Okta Identity Governanceで実現する最小権限の原則
demaecan
0
150
AI連携の新常識! 話題のMCPをはじめて学ぶ!
makoakiba
0
140
オブザーバビリティと育てた ID管理・認証認可基盤の歩み / The Journey of an ID Management, Authentication, and Authorization Platform Nurtured with Observability
kaminashi
1
1k
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
1.8k
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
220
webpack依存からの脱却!快適フロントエンド開発をViteで実現する #vuefes
bengo4com
4
3.6k
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
140
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.5k
Featured
See All Featured
The Language of Interfaces
destraynor
162
25k
Balancing Empowerment & Direction
lara
5
700
Building Flexible Design Systems
yeseniaperezcruz
329
39k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
The Cult of Friendly URLs
andyhume
79
6.6k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Optimizing for Happiness
mojombo
379
70k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
890
Become a Pro
speakerdeck
PRO
29
5.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
ϏοτίΠϯͷٕज़ ϒϩοΫνΣʔϯج൫ٕज़ʲԾ௨՟ͷݪܕΛΖ͏ʂʳ ϒϩοΫνΣʔϯϋϒ Chief Science Officer / ૣҴాେֶ େֶӃܦӦཧݚڀՊ ڭत
੪౻ ݡ࣐
[email protected]
ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.1/40
͜ͷεϥΠυ https://speakerdeck.com/ks91 ʹஔ͔Ε͍ͯ·͢ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.2/40
؆୯ͳࣗݾհ ੪౻ ݡ࣐ (͍͞ͱ͏ ͚Μ͡) ૣҴాେֶ େֶӃܦӦཧݚڀՊ ڭत ܚጯٛक़େֶ SFC
ݚڀॴ ্੮ॴһɾڥใֶ෦ ߨࢣ (ඇৗۈ) גࣜձࣾϒϩοΫνΣʔϯϋϒ CSO (Chief Science Officer) Ұൠࣾஂ๏ਓϏϤϯυϒϩοΫνΣʔϯ දཧࣄ Ұൠࣾஂ๏ਓΞΧσϛʔΩϟϯϓ දཧࣄ ܦྺ 1993 ɺίʔωϧେֶΑΓֶम࢜߸औಘ (ίϯϐϡʔλαΠΤϯε) 2006 ɺܚጯٛक़େֶΑΓσδλϧ௨՟ͷݚڀͰത࢜߸औಘ (ࡦɾϝσΟΞ) ܚጯٛक़େֶ େֶӃ ࡦɾϝσΟΞݚڀՊ SFC ݚڀॴʹͯ 19 ؒʹΘͨΓ P2P (Peer-to-Peer) ͓Αͼσδλϧ௨՟ͷݚڀʹैࣄ 2011 ՆΑΓౡͷ͜ͲͨͪͷͨΊͷʮΞΧσϛʔΩϟϯϓʯΛؒΒͱ։࠵ ࡢՆ SFC ʹͯ ΞΧσϛʔΩϟϯϓ 2018 ՆʮΦοέʔάʔάϧɺ॓ͬͱ͍ͯʂʯΛ࣮ࢪ ࠓՆ SFC Ͱ ΞΧσϛʔΩϟϯϓ 2019 ՆʮੈքΛ࠶ൃ໌ͤΑ ∼ REINVENT THE WORLDʯΛ࣮ࢪ → ࢲͷ಄ͷதͰͭͳ͕͍ͬͯ·͢ (͜Ε͔ΒͷࣾձͷσβΠϯ͜ͲͨͪͱҰॹʹ) ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.3/40
ࠓճͷςʔϚ ϏοτίΠϯɾϒϩοΫνΣʔϯͷ Έɺ σʔλߏͷಛɺ Proof of Work ͱϚΠχϯάͷҙຯɺ SegWitɺ ϖΠϝϯτνϟωϧɺ
ߟ͑͏Δ੬ऑੑͱରࡦ ͳͲʹ͍ͭͯղઆ͠·͢ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.4/40
ϏοτίΠϯͱʁ σδλϧ௨՟ͳͷͩΖ͏͚Ͳɺಛʁ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.5/40
ϏοτίΠϯͷʮ͍ʯͱʮ͑ʯ(1) ϏοτίΠϯͷʮ͍ʯ ʮ͕͍ࣗ࣋ͬͯΔ͓ۚΛ͍ͭͰࣗͷ͖ʹૹۚ͢Δ͜ͱΛ ୭ʹࢭΊͤ͞ͳ͍ʯͨΊʹʁ ΦϯϥΠϯϖΠϝϯτͰʮࢧ͍ = ૹۚʯ (தԝ) ۜߦϚωʔͷෆ৴ ϏοτίΠϯͷʮ͑ʯ
ಛఆͷαʔϏεఏڙऀ͕͍Δ෩ʹͰ͖ͳ͍ ⇒ σδλϧͳίΠϯΛ P2P ͰΓऔΓ͢Δ ίΠϯΛૹͬͨ͜ͱΛ൱ఆ͞ΕͨΒʁ ⇒ σδλϧॺ໊Λ༻͍Δ (ݕূՄೳੑͱ༰ͷ൱ೝෆՄೳੑͷ୲อ) ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.6/40
ϏοτίΠϯͷʮ͍ʯͱʮ͑ʯ(2) σδλϧॺ໊͚ͩͰղ͚ͳ͍͕͋Δ ೋॏফඅ (double spending) Λ͙ඞཁ͕͋Δ (ଘࡏͷ൱ೝෆՄೳੑΛ୲อ͍ͨ͠) ⇒ औҾͷূڌΛ৽ฉʹࡌͤΕΑ͍ ܝࡌڋ൱σΟείϯͷڪΕʁ
⇒ ܈ऺ͕ (ग़དྷࣄͷূڌͱͯ͠) ൃߦ͢Δʮ৽ฉʯʹऔҾͷূڌΛࡌͤΔ ϒϩοΫνΣʔϯɺ͔͋ͨʮۭதʹଋΛݻఆ͢Δʯ ʮଋʯͷܗࣜΛͭهΛݻఆͰ͖Δ → ՟ฎʮଋʯͰ͋Γɺެڞࡒ (͍ҙຯͷ) ެڞࡒΛެਖ਼ʹѻ͏͜ͱ͕Ͱ͖Δͱ͍͏ظ (શͰͳ͍) ͜ͷߟ͑ํʹجͮ͘ίΠϯͷ౪Ұ࿈ͷࣄ݅ͷΑ͏ͳహΛ୧Δ ʮ͕͍ࣗ࣋ͬͯΔ͓ۚΛ͍ͭͰࣗͷ͖ʹૹۚ͢Δ͜ͱΛ୭ʹࢭΊͤ͞ͳ͍ʯ ⇒ ຊਓͰ͋Δ͜ͱΛ͚ࣗࣗͩͰূ໌͢Δ → ൿີݤͷॴ࣋ͷθϩࣝূ໌ → ൿີݤΛ͑ΔͳΒ୭Ͱ͋Εຊਓ ⇒ औҾສਓ͕ݕূՄೳ͕ͩऔΓফͤͳ͍ → ౪·ΕͨίΠϯͰ͖Δ͕औΓͤͳ͍ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.7/40
ϏοτίΠϯͷγεςϜ ϏʔΧʔ / ৽ฉϞσϧͰߟ͑Δ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 –
p.8/40
ϏʔΧʔ / ৽ฉϞσϧͷੈք(1) ϏοτίΠϯͷϒϩοΫνΣʔϯΛཧϞσϧͰઆ໌͠·͢ 2,100 ສ cm3 (cc) ͷɺਓྨʹͱͬͯແՁͳӷମ͕͋Δ λϯΫʹೖ͍ͬͯΔ
1 ԯͷ 1cm3 ·ͰܭྔͰ͖ΔϏʔΧʔΛ֤͕͍ࣗͭ͘Ͱ ࣋ͯΔ ެڞۭؒʹஔ͔ΕΔ ϏʔΧʔʹݤ͖ͷ֖͕͍͍ͭͯΔ ฏۉ 10 ͓͖ʹબΕͨਓ͚͕ͩɺࣗͷϏʔΧʔʹࠓͳΒ 12.5cm3 ͘Έग़ͤΔ ಛघͳ͘͡Ҿ͖ͰબͿ ͨΓ͘͡ɺ֤ࣗͷശͷதʹ͋ΓɺͦΕͧΕ͕શྗͰ ͘͡ΛҾ͖·͘Δ ⇒ ͘Ҿ͚ͨํ͕༗ར ⇒ ʮγεςϜ͕ఀ·Βͳ͍ (ϥΠϒωε)ʯੑ࣭ΛຬͨͤΔ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.9/40
ϏʔΧʔ / ৽ฉϞσϧͷੈք(2) ϏʔΧʔؒͰൺֱతࣗ༝ʹӷମΛΓऔΓͰ͖Δ (ਖ਼ੑͷอূ) ֖Λ։͚ΒΕΔͷݤΛ͍࣋ͬͯΔຊਓ͚ͩ Ұ։͚ͨΒɺଞͷ (ෳͷ) ϏʔΧʔʹ͗Δ ઌͷʮબΕͨਓʯɺΓऔΓΛʮࠪʯ͠ɺ৽ฉͷࢴ໘Λ
ͭͬͯ͘هΛ͢ʮهਓʯͰ͋Δ (ଘࡏੑͷূ໌) ΓऔΓͷ͓͜΅Ε (खྉ) Β͑Δ ಉ͡ϖʔδ൪߸͕ඃͬͨΒɺϖʔδྻͷ͍ํͷཤྺ͕༗ޮ (།Ұੑͷ߹ҙ) ͱ͖Ͳ͖ɺϏʔΧʔͷݤΛແ͘͢ਓ͕͍Δ ͦΜͳΈΛσδλϧͰͭ͘Γɺ௨՟ͱݟͳͯ͠Έͨ → ϏοτίΠϯ (ݟͳ͠Λඞཁͱ͠ͳ͍՟ฎɾ௨՟๏՟ؚΊଘࡏ͠ͳ͍) ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.10/40
ਖ਼ੑͷอূ ∼ ͍ΘΏΔ UTXO ߏ ࢀরࡁΈͷग़ྗ (=ίΠϯ) ফඅࡁΈ → ೋॏফඅ͞Εͳ͍
ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.11/40
ଘࡏੑͷূ໌ ∼ ࡞ۀূ໌͖ϋογϡνΣʔϯ ท൪߸O ท൪߸O ท൪߸O લทͷμΠδΣετ λʔήοτҎԼͰͳ͍ͱ͍͚ͳ͍
Έͩ͠ίʔφʔ μΠδΣετ͕λʔήοτҎԼʹͳΔΑ͏ʹೖΕΔదͳ༰ ϖʔδͷμΠδΣετ (҉߸ֶతϋογϡؔʹΑΔग़ྗ) λʔήοτҎԼͰͳ͚ΕͳΒͳ͍ ݩͷσʔλΛͲ͏͍͡ΕͲΜͳμΠδΣετʹͳΔͷ͔༧ΊΘ͔Βͳ͍ → ్ํͳ͍ʮ࡞ۀ ͱͦͷ ূ໌ʯΛཁ͢Δ ͜Ε͕͘͡Ҿ͖ͷݪཧͰ͋Γɺಉ͚ͩ͡ͷίετΛ͔͚ͳ͚Εվ͟ΜͰ͖ͳ͍ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.12/40
།Ұੑͷ߹ҙ ∼ φΧϞτɾίϯηϯαε ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O
ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ͬͪ͜ͷྺ࢙͕༗ޮ ΄΅ಉ࣌ʹผʑͷ୭͔͕͘͡ʹͨͬͯϖʔδྻ͕͔Εͯ͠·͏ݱͨ·ʹ͋Δ ʮ୭ʹࢭΊͤ͞ͳ͍ʯͨΊʹࣗɾࢄͰಈ࡞͢ΔͨΊෆՄආ ͘͡Ҿ͖ʹྦྷੵͰ࠷େ͖ͳίετ͕͔͔͍ͬͯΔྺ࢙͕࠷վ͟Μ͠ʹ͍͘ ͦΕ͕ਖ਼࢙Ͱ͋Δͱશһ͕߹ҙ͢Δ (ݫີͳίϯηϯαε࣮ݱͰ͖͍ͯͳ͍) ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.13/40
ʮ௨՟ͱݟͳͯ͠Έͨʯ ՟ฎɾ௨՟ʹɺݟͳ͠Λඞཁͱ͠ͳ͍ʮϗϯϞϊʯଘࡏ͠ͳ͍ ௨՟ = ࣄ্࣮ (virtually) ՟ฎͱͯ͠௨༻͍ͯ͠ΔԿ͔ɾԾ՟ฎ = ͓ۚ ՟ฎ
= ৴༻ͷ༻ɾԾ৴༻ = ͓ۚ ͯ͢ͷ՟ฎɾ௨՟ɺͦΕΛʮ՟ฎɾ௨՟ͱݟͳ͢ʯ͜ͱʹΑΓଘࡏ͢Δ ྫ : ຊۜߦ͕ൃߦ͢Δ݊Λ௨՟ͱݟͳͯ͠Έͨ → ຊԁ ͕ͨͬͯ͠ɺͯ͢ͷ௨՟ԾతͳଘࡏͳͷͰɺ ʮԾ௨՟ʯͱ͍͏ݴ༿ɺ͋Δҙຯφϯηϯε (๏༻ޠʹ͍ͬͨΜͳͬͪΌ ͚ͬͨͲ) ʮԾ௨՟ʯͬͯݴͬͪΌ͏ͱʮԾԾԾ৴༻ʯʹͳͬͪΌ͏ ຊԁผʹʮ࣮௨՟ʯͰͳ͍ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.14/40
ϏοτίΠϯͷٕज़ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.15/40
ϏοτίΠϯͷγεςϜͷ֓ཁ ϏοτίΠϯωοτϫʔΫ ɾ ճͷʮ࠾۷ʯྔ ຖʹݮ ɾ߹ܭ ສ
#5$ ·Ͱ औҾͷొ खྉ खྉ औҾͷঝೝ ϚΠχϯά࣌ ϚΠχϯά ࠾۷  ֬తաఔ ฏۉ ͓͖ʹޭ ૹۚࢦ֤͕ࣔࣗͭ ϓϥΠϕʔτΩʔͰ ແͨ͘͠Β࠶ൃߦෆՄ ϚΠφʔ ࠾۷ऀ ࢧ͍ɾ྆ସ ͳͲͷܦࡁ׆ಈ ར༻ऀ ϒϩοΫνΣʔϯ ݩா Πϯλʔωοτ্ͷԾωοτϫʔΫ ʜ ˞#5$ϏοτίΠϯͷ୯Ґ #5$ ରԠ ϒϩοΫ ϒϩοΫ ϒϩοΫ औҾ ૹۚ औҾͷه ΞυϨε Ѽઌ ϓϥΠϕʔτΩʔ ຊਓͷূ໌ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.16/40
ΥϨοτԿΛ͍ͯ͠Δ͔ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.17/40
ϏοτίΠϯϒϩοΫνΣʔϯͷ֓ཁ μΠδΣετ ϒϩοΫ O ϚΠχϯάใु ݻఆ खྉ ೖྗͷ߹ܭͱग़ྗͷ߹ܭͷࠩ .FSLMFΛܭࢉͯ͠
ͦͷϧʔτΛ֨ೲ ͍ͣΕऔҾه͕औΓग़͞Εɺ ͦͷ࣌ͷਖ਼࢙ʹೖ͍ͬͯͳ͍ͷͳΒ ৽ͨͳϒϩοΫͷதʹ֨ೲ͞ΕΔ ᶃਖ਼ੑͷอূ ϏοτίΠϯͰ 6590 ߏ ᶄଘࡏੑͷূ໌ ϏοτίΠϯͰ࡞ۀূ໌͖ϋογϡνΣʔϯ ᶅ།Ұੑͷ߹ҙ ϏοτίΠϯͰ φΧϞτɾίϯηϯαε ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ #5$ ੜ औҾ औҾ औҾ औҾ ʜʜ ΑΓ͍ ࡞ۀূ໌ ͷίετ͕ΑΓΘ Ε͍ͯΔ νΣʔϯ ͕༗ޮͱͳΔ μΠδΣετ㱡λʔήοτ 1SPPG0G8PSL ࡞ۀূ໌ աڈͷऔҾग़ྗͷࢀর σδλϧॺ໊ ެ։ݤ Ѽઌͱྔ ίΠϯ λʔήοτ ϊϯε ೖྗ ೖྗ ग़ྗ ग़ྗ 1. ֤ϚΠφʔɺաڈ 10 ΄Ͳͷؒʹऩूͨ͠औҾσʔλΛϒϩοΫʹ֨ೲ͠ɺϚΠχϯά (͘͡Ҿ͖) Λߦ͏ 2. ޭͨ͠ΒωοτϫʔΫʹϒϩʔυΩϟετ͢Δ 3. ֤ϚΠφʔɺͦΕΛνΣʔϯͷ৽͍͠ඌͱೝΊΔͳΒɺͦͷޙΖʹϒϩοΫΛܨ͛Δ͘ 1 ʹΔ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.18/40
ϒϩοΫνΣʔϯ/DLT Λཧղ͢Δ ਖ਼ੑͷอূ ྫ6590ߏͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస
ɾ τϥϯβΫγϣϯͷ༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼ͳϢʔβʹΑΓೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕ೖ͞Εͨ߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ ػೳ͕Լ͔ΒੵΈ্͕͍ͬͯ·͢ ྫ͑ΞηοτΛʮϏοτίΠϯʯ ɺτϥϯβΫγϣϯΛʮͦͷചങʯͱஔ͖͑ͯಡΜͰΈ͍ͯͩ͘͞ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.19/40
ϏοτίΠϯͷٕज़ - ͪΐ ͬͱৄࡉ ϏοτίΠϯϒϩοΫνΣʔϯͷதΛݟͳ͕Β https://blockchain.com/ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ —
2019-01-29 – p.20/40
ϒϩοΫ 0 ʹຒΊࠐ·Εͨূ໌ and/or ϝοηʔδ औҾͷσʔλͷۭ͖ྖҬʹϏοτίΠϯͱ ؔͳ͍σʔλΛຒΊࠐΊͨΓ͢Δ ࠷ॳͷϒϩοΫɺ࠷ॳͷऔҾʹຒΊࠐ·Εͨจࣈྻ “The Times
03/Jan/2009 Chancellor on brink of second bailout for banks” ʮλΠϜζࢴ 2009  1 ݄ 3  ɹࡒେਉɺۜߦͷ 2 ͷެతࢿۚʹΑΔٹࡁʯ ୭Ͱ͔֬ΊΒΕΔ https://blockchain.com ͷݕࡧϑΟʔϧυʹ 0 Λ ࢦఆ͠ɺBTC Block → Hash ͱਐΉ ग़͖ͯͨϒϩοΫͷ།ҰͷऔҾͷதΛݟΔ ͲΜͳҙਤ͔ʁ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.21/40
औҾͱσδλϧॺ໊(1) ࢀরࡁΈͷग़ྗ (=ίΠϯ) ফඅࡁΈ → ೋॏফඅ͞Εͳ͍ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ —
2019-01-29 – p.22/40
औҾͱσδλϧॺ໊(2) M ͔Β A ʹ 60BTC ૹΔྫͰɺ݅ॺ໊࣮ࡍʹεΫϦϓτͷ͔ͨͪͰهड़͞ΕΔ (ॳͷઃܭ) औҾσʔλຊମͱॺ໊ͷηΫγϣϯ͕͔Ε͍ͯͳ͍ͷࠜຊతͳઃܭϛεͳͷͰɺSegWit Ͱվमͨ͠
ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.23/40
SegWit (Segregated Witness; ূ໌ํࣜ) ೖྗεΫϦϓτΛऔΓΊɺग़ྗεΫϦϓτ؆қԽ͢Δ ೖྗʹ͓͚Δূ໌ (witness) ͷํ๏ΛύλʔϯԽ͠ɺূ໌ͷϦετΛͭ͘Δ (෦ॲཧैདྷ௨Γ) ैདྷํࣜʹରͯ͠લํޓੑΛอূ
(ैདྷϊʔυ͔Βݟͯ TX ϒϩοΫਖ਼͍͠) ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.24/40
SegWit ͷϝϦοτʁ ୈҰʹόάϑΟΫε లੑ (malleability) ΛࠜઈͰ͖Δ ͝ࢀߟ https://bitcoincore.org/en/2016/01/26/segwit-benefits/ Ͱ͞Ε͍ͯΔϒϩοΫαΠζӠʑɺϝϦοτͷϦετͷԼͷํ ϏοτίΠϯͷٕज़
— ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.25/40
औҾͷ࿈ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.26/40
Merkle  (ϏοτίΠϯͷ߹) Digest = SHA-256 × SHA-256 TX ͷଘࡏɺͦΕؚ͕·ΕΔ෦
(֤ͰྡʹདྷΔμΠδΣετ) ͕ఏڙ͞ΕΔͱݕূͰ͖Δ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.27/40
Block Header Data Structure Field Description Size (bytes) Version 4
Digest Double SHA-256 value 32 Merkle root Double SHA-256 value 32 Time Seconds (since 1970-01-01T00:00 UTC) 4 Target Compressed format 4 Nonce Appropriate value 4 Merkle root is the digest of all TXs ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.28/40
ίϛοτϝϯτ ϒϩοΫͷσʔλʹର͢Δ৽͍͠ϧʔϧ ੜऔҾͷग़ྗεΫϦϓτʹͯɺ OP_RETURN ʹଓ͚ͯҎԼͷϖΠϩʔυΛ PUSH ߲ ҙຯ αΠζ ϔομʔ
0xaa21a9ed 4 όΠτ ূ໌ (witness) ϧʔτ ೋॏ SHA-256  32 όΠτ ͨͩ͠ূ໌ϧʔτɺ֦ு͞ΕͨऔҾσʔλશମͷμΠδΣετʹ͍ͭͯɺ औҾͷ Merkle ϧʔτͱಉ༷ʹܭࢉ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.29/40
Proof of Work (࡞ۀূ໌) ͱʁ ܭࢉίετΛೖͨ͜͠ͱͷূ໌ (ʮίϯηϯαεΛ࣮ݱ͢ΔΈʯͰͳ͍) ࡞ۀࠔ͕ͩɺͦͷ݁Ռͷݕূ༰қ ͦΕʹΑΓɺεύϜෆਖ਼ߦҝΛࢭ͢Δͱ͍͏͕ .
. . ྫ : Hashcash (1997) ϝʔϧϔομʹ SHA-1 ϋογϡͷ࠷ॳͷ 20 Ϗοτ (࣌) ͕ 0 ʹͳΔΑ͏ͳཚΛ༻͍ͨ ελϯϓΛࡌͤΔ 1 ௨ͷϝʔϧͷૹ৴४උʹ 1 ඵ΄Ͳ͔͔Δ ड৴ଆͰͷ֬ೝҰॠͰɺελϯϓ͕ແޮͳΒεύϜͱѻ͏ ϋογϡ/μΠδΣετΛ༻͍Δ߹ͷҰൠԽ ͋ΔλʔήοτҎԼʹͳΔΑ͏ͳμΠδΣετͱͳΔσʔλΛݟ͚ͭΑ ϋογϡͳͷͰେখΛൺֱͰ͖Δ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.30/40
ϚΠχϯά ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.31/40
ϚΠφʔͷৼΔ͍ ޮΛٻ͢Δ ઐ༻ϋʔυΣΞͷग़ݱ CPU → GPU → FPGA → ASIC
ϚΠχϯάʹ (ిྗ) ίετ͕͔͔Δ ͠ɺظ͞ΕΔརӹ͕ίετΑΓେ͖͚Ε → ΑΓଟ͘ͷϚΠφʔ͕ࢀೖ͠ϋʔυΣΞʹࢿ͢Δ ͠ɺظ͞ΕΔརӹ͕ίετΑΓখ͚͞Ε → ϚΠφʔఫୀ͢Δ (·ͣిݯΛམͱ͢) ϚΠχϯάूஂతʹͳΓɺαʔϏεʹͳΔ ݸਓ͕ΑΓ؆୯ʹࢀೖ͠ఫୀ͘͢͠ͳΔ ϚΠφʔͷूஂͱͯ͠ͷৼΔ͍͕ BTC ͷऔҾࢢͷܦࡁݪཧʹࠨӈ͞ΕΔ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.32/40
λʔήοτͷௐ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.33/40
POW ʹΑΔอޢ औҾվ͟ΜͰ͖ͳ͍͕আɾՃՄೳ (ϒϩοΫվ͟ΜͰ͖Δ) Proof Of Work Λ՝͢͜ͱͰվ͟ΜΛࢭ͢Δͱ͍͏͕ . .
. ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.34/40
ϋογϡϨʔτͷਪҠ (20091݄∼20199݄) ѱҙ͕ͷϋογϡϨʔτΛ୲͏ͱɺਖ਼͠͞ΛอূͰ͖ͳ͘ͳΔ ٸܹʹ 2 ഒҎ্ʹͳΕΔͱͨ͠Βɺݪཧతʹة͏͍ → ͦͯ͠ٸܹʹ 2 ഒҎ্ʹͳΓͳ͕ΒਐΜͰ͍Δ
ٯʹɺٸܹʹ 2 ഒҎ্ʹͳ͍͔ͬͯͳ͍ͱͨ͠Βʁ→ ѱҙʹࢀೖͷ༨Λ༩͑ͯ͠·͏ͱ͍͏δϨϯϚ ٸܹʹʹͳͬͨΒʁ → ݪཧతʹͱͯة͏͍ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.35/40
ΑΓৄࡉʹ͍ͭͯ https://bitcoin.org/en/developer-reference ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.36/40
ϖΠϝϯτνϟωϧ τϥϯβΫγϣϯ 1 ճຖʹϚΠφʔʹखྉΛࢧ͏ͱϚΠΫϩϖΠϝϯτʹ ͳΒͳ͍ 1 ԁ͚͍͍ͩͨͷʹखྉ͕े ∼ ඦԁͱ͔ʹͳΔ 2
ऀؒͰσϙδοτΛஔ͖ɺࢧ͍ͷͨΊͷνϟωϧΛ։͖ɺด͡Δ·Ͱͷؒͷ ෳճͷࢧ͍ΛΦϑνΣʔϯͰ࣮ࢪ͢Δͱ͍͏ΞΠσΞ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.37/40
ϖΠϝϯτνϟωϧ A-B ؒʹ௨৴νϟωϧ͕ແ͚ΕͳΒͳ͍ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.38/40
ϥΠτχϯάωοτϫʔΫ ϖΠϝϯτνϟωϧಛఆͷ 2 ऀ͚ؒ ෳͷϖΠϝϯτνϟωϧΛލ͍Ͱࢧ͏͜ͱͰɺҙͷ 2 ऀؒͷߴ (ֹ͔ͭ) ͷࢧ͍Λ࣮ݱ Ripple
Path ͷΑ͏ͳͷ ͜͜·ͰདྷΔͱނো͕૿͑ΔͷͰ҆ఆಈ࡞͢Δ͔ෆ҆ Πϯλʔωοτࣗମͷӡ༻ͷΑ͏ͳϊϋͱਓख͕ඞཁʹͳΔͷͰʁ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.39/40
࣭ٞ͝Λ ϏοτίΠϯͷٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-01-29 – p.40/40