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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kenji Saito
PRO
June 28, 2021
Technology
190
0
Share
スマートコントラクト / Smart Contracts
2021年6月28日、早稲田大学 大学院経営管理研究科の「フィンテック ─ 金融革新とインターネット (2021夏)」第8-9回にて使用したスライドです。
Kenji Saito
PRO
June 28, 2021
More Decks by Kenji Saito
See All by Kenji Saito
やり抜く力を見せるエージェントたち / Agents Who Demonstrate Perseverance
ks91
PRO
0
19
ブロックチェーン / Blockchain
ks91
PRO
0
73
デジタルとコミュニケーション / Digital and Communication
ks91
PRO
0
29
インターネットの技術 (TCP/IP の鉄道モデル) / Internet Technology (The TCP/IP Railway Model)
ks91
PRO
0
29
インターネットの特徴 / Characteristics of the Internet
ks91
PRO
0
31
インターネットのガバナンス / Internet Governance
ks91
PRO
0
23
暗号学的ハッシュ関数 / Cryptographic Hash Function
ks91
PRO
0
33
デジタル署名 / Digital Signature
ks91
PRO
0
31
クライアント/サーバー / Client-Server Model
ks91
PRO
0
30
Other Decks in Technology
See All in Technology
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
720
インフラが苦手でも大丈夫! 紙芝居 Kubernetes -WWGT 10周年編-
aoi1
1
340
OpenID Connectによるサービス間連携
takesection
0
160
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
350
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
330
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
430
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
180
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
320
oracle-to-databricks-migration-with-llm-and-dbt
casek
1
430
BigQuery の Cross-cloud Lakehouse への歩み
phaya72
2
540
React、まだ楽しくて草
uhyo
7
3.9k
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
570
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Accessibility Awareness
sabderemane
1
130
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
150
Unsuck your backbone
ammeep
672
58k
Building Applications with DynamoDB
mza
96
7.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
A better future with KSS
kneath
240
18k
Technical Leadership for Architectural Decision Making
baasie
3
390
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
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