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
成果と意思決定 / Performance and Making Decisions
ks91
PRO
0
34
ボランティア / Volunteers
ks91
PRO
0
27
理事会 / Board of Directors
ks91
PRO
0
23
成果 / Achievements
ks91
PRO
0
26
意思決定 / Decision-Making
ks91
PRO
0
27
ファンディングとデジタル市民社会 / Funding and Digital Civil Society
ks91
PRO
0
37
生成AI による論文執筆サポート・ワークショップ 論文執筆・推敲編 / Generative AI-Assisted Paper Writing Support Workshop: Drafting and Revision Edition
ks91
PRO
0
62
私たちの前提は揺るがないのか / Are Our Premises Unshakeable?
ks91
PRO
0
35
貨幣無き世界への過程 / The Process Towards a World without Money
ks91
PRO
0
21
Other Decks in Technology
See All in Technology
障害対応訓練、その前に
coconala_engineer
0
200
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
LayerX QA Night#1
koyaman2
0
270
M&Aで拡大し続けるGENDAのデータ活用を促すためのDatabricks権限管理 / AEON TECH HUB #22
genda
0
270
AgentCore BrowserとClaude Codeスキルを活用した 『初手AI』を実現する業務自動化AIエージェント基盤
ruzia
7
1.6k
さくらのクラウド開発ふりかえり2025
kazeburo
2
1.2k
AIBuildersDay_track_A_iidaxs
iidaxs
4
1.4k
100以上の新規コネクタ提供を可能にしたアーキテクチャ
ooyukioo
0
260
Introduce marp-ai-slide-generator
itarutomy
0
130
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
9.9k
"人"が頑張るAI駆動開発
yokomachi
1
620
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
270
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
22
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
0
97
The Invisible Side of Design
smashingmag
302
51k
Amusing Abliteration
ianozsvald
0
72
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
680
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
410
Evolving SEO for Evolving Search Engines
ryanjones
0
77
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
130
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
0
320
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