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 02, 2020
Technology
0
110
ビットコインの技術 / Bitcoin Technology
2020年9月2日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミー「ビットコインの技術」にて使用したスライドです。
Kenji Saito
PRO
September 02, 2020
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
シリアスゲームとしての RPG / RPG as a Serious Game
ks91
PRO
0
23
"September 12th" ゲームのプロンプトの構造 / Prompt Structure of "September 12th" Game
ks91
PRO
0
27
コードや知識を組み込む / Incorporate Code and knowledge
ks91
PRO
0
150
大規模言語モデルの原理と使いこなしの原則 / Principles of Large Language Models and Their Use
ks91
PRO
0
38
自然言語の扱いと翻訳のためのプロンプト / Natural Language Handling and Prompts for Translation
ks91
PRO
0
30
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
150
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM and Prompt Engineering and Building Tutors
ks91
PRO
0
270
講師自己紹介 / Lecturer's Self-Introduction
ks91
PRO
0
99
講師研究紹介 / Lecturer's Research Introduction
ks91
PRO
0
84
Other Decks in Technology
See All in Technology
LLM開発・活用の舞台裏@2024.04.25
yushin_n
3
1.2k
実例で紹介するRAG導入時の知見と精度向上の勘所
yamahiro
5
1.6k
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
4
610
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
2.6k
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
890
AWS学習者向けにAzureの解説スライドを作成した話
handy
3
190
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
450
IaCジェネレーターとBedrockで詳細設計書を生成してみた
tsukasa_ishimaru
4
890
ルーターでプレゼンする
puhitaku
1
3.3k
ゼロから始めるVue.jsコミュニティ貢献 / first-vuejs-community-contribution-link-and-motivation
lmi
1
150
生産性向上チームの紹介
cybozuinsideout
PRO
1
920
M5と自作基板をくっつけてみた〜M5 Japan Tour 2024 Spring 福冈 (Fukuoka|福岡)〜
keropiyo
0
130
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
32
46k
A designer walks into a library…
pauljervisheath
201
23k
BBQ
matthewcrist
80
8.8k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
Faster Mobile Websites
deanohume
300
30k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
Optimising Largest Contentful Paint
csswizardry
12
2.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
117
18k
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Side Projects
sachag
451
41k
Testing 201, or: Great Expectations
jmmastey
30
6.4k
Transcript
Chief Science Officer /
[email protected]
— — 2020-09-02 – p.1/41
https://speakerdeck.com/ks91 — — 2020-09-02 – p.2/41
( ) SFC ( ) CSO (Chief Science Officer) 1993
( ) 2006 ( ) SFC 20 P2P (Peer-to-Peer) ( 9 ) 2011 2018 2019 2019 2020 2020 → ( ) — — 2020-09-02 – p.3/41
: Kalle Rosenbaum , , — (2020) : 1 —
— 2020-09-02 – p.4/41
Proof of Work SegWit — — 2020-09-02 – p.5/41
— — 2020-09-02 – p.6/41
(1) = ( ) ⇒ P2P ⇒ ( ) —
— 2020-09-02 – p.7/41
(2) (double spending) ( ) ⇒ ⇒ ( ) →
( ) ( ) ( ) ⇒ → → ⇒ → — — 2020-09-02 – p.8/41
/ — — 2020-09-02 – p.9/41
/ (1) 2,100 cm3 (cc) 1 1cm3 10 6.25cm3 ⇒
⇒ ( ) — — 2020-09-02 – p.10/41
/ (2) ( ) ( ) ( ) ( )
( ) ( ) → ( ) — — 2020-09-02 – p.11/41
∼ UTXO (= ) → — — 2020-09-02 – p.12/41
∼ ท൪߸O ท൪߸O ท൪߸O લทͷμΠδΣετ λʔήοτҎԼͰͳ͍ͱ͍͚ͳ͍ Έͩ͠ίʔφʔ μΠδΣετ͕λʔήοτҎԼʹͳΔΑ͏ʹೖΕΔదͳ༰
( ) → — — 2020-09-02 – p.13/41
∼ ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O
ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ͬͪ͜ͷྺ࢙͕༗ޮ ( ) — — 2020-09-02 – p.14/41
= (virtually) = = = : → ( ) —
— 2020-09-02 – p.15/41
— — 2020-09-02 – p.16/41
ϏοτίΠϯωοτϫʔΫ ɾ ճͷʮ࠾۷ʯྔ ຖʹݮ ɾ߹ܭ ສ #5$
·Ͱ औҾͷొ खྉ खྉ औҾͷঝೝ ϚΠχϯά࣌ ϚΠχϯά ࠾۷ ֬తաఔ ฏۉ ͓͖ʹޭ ૹۚࢦ֤͕ࣔࣗͭ ϓϥΠϕʔτΩʔͰ ແͨ͘͠Β࠶ൃߦෆՄ ϚΠφʔ ࠾۷ऀ ࢧ͍ɾ྆ସ ͳͲͷܦࡁ׆ಈ ར༻ऀ ϒϩοΫνΣʔϯ ݩா Πϯλʔωοτ্ͷԾωοτϫʔΫ ʜ ˞#5$ϏοτίΠϯͷ୯Ґ #5$ ରԠ ϒϩοΫ ϒϩοΫ ϒϩοΫ औҾ ૹۚ औҾͷه ΞυϨε Ѽઌ ϓϥΠϕʔτΩʔ ຊਓͷূ໌ — — 2020-09-02 – p.17/41
— — 2020-09-02 – p.18/41
μΠδΣετ ϒϩοΫ O ϚΠχϯάใु ݻఆ खྉ ೖྗͷ߹ܭͱग़ྗͷ߹ܭͷࠩ .FSLMFΛܭࢉͯ͠ ͦͷϧʔτΛ֨ೲ
͍ͣΕऔҾه͕औΓग़͞Εɺ ͦͷ࣌ͷਖ਼࢙ʹೖ͍ͬͯͳ͍ͷͳΒ ৽ͨͳϒϩοΫͷதʹ֨ೲ͞ΕΔ ᶃਖ਼ੑͷอূ ϏοτίΠϯͰ 6590 ߏ ᶄଘࡏੑͷূ໌ ϏοτίΠϯͰ࡞ۀূ໌͖ϋογϡνΣʔϯ ᶅ།Ұੑͷ߹ҙ ϏοτίΠϯͰ φΧϞτɾίϯηϯαε ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O ϒϩοΫ O μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ #5$ ੜ औҾ औҾ औҾ औҾ ʜʜ ΑΓ͍ ࡞ۀূ໌ ͷίετ͕ΑΓΘ Ε͍ͯΔ νΣʔϯ ͕༗ޮͱͳΔ μΠδΣετ㱡λʔήοτ 1SPPG0G8PSL ࡞ۀূ໌ աڈͷऔҾग़ྗͷࢀর σδλϧॺ໊ ެ։ݤ Ѽઌͱྔ ίΠϯ λʔήοτ ϊϯε ೖྗ ೖྗ ग़ྗ ग़ྗ 1. 10 ( ) 2. 3. 1 — — 2020-09-02 – p.19/41
/DLT ਖ਼ੑͷอূ ྫ6590ߏͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస ɾ
τϥϯβΫγϣϯͷ༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼ͳϢʔβʹΑΓೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕ೖ͞Εͨ߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ — — 2020-09-02 – p.20/41
- https://blockchain.com/ — — 2020-09-02 – 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 “Hex to ASCII Text Converter” — — 2020-09-02 – p.22/41
(1) (= ) → — — 2020-09-02 – p.23/41
(2) M A 60BTC ( ) SegWit — — 2020-09-02
– p.24/41
SegWit (Segregated Witness; ) (witness) ( ) ( TX )
— — 2020-09-02 – p.25/41
SegWit (malleability) https://bitcoincore.org/en/2016/01/26/segwit-benefits/ — — 2020-09-02 – p.26/41
— — 2020-09-02 – p.27/41
Merkle ( ) Digest = SHA-256 × SHA-256 TX (
) — — 2020-09-02 – 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-09-02 – p.29/41
OP_RETURN PUSH 0xaa21a9ed 4 (witness) SHA-256 32 Merkle — —
2020-09-02 – p.30/41
Proof of Work ( ) ( ) . . .
: Hashcash (1997) SHA-1 20 ( ) 0 1 1 / — — 2020-09-02 – p.31/41
— — 2020-09-02 – p.32/41
CPU → GPU → FPGA → ASIC ( ) →
→ ( ) ⇒ BTC BTC — — 2020-09-02 – p.33/41
— — 2020-09-02 – p.34/41
POW ( ) Proof Of Work . . . —
— 2020-09-02 – p.35/41
(2009 1 ∼2020 8 ) 2 → 2 2 →
→ — — 2020-09-02 – p.36/41
https://bitcoin.org/en/developer-reference — — 2020-09-02 – p.37/41
1 1 ∼ 2 — — 2020-09-02 – p.38/41
A-B — — 2020-09-02 – p.39/41
2 2 ( ) Ripple Path — — 2020-09-02 –
p.40/41
— — 2020-09-02 – p.41/41