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 and Ethereum Technology
Search
Kenji Saito
PRO
October 03, 2018
Technology
1
200
ビットコインとイーサリアムの技術 / Bitcoin and Ethereum Technology
2018年10月3日(水)、ブロックチェーンハブ主催で開催されたブロックチェーンアカデミー「ビットコインとイーサリアムの技術」にて使用したスライドです。
Kenji Saito
PRO
October 03, 2018
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
FinTech 7-8 : Blockchain
ks91
PRO
0
64
スマートコントラクトプログラミング / Smart Contract Programming
ks91
PRO
0
13
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
38
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
71
ブロックチェーン概論とインストール大会 / Introduction to Blockchain and Installation Workshop
ks91
PRO
0
4
FinTech 3-4 : Internet Technology and Governance
ks91
PRO
0
81
民主主義と博愛(Humanitarianism) / Democracy and Humanitarianism
ks91
PRO
0
8
ブロックチェーン概論 / Introduction to Blockchain
ks91
PRO
0
12
Other Decks in Technology
See All in Technology
ソースを読むプロセスの例
sat
PRO
15
9.9k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
13
82k
スタートアップの現場で実践しているテストマネジメント #jasst_kyushu
makky_tyuyan
0
120
SQLAlchemy の select(User).where(User.id =="123") を理解してみる/sqlalchemy deep dive
3l4l5
3
340
[2025年10月版] Databricks Data + AI Boot Camp
databricksjapan
1
260
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
120
Azureコストと向き合った、4年半のリアル / Four and a half years of dealing with Azure costs
aeonpeople
1
280
事業開発におけるDify活用事例
kentarofujii
5
1.4k
難しいセキュリティ用語をわかりやすくしてみた
yuta3110
0
390
What's new in OpenShift 4.20
redhatlivestreaming
0
210
FinOps について (ちょっと) 本気出して考えてみた
skmkzyk
0
210
AIとともに歩んでいくデザイナーの役割の変化
lycorptech_jp
PRO
0
870
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Music & Morning Musume
bryan
46
6.9k
A Modern Web Designer's Workflow
chriscoyier
697
190k
The Pragmatic Product Professional
lauravandoore
36
7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Docker and Python
trallard
46
3.6k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Statistics for Hackers
jakevdp
799
220k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Site-Speed That Sticks
csswizardry
13
920
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Transcript
CSO / SFC
[email protected]
— — 2018-10-03 – p.1/66
( ) SFC ( ) CSO (Chief Science Officer) 1993
( ) 2006 ( ) SFC 18 P2P (Peer-to-Peer) 2011 SFC 2018 → ( ) — — 2018-10-03 – p.2/66
— — 2018-10-03 – p.3/66
Proof of Work SegWit — — 2018-10-03 – p.4/66
— — 2018-10-03 – p.5/66
(1) ( ) ⇒ P2P ⇒ ( ) — —
2018-10-03 – p.6/66
(2) (double spending) ( ) ⇒ ⇒ ( ) →
( ) ( ) ⇒ → → ⇒ → — — 2018-10-03 – p.7/66
/ — — 2018-10-03 – p.8/66
/ (1) 2,100 cm3 (cc) 1 1cm3 10 12.5cm3 ⇒
⇒ ( ) — — 2018-10-03 – p.9/66
/ (2) ( ) ( ) ( ) ( )
( ) → ( ) — — 2018-10-03 – p.10/66
∼ UTXO (= ) → — — 2018-10-03 – p.11/66
∼ ท൪߸O ท൪߸O ท൪߸O લทͷμΠδΣετ λʔήοτҎԼͰͳ͍ͱ͍͚ͳ͍ Έͩ͠ίʔφʔ μΠδΣετ͕λʔήοτҎԼʹͳΔΑ͏ʹೖΕΔదͳ༰
( ) → — — 2018-10-03 – p.12/66
∼ ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O
ϖʔδ൪߸O ϖʔδ൪߸O ϖʔδ൪߸O ͬͪ͜ͷྺ࢙͕༗ޮ ( ) — — 2018-10-03 – p.13/66
= (virtually) = = = : → ( ) —
— 2018-10-03 – p.14/66
— — 2018-10-03 – p.15/66
— — 2018-10-03 – p.16/66
— — 2018-10-03 – p.17/66
1. 10 ( ) 2. 3. 1 — — 2018-10-03
– p.18/66
/DLT ਖ਼ੑͷอূ ྫ6590ߏͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస ɾ
τϥϯβΫγϣϯͷ༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼ͳϢʔβʹΑΓೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕ೖ͞Εͨ߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ — — 2018-10-03 – p.19/66
- https://blockchain.info/ — — 2018-10-03 – p.20/66
0 and/or “The Times 03/Jan/2009 Chancellor on brink of second
bailout for banks” 2009 1 3 2 https://blockchain.info SEARCH 0 — — 2018-10-03 – p.21/66
(1) (= ) → — — 2018-10-03 – p.22/66
(2) M A 60BTC ( ) SegWit — — 2018-10-03
– p.23/66
SegWit (Segregated Witness; ) (witness) — — 2018-10-03 – p.24/66
SegWit (malleability) https://bitcoincore.org/en/2016/01/26/segwit-benefits/ — — 2018-10-03 – p.25/66
— — 2018-10-03 – p.26/66
Merkle ( ) Digest = SHA-256 × SHA-256 TX (
) — — 2018-10-03 – p.27/66
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 — — 2018-10-03 – p.28/66
OP_RETURN PUSH 0xaa21a9ed 4 (witness) SHA-256 32 Merkle — —
2018-10-03 – p.29/66
Proof of Work ( ) ( ) . . .
: Hashcash (1997) SHA-1 20 ( ) 0 1 1 / — — 2018-10-03 – p.30/66
— — 2018-10-03 – p.31/66
CPU → GPU → FPGA → ASIC ( ) →
→ ( ) BTC — — 2018-10-03 – p.32/66
— — 2018-10-03 – p.33/66
POW ( ) Proof Of Work . . . —
— 2018-10-03 – p.34/66
(2009 1 ∼2018 8 ) 2 → 2 2 →
— — 2018-10-03 – p.35/66
https://bitcoin.org/en/developer-reference — — 2018-10-03 – p.36/66
1 1 ∼ 2 — — 2018-10-03 – p.37/66
A-B — — 2018-10-03 – p.38/66
2 2 ( ) Ripple Path — — 2018-10-03 –
p.39/66
— — 2018-10-03 – p.40/66
(EVM) — — 2018-10-03 – p.41/66
(Ethereum) EVM (Ethereum Virtual Machine) — — 2018-10-03 – p.42/66
Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART CONTRACT
& DECENTRALIZED APPLICATION PLATFORM” 15 / — — 2018-10-03 – p.43/66
= run — — 2018-10-03 – p.44/66
Ether Ethereum EOA : Externally-Owned Account Ether EVM EVM —
— 2018-10-03 – p.45/66
EVM : Ethereum Virtual Machine Gas — — 2018-10-03 –
p.46/66
Frontier (2015) Homestead (2016) Metropolis Byzantium (2017) ← zkSNARKs (
) → Zcash on Ethereum (ZoE) Constantinople (2018 ) Serenity — — 2018-10-03 – p.47/66
— — 2018-10-03 – p.48/66
( ) ( ) ( vs. ) ( ) (
) ( ) ⇒ ( : BBc-1) DLT : : — — 2018-10-03 – p.49/66
( ) ⇒ (Casper) ( ) ⇒ ZoE (Zcash on
Ethereum) ( vs. ) ( ) ⇒ Plasma ( ) ⇒ ( ) (Benevolent Dictator For Life (BDFL)) ( ) ⇒ — — 2018-10-03 – p.50/66
Proof of Work + Proof of Stake + — —
2018-10-03 – p.51/66
SHA-256 × SHA-256 SHA-256 × RIPEMD-160 (1 ) . .
. scrypt ( ) Ethash (Dagger-Hashimoto ) DAG : Directed Acyclic Graph ( ) https://github.com/ethereum/wiki/wiki/Ethash — — 2018-10-03 – p.52/66
GHOST (Greedy Heaviest Observed Subtree) ⇒ GHOST ( ) “uncles”
proof of work ( ) uncle uncles 7 GHOST — — 2018-10-03 – p.53/66
IUUQTFOXJLJQFEJBPSHXJLJ3BEJY@USFF key OK PATRICIA (Practical Algorithm To Retrieve Information Coded
In Alphanumeric) Trie ( ) (key, value) RLP (recursive length prefix encoding) — — 2018-10-03 – p.54/66
Proof of Stake Casper — — 2018-10-03 – p.55/66
Proof of Stake ( ) ( ) — — 2018-10-03
– p.56/66
Proof of Stake ( ) H n (PD + id
+ t + . . .) ≤ 2n × balance d H n : n (ex. SHA-256 (n = 256)) PD : id : (ex. ) t : (ex. UNIX ( )) balance : d : (ex. ) PoW — — 2018-10-03 – p.57/66
Proof of Stake 3 1. 2. “Nothing at Stake” 3.
51% — — 2018-10-03 – p.58/66
: Proof of Stake Velocity Reddcoin — — 2018-10-03 –
p.59/66
Nothing at Stake - = — — 2018-10-03 – p.60/66
Nothing at Stake - 100% Proof of Stake — —
2018-10-03 – p.61/66
51% — — 2018-10-03 – p.62/66
Casper : Nothing at Stake (Slasher) 100 ⇒ — —
2018-10-03 – p.63/66
( ) PoS — — 2018-10-03 – p.64/66
µRaiden Raiden Network Plasma — — 2018-10-03 – p.65/66
— — 2018-10-03 – p.66/66