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
February 07, 2020
Technology
1
160
ビットコインの技術 / Bitcoin Technology
2020年2月7日(金)、ブロックチェーンハブ主催のブロックチェーンアカデミー「ビットコインの技術」にて使用したスライドです。
Kenji Saito
PRO
February 07, 2020
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
スマートコントラクトと分散ファイナンス / Smart Contracts and Decentralized Finance
ks91
PRO
0
51
シン・ブロックチェーン / Truth of Blockchain
ks91
PRO
0
78
パスワード/パスフレーズと認証 / Password, Passphrase and Authentication
ks91
PRO
0
32
git と GitHub / git and GitHub
ks91
PRO
0
34
ソフトウェアの開発と保守 / Software Development and Maintenance
ks91
PRO
0
46
インターネットの特徴 / Features of the Internet
ks91
PRO
0
32
インターネットのガバナンス / Governance of the Internet
ks91
PRO
0
29
暗号学的ハッシュ関数 / Cryptographic Hash Function
ks91
PRO
0
35
デジタル署名 / Digital Signature
ks91
PRO
0
30
Other Decks in Technology
See All in Technology
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
3
1.7k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
900
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.9k
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
550
変化する開発、進化する体系時代に適応するソフトウェアエンジニアの知識と考え方(JaSST'25 Kansai)
mizunori
1
230
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
260
M3 Expressiveの思想に迫る
chnotchy
0
110
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
210
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
240
Witchcraft for Memory
pocke
1
400
Agentic Workflowという選択肢を考える
tkikuchi1002
1
530
Windows 11 で AWS Documentation MCP Server 接続実践/practical-aws-documentation-mcp-server-connection-on-windows-11
emiki
0
990
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
KATA
mclloyd
29
14k
Unsuck your backbone
ammeep
671
58k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Producing Creativity
orderedlist
PRO
346
40k
Faster Mobile Websites
deanohume
307
31k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
A designer walks into a library…
pauljervisheath
207
24k
Transcript
Chief Science Officer /
[email protected]
— — 2020-02-07 – p.1/41
https://speakerdeck.com/ks91 — — 2020-02-07 – p.2/41
( ) SFC CSO (Chief Science Officer) 1993 ( )
2006 ( ) SFC 19 P2P (Peer-to-Peer) ( 9 ) 2011 2018 2019 ∼ 2019 ∼ REINVENT THE WORLD → ( ) — — 2020-02-07 – p.3/41
( ) “Grokking Bitcoin” ∼ ( ) ( ) —
— 2020-02-07 – p.4/41
Proof of Work SegWit — — 2020-02-07 – p.5/41
— — 2020-02-07 – p.6/41
(1) = ( ) ⇒ P2P ⇒ ( ) —
— 2020-02-07 – p.7/41
(2) (double spending) ( ) ⇒ ⇒ ( ) →
( ) ( ) ⇒ → → ⇒ → — — 2020-02-07 – p.8/41
/ — — 2020-02-07 – p.9/41
/ (1) 2,100 cm3 (cc) 1 1cm3 10 12.5cm3 ⇒
⇒ ( ) — — 2020-02-07 – p.10/41
/ (2) ( ) ( ) ( ) ( )
( ) → ( ) — — 2020-02-07 – p.11/41
∼ UTXO (= ) → — — 2020-02-07 – p.12/41
∼ ท൪߸O ท൪߸O ท൪߸O લทͷμΠδΣετ λʔήοτҎԼͰͳ͍ͱ͍͚ͳ͍ Έͩ͠ίʔφʔ μΠδΣετ͕λʔήοτҎԼʹͳΔΑ͏ʹೖΕΔదͳ༰
( ) → — — 2020-02-07 – p.13/41
∼ ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O
ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ͬͪ͜ͷྺ࢙͕༗ޮ ( ) — — 2020-02-07 – p.14/41
= (virtually) = = = : → ( ) —
— 2020-02-07 – p.15/41
— — 2020-02-07 – p.16/41
ϏοτίΠϯωοτϫʔΫ ɾ ճͷʮ࠾۷ʯྔ ຖʹݮ ɾ߹ܭ ສ #5$
·Ͱ औҾͷొ खྉ खྉ औҾͷঝೝ ϚΠχϯά࣌ ϚΠχϯά ࠾۷ ֬తաఔ ฏۉ ͓͖ʹޭ ૹۚࢦ֤͕ࣔࣗͭ ϓϥΠϕʔτΩʔͰ ແͨ͘͠Β࠶ൃߦෆՄ ϚΠφʔ ࠾۷ऀ ࢧ͍ɾ྆ସ ͳͲͷܦࡁ׆ಈ ར༻ऀ ϒϩοΫνΣʔϯ ݩா Πϯλʔωοτ্ͷԾωοτϫʔΫ ʜ ˞#5$ϏοτίΠϯͷ୯Ґ #5$ ରԠ ϒϩοΫ ϒϩοΫ ϒϩοΫ औҾ ૹۚ औҾͷه ΞυϨε Ѽઌ ϓϥΠϕʔτΩʔ ຊਓͷূ໌ — — 2020-02-07 – p.17/41
— — 2020-02-07 – p.18/41
μΠδΣετ ϒϩοΫ O ϚΠχϯάใु ݻఆ खྉ ೖྗͷ߹ܭͱग़ྗͷ߹ܭͷࠩ .FSLMFΛܭࢉͯ͠ ͦͷϧʔτΛ֨ೲ
͍ͣΕऔҾه͕औΓग़͞Εɺ ͦͷ࣌ͷਖ਼࢙ʹೖ͍ͬͯͳ͍ͷͳΒ ৽ͨͳϒϩοΫͷதʹ֨ೲ͞ΕΔ ᶃਖ਼ੑͷอূ ϏοτίΠϯͰ 6590 ߏ ᶄଘࡏੑͷূ໌ ϏοτίΠϯͰ࡞ۀূ໌͖ϋογϡνΣʔϯ ᶅ།Ұੑͷ߹ҙ ϏοτίΠϯͰ φΧϞτɾίϯηϯαε ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ #5$ ੜ औҾ औҾ औҾ औҾ ʜʜ ΑΓ͍ ࡞ۀূ໌ ͷίετ͕ΑΓΘ Ε͍ͯΔ νΣʔϯ ͕༗ޮͱͳΔ μΠδΣετ㱡λʔήοτ 1SPPG0G8PSL ࡞ۀূ໌ աڈͷऔҾग़ྗͷࢀর σδλϧॺ໊ ެ։ݤ Ѽઌͱྔ ίΠϯ λʔήοτ ϊϯε ೖྗ ೖྗ ग़ྗ ग़ྗ 1. 10 ( ) 2. 3. 1 — — 2020-02-07 – p.19/41
/DLT ਖ਼ੑͷอূ ྫ6590ߏͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస ɾ
τϥϯβΫγϣϯͷ༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼ͳϢʔβʹΑΓೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕ೖ͞Εͨ߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ — — 2020-02-07 – p.20/41
- https://blockchain.com/ — — 2020-02-07 – p.21/41
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 “Hex to ASCII Text Converter” — — 2020-02-07 – p.22/41
(1) (= ) → — — 2020-02-07 – p.23/41
(2) M A 60BTC ( ) SegWit — — 2020-02-07
– p.24/41
SegWit (Segregated Witness; ) (witness) ( ) ( TX )
— — 2020-02-07 – p.25/41
SegWit (malleability) https://bitcoincore.org/en/2016/01/26/segwit-benefits/ — — 2020-02-07 – p.26/41
— — 2020-02-07 – p.27/41
Merkle ( ) Digest = SHA-256 × SHA-256 TX (
) — — 2020-02-07 – p.28/41
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 — — 2020-02-07 – p.29/41
OP_RETURN PUSH 0xaa21a9ed 4 (witness) SHA-256 32 Merkle — —
2020-02-07 – p.30/41
Proof of Work ( ) ( ) . . .
: Hashcash (1997) SHA-1 20 ( ) 0 1 1 / — — 2020-02-07 – p.31/41
— — 2020-02-07 – p.32/41
CPU → GPU → FPGA → ASIC ( ) →
→ ( ) ⇒ BTC BTC — — 2020-02-07 – p.33/41
— — 2020-02-07 – p.34/41
POW ( ) Proof Of Work . . . —
— 2020-02-07 – p.35/41
(2009 1 ∼2020 2 ) 2 → 2 2 →
→ — — 2020-02-07 – p.36/41
https://bitcoin.org/en/developer-reference — — 2020-02-07 – p.37/41
1 1 ∼ 2 — — 2020-02-07 – p.38/41
A-B — — 2020-02-07 – p.39/41
2 2 ( ) Ripple Path — — 2020-02-07 –
p.40/41
— — 2020-02-07 – p.41/41