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
スマートコントラクト / Smart Contracts
Search
Kenji Saito
PRO
June 28, 2021
Technology
0
170
スマートコントラクト / Smart Contracts
2021年6月28日、早稲田大学 大学院経営管理研究科の「フィンテック ─ 金融革新とインターネット (2021夏)」第8-9回にて使用したスライドです。
Kenji Saito
PRO
June 28, 2021
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
デジタルトランスフォーメーションと民主主義 / Digital Transformation and Democracy
ks91
PRO
0
5
We Never Took the Kobayashi Maru Test Until Now. What Do You Think of Our Solutions? — Journeys of the Mind Through a No-Win Game
ks91
PRO
0
17
思いつきが武器になる:研究というゲームを始めよう / Ideas Are Your Equipments : Let the Game of Research Begin!
ks91
PRO
0
75
ロボットを雰囲気(ヴァイブ)でプログラミングするこどもたち / Children Vibe-Programming Robots
ks91
PRO
0
22
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 3
ks91
PRO
0
31
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 2
ks91
PRO
0
34
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
160
未来へのフォワードキャスト / Forward Cast to the Future
ks91
PRO
0
88
発表と総括 / Presentations and Summary
ks91
PRO
0
62
Other Decks in Technology
See All in Technology
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.4k
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
240
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
450
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
21
11k
S3アクセス制御の設計ポイント
tommy0124
3
200
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
140
AWSで始める実践Dagster入門
kitagawaz
1
620
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
560
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
DroidKaigi 2025 Androidエンジニアとしてのキャリア
mhidaka
2
280
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Six Lessons from altMBA
skipperchong
28
4k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Become a Pro
speakerdeck
PRO
29
5.5k
Automating Front-end Workflow
addyosmani
1370
200k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Producing Creativity
orderedlist
PRO
347
40k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Building an army of robots
kneath
306
46k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
— 2021 8-9 (WBS) — 2021 8-9 — 2021-06-28 –
p.1/70
https://speakerdeck.com/ks91 — 2021 8-9 — 2021-06-28 – p.2/70
( ) 1 5 31 • 2 6 7 (1)
• 3 6 7 (2) • 4 6 14 – (1) • 5 6 14 – (2) • 6 6 21 (1) • 7 6 21 (2) • 8 6 28 (1) • 9 6 28 (2) • 10 7 5 (1) 11 7 5 (2) 12 7 12 (1) 13 7 12 (2) 14 7 19 (1) 15 7 19 (2) — 2021 8-9 — 2021-06-28 – p.3/70
1. 2. 3. 4. 5. Ethereum 6. 7. 8. 9.
— 2021 8-9 — 2021-06-28 – p.4/70
ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O
ϒϩοΫ൪߸O ϒϩοΫ൪߸O ͍ͪΜهɾॻ͖͑ͷίετ͕ߴ͍ྺ࢙ ࠷վ͟Μ͠ʹ͍͘ྺ࢙ ͕༗ޮ ͻͱͭखલͷϒϩοΫͷ ʮμΠδΣετʯ σδλϧॺ໊͞Εͨ ʮτϥϯβΫγϣϯ औҾ ʯ ϒϩοΫΛ࡞ΔͨΊʹɺͦͷʮμΠδΣετʯ͕͋ΔҎԼͱ͍͏݅Λຬͨͨ͠Γ 1SPPGPG8PSL Ծ௨՟ͷ࣋ͪʹԠͨ͡ݖརΛͬͨථͰউͬͨΓ 1SPPGPG4UBLF ͢Δඞཁ͕͋Δ ίετ͕͔͔Δ ϒϩοΫΛ࡞ΔਓͦͷதʹࣗʹѼͯͨ Ծ௨՟ͰͷใुΛॻ͖ࠐΉ͜ͱ͕Ͱ͖ɺ ͦͷϒϩοΫ͕༗ޮͳྺ࢙ͷதʹ͋Δ߹ʹ ݶΓใु༗ޮͱͳΔ τϥϯβΫγϣϯͷଘࡏΛ֬ೝ͢Δ ͨΊͷޮతͳํ๏͕ఏڙ͞ΕΔ ਖ਼ੑ ଘࡏੑ །Ұੑ Proof of Work ( ) . . . → — 2021 8-9 — 2021-06-28 – p.5/70
1. — 2021 8-9 — 2021-06-28 – p.6/70
(Hyperledger ) ( ) ( ) ( ) ( )(
) IoT / / ( ) — 2021 8-9 — 2021-06-28 – p.7/70
: . . . : Proof of Existence, Everledger, .
. . ( ) : ( ) (Ethereum ( ) ) ( ) ( ) — 2021 8-9 — 2021-06-28 – p.8/70
( ) จ ॻ จ ॻ จ ॻ
จ ॻ จ ॻ O μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ حͷ߹ ෳ͢Δ ɾจॻ ΛಘͨΫϥΠΞϯτɺಉ࣌ʹূ໌ཁૉͱͯ͠ɺϒϧʔͰࣔ͞ΕΔμΠδΣετͱ֤ʑ͕ࠨӈͷͲͪΒʹҐஔ͢Δ͔Λड͚औΔɻ ɾΫϥΠΞϯτจॻ ͷμΠδΣετ͔Β࢝Ίͯɺ࿈͖݁͢Ұ࿈ͷμΠδΣετΛΔ͜ͱʹͳΔͷͰɺϚʔΫϧϧʔτʹࢸΔ·Ͱͷ ɹܭࢉΛ࠶ݱͰ͖ɺಘΒΕͨϚʔΫϧϧʔτ͕ϒϩοΫνΣʔϯʹه͞Ε͍ͯΔͱҰக͢Δ͜ͱΛ֬ೝͰ͖Δɻ ɾͦͷܭࢉݪཧͷཧղͱඞཁͳใ͕͋Ε୭Ͱ࠶ݱͰ͖Δ จॻ ͷଘࡏͱͦͷ༰ূ໌͞ΕΔɻ ˞μΠδΣετݩͷσʔλ͕ ɹϏοτͰҟͳΔͱશ͘ҟͳΔ ɹͱͳΓɺ·ͨɺμΠδΣετ ɹ͔ΒݩͷσʔλΛਪଌ͢Δ͜ͱ ɹͰ͖ͳ͍ɻ ˞ઍɾສͷจॻΛϚʔΫϧʹͯ͠ ɹͦͷͷߴ͞ߴʑʙ ఔ ه͢Δ ಡΈग़ͤΔ ূ໌Λ ඞཁͱ͢Δऀʹ ։ࣔ͞ΕΔใ ެ։͞ΕΔใ ϚʔΫϧϧʔτ Ϛ ồ Ϋ ϧ γ ε ς Ϝ ͕ อ ͠ ֤ Ϣ ồ β ʹ ෦ త ʹ ͑ Δ ʜʜ ʜʜ ʜʜ ʜʜ ʜʜ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ ϒϩοΫνΣʔϯ ʜ ʜ — 2021 8-9 — 2021-06-28 – p.9/70
2. — 2021 8-9 — 2021-06-28 – p.10/70
(Bitcoin; 2009 1 ∼2021 6 ) 2 → 2 2
→ → — 2021 8-9 — 2021-06-28 – p.11/70
vs. — 2021 8-9 — 2021-06-28 – p.12/70
The DAO ( ) Ethereum The DAO Split ( )
360 ETH (50∼60 ) (2016/6/17) ( → ) ( → ; ) ( ) (2016/7/20 ) — 2021 8-9 — 2021-06-28 – p.13/70
— 2021 8-9 — 2021-06-28 – p.14/70
: ⇒ ⇒ — 2021 8-9 — 2021-06-28 – p.15/70
Ethereum Ether Ether Ether ( ) Ether Ether ( )
. . . . . . BTC ⇒ ( ) — 2021 8-9 — 2021-06-28 – p.16/70
— 2021 8-9 — 2021-06-28 – p.17/70
( ) ( ) ( vs. ) ( ) (
) ( ) ( ) ⇒ ( : BBc-1) : : — 2021 8-9 — 2021-06-28 – p.18/70
Ethereum ( ) ( ) ⇒ (Casper) ( ) ⇒
ZoE (Zcash on Ethereum) ( vs. ) ( ) ⇒ Plasma ( ) ⇒ ( ) (Benevolent Dictator For Life (BDFL)) ( ) ⇒ — 2021 8-9 — 2021-06-28 – p.19/70
BBc-1 ( ) ( ) ⇒ ( ) ⇒ (
vs. ) ( ) ⇒ DHT ( ) ⇒ ( ) ( ) ⇒ — 2021 8-9 — 2021-06-28 – p.20/70
/ Bitcoin, Ethereum LT BBc-1 ( ) ( ) (
) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ެڞۭؒ ɾτϥϯβΫγϣϯͷূڌΛແؔͳྺ࢙͕อ༗ ɾͲΕ͔ͷாΛແໃ६ʹॻ͖͑ͯূڌ͕Δ τϥϯβΫγϣϯ ா υϝΠϯ ϩʔΧϧۭؒ υϝΠϯ ϩʔΧϧۭؒ υϝΠϯ ϩʔΧϧۭؒ Ethereum ( ) — 2021 8-9 — 2021-06-28 – p.21/70
3. : https://news.denfaminicogamer.jp/interview/gameai_miyake — 2021 8-9 — 2021-06-28 – p.22/70
( ) (by ) (since 1984) ( ) ( )
( ) . . . ( ) ⇒ . . . — 2021 8-9 — 2021-06-28 – p.23/70
( ) ( ) ( ) ( ) ( )
Remember? , , , (by ) — 2021 8-9 — 2021-06-28 – p.24/70
Q. ( ) ( = / = ) ⇒ —
2021 8-9 — 2021-06-28 – p.25/70
( ) ( ) ( ) — 2021 8-9 —
2021-06-28 – p.26/70
( ) ( ) / / — 2021 8-9 —
2021-06-28 – p.27/70
— ( ) 1. ( ) 2. ( ) 3.
( ) — 2021 8-9 — 2021-06-28 – p.28/70
. . . Ethereum https://speakerdeck.com/ks91/introduction-to-bbc-1-and-ethereum-f1a5d202-36fe-4a4f-9536-d01e66d51f83 https://speakerdeck.com/ks91/bbc-1-and-ethereum-exercise-ii-39acc9be-9ec2-4fc1-ad3d-d2cca737fa09 — 2021 8-9 —
2021-06-28 – p.29/70
4. — 2021 8-9 — 2021-06-28 – p.30/70
4. 2021 6 24 ( ) 23:59 JST Waseda Moodle
(Discord ) — 2021 8-9 — 2021-06-28 – p.31/70
. . . . . . 20 18 (6/25( )
16:00 ) ( ) / / / “ ” / / / / / / (NHK) / / / / / / / / / ( A B ) / / — 2021 8-9 — 2021-06-28 – p.32/70
SF — 2021 8-9 — 2021-06-28 – p.33/70
M 4 1 1 ES . . . — 2021
8-9 — 2021-06-28 – p.34/70
N [ ] AI ( ) AI / ⇒ ←
MTRON from 1980s ↑ FinTech — 2021 8-9 — 2021-06-28 – p.35/70
T ⇒ — 2021 8-9 — 2021-06-28 – p.36/70
T ⇒ — 2021 8-9 — 2021-06-28 – p.37/70
K [ ] ⇒ . . . . . .
— 2021 8-9 — 2021-06-28 – p.38/70
WIRED vol.25 The Power of Blockchain (2016) : 5 Family
( ) — 2021 8-9 — 2021-06-28 – p.39/70
SFC ⇒ ( ) . . . — 2021 8-9
— 2021-06-28 – p.40/70
5. Ethereum Ethereum — 2021 8-9 — 2021-06-28 – p.41/70
— 2021 8-9 — 2021-06-28 – p.42/70
— 2021 8-9 — 2021-06-28 – p.43/70
↑ . . . → vs. — 2021 8-9 —
2021-06-28 – p.44/70
(by ) 1. 2. ( ) ( ) . .
. cf. by McLuhan cf. by McLuhan — 2021 8-9 — 2021-06-28 – p.45/70
by ⇒ : ⇒ — 2021 8-9 — 2021-06-28 –
p.46/70
by ⇒ : ⇒ — 2021 8-9 — 2021-06-28 –
p.47/70
Ethereum EVM (Ethereum Virtual Machine) — 2021 8-9 — 2021-06-28
– p.48/70
Ethereum Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART
CONTRACT & DECENTRALIZED APPLICATION PLATFORM” 15 = (↑ ) DApps ( ) — 2021 8-9 — 2021-06-28 – p.49/70
= ( ) run ⇒ — 2021 8-9 — 2021-06-28
– p.50/70
Ether Ethereum EOA : Externally-Owned Account ( ) ( )
Ether ( ) EVM EVM = Ethereum = — 2021 8-9 — 2021-06-28 – p.51/70
EVM : Ethereum Virtual Machine Gas ( EVM = )
— 2021 8-9 — 2021-06-28 – p.52/70
6. — 2021 8-9 — 2021-06-28 – p.53/70
EVM : . . . : Solidity — JavaScript Vyper
— Python Fe — Vyper Rust ← NEW! — 2021 8-9 — 2021-06-28 – p.54/70
Solidity ( ) pragma solidityˆ0.7.0; contract IndivisibleAsset { /* */
string public _name; string public _symbol; uint256 public _quantity; address public _owner; constructor(string memory name, string memory symbol, uint256 quantity) public { _name = name; _symbol = symbol; _quantity = quantity; _owner = msg.sender; } function transfer(address to) public returns (bool) { require (_owner == msg.sender); _owner = to; return true; } } — 2021 8-9 — 2021-06-28 – p.55/70
( , ) (constructor) (deploy) = ( ) ( )
ETH Trusted Actor Model — 2021 8-9 — 2021-06-28 – p.56/70
Ethereum (ex. ) (ex. ) — 2021 8-9 — 2021-06-28
– p.57/70
7. ADEPT DeFi ( ) — 2021 8-9 — 2021-06-28
– p.58/70
ADEPT ADEPT : IBM IoT → ⇒ — 2021 8-9
— 2021-06-28 – p.59/70
— 2021 8-9 — 2021-06-28 – p.60/70
⇒ — 2021 8-9 — 2021-06-28 – p.61/70
DeFi ( ) (DeFi : Decentralized Finance) ⇒ ⇒ ⇒
( ) NFT (Non-Fungible Token) — 2021 8-9 — 2021-06-28 – p.62/70
8. — 2021 8-9 — 2021-06-28 – p.63/70
ERC20 ERC (Ethereum Request for Comments) 20 https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md (EIP: Ethereum
Improvement Proposal) contract ERC20 { function totalSupply() constant returns (uint totalSupply); function balanceOf(address _owner) constant returns (uint balance); function transfer(address _to, uint _value) returns (bool success); function transferFrom(address _from, address _to, uint _value) returns (bool success); function approve(address _spender, uint _value) returns (bool success); function allowance(address _owner, address _spender) constant returns (uint remaining); event Transfer(address indexed _from, address indexed _to, uint _value); event Approval(address indexed _owner, address indexed _spender, uint _value); } name/ , symbol/ , decimals/ approve allowance ERC223 ( ), ERC721 (Non-Fungible) — 2021 8-9 — 2021-06-28 – p.64/70
ERC20 ERC20 ← ( ) ( ) ⇒ ERC20 (
ERC20 ) ERC20 ⇒ — 2021 8-9 — 2021-06-28 – p.65/70
(fungible) ERC20 → ERC223 (draft) or ERC777 (non-fungible) ERC721 (
) (partially fungible) ERC1410 (draft) (ERC1400 ) (redeemable) — 2021 8-9 — 2021-06-28 – p.66/70
ERC ERC1400 (draft) : Security Token Standard ERC20 ERC777 ERC1594
(draft) : Core Security Token Standard ( ) (KYC ) ERC1643 (draft) : Documnet Management Standard ERC1644 (draft) : Controller Token Standard ( ) ( ) ERC2258 (draft) : Custodial Ownership Standard ( ) ( ) — 2021 8-9 — 2021-06-28 – p.67/70
9. — 2021 8-9 — 2021-06-28 – p.68/70
5. 2021 7 1 ( ) 23:59 JST Waseda Moodle
(Discord ) — 2021 8-9 — 2021-06-28 – p.69/70
— 2021 8-9 — 2021-06-28 – p.70/70