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
7
FinTech 7-8 : Blockchain
ks91
PRO
0
75
スマートコントラクトプログラミング / Smart Contract Programming
ks91
PRO
0
19
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
59
FinTech 5-6 : The World of Apps
ks91
PRO
0
110
生成AI による論文執筆サポート・ワークショップ ─ サーベイ/リサーチクエスチョン編 / Workshop on AI-Assisted Paper Writing Support: Survey/Research Question Edition
ks91
PRO
0
84
ブロックチェーン概論とインストール大会 / Introduction to Blockchain and Installation Workshop
ks91
PRO
0
11
FinTech 3-4 : Internet Technology and Governance
ks91
PRO
0
83
民主主義と博愛(Humanitarianism) / Democracy and Humanitarianism
ks91
PRO
0
19
Other Decks in Technology
See All in Technology
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
160
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
3
5.2k
実践マルチモーダル検索!
shibuiwilliam
1
440
re:Invent 2025の見どころと便利アイテムをご紹介 / Highlights and Useful Items for re:Invent 2025
yuj1osm
0
420
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
160
Behind Postgres 18: The People, the Code, & the Invisible Work | Claire Giordano | PGConfEU 2025
clairegiordano
0
160
Zero Trust DNS でより安全なインターネット アクセス
murachiakira
0
120
251029 JAWS-UG AI/ML 退屈なことはQDevにやらせよう
otakensh
0
110
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
860
webpack依存からの脱却!快適フロントエンド開発をViteで実現する #vuefes
bengo4com
4
3.8k
アノテーション作業書作成のGood Practice
cierpa0905
PRO
1
320
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
310
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Writing Fast Ruby
sferik
630
62k
GraphQLとの向き合い方2022年版
quramy
49
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.9k
Side Projects
sachag
455
43k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
640
Optimising Largest Contentful Paint
csswizardry
37
3.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
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