$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
スマートコントラクト / Smart Contracts
Search
Kenji Saito
PRO
February 21, 2020
Technology
1
130
スマートコントラクト / Smart Contracts
2020年2月21日(金)、ブロックチェーンハブ主催のブロックチェーンアカデミー「スマートコントラクト」にて使用したスライドです。
Kenji Saito
PRO
February 21, 2020
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
成果 / Achievements
ks91
PRO
0
6
意思決定 / Decision-Making
ks91
PRO
0
10
ファンディングとデジタル市民社会 / Funding and Digital Civil Society
ks91
PRO
0
15
生成AI による論文執筆サポート・ワークショップ 論文執筆・推敲編 / Generative AI-Assisted Paper Writing Support Workshop: Drafting and Revision Edition
ks91
PRO
0
27
私たちの前提は揺るがないのか / Are Our Premises Unshakeable?
ks91
PRO
0
22
貨幣無き世界への過程 / The Process Towards a World without Money
ks91
PRO
0
10
ファンディング / Funding
ks91
PRO
0
8
デジタル市民社会 / Digital Civil Society
ks91
PRO
0
11
発表と総括 / Presentations and Summary
ks91
PRO
0
6
Other Decks in Technology
See All in Technology
AWS re:Invent 2025で見たGrafana最新機能の紹介
hamadakoji
0
370
Databricks向けJupyter Kernelでデータサイエンティストの開発環境をAI-Readyにする / Data+AI World Tour Tokyo After Party
genda
1
120
意外とあった SQL Server 関連アップデート + Database Savings Plans
stknohg
PRO
0
320
AI駆動開発における設計思想 認知負荷を下げるフロントエンドアーキテクチャ/ 20251211 Teppei Hanai
shift_evolve
PRO
2
380
re:Invent2025 コンテナ系アップデート振り返り(+CloudWatchログのアップデート紹介)
masukawa
0
360
生成AI活用の型ハンズオン〜顧客課題起点で設計する7つのステップ
yushin_n
0
160
「Managed Instances」と「durable functions」で広がるAWS Lambdaのユースケース
lamaglama39
0
310
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
490
エンジニアリングをやめたくないので問い続ける
estie
2
1.2k
AIプラットフォームにおけるMLflowの利用について
lycorptech_jp
PRO
1
140
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
4
440
AWS CLIの新しい認証情報設定方法aws loginコマンドの実態
wkm2
6
740
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Thoughts on Productivity
jonyablonski
73
5k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
The Pragmatic Product Professional
lauravandoore
37
7.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Practical Orchestrator
shlominoach
190
11k
Building Adaptive Systems
keathley
44
2.9k
Transcript
Chief Science Officer /
[email protected]
— — 2020-02-21 – p.1/39
https://speakerdeck.com/ks91 — — 2020-02-21 – p.2/39
( ) SFC CSO (Chief Science Officer) 1993 ( )
2006 ( ) SFC 19 P2P (Peer-to-Peer) ( 9 ) 2011 2018 2019 ∼ 2019 ∼ REINVENT THE WORLD → ( ) — — 2020-02-21 – p.3/39
— — 2020-02-21 – p.4/39
— — 2020-02-21 – p.5/39
— — 2020-02-21 – p.6/39
↑ . . . — — 2020-02-21 – p.7/39
vs. — — 2020-02-21 – p.8/39
(by ) 1. 2. ( ) ( ) . .
. cf. by McLuhan cf. by McLuhan → — — 2020-02-21 – p.9/39
Ethereum ( ) EVM (Ethereum Virtual Machine) — — 2020-02-21
– p.10/39
Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART CONTRACT
& DECENTRALIZED APPLICATION PLATFORM” 15 = ( ) DApps ( ) — — 2020-02-21 – p.11/39
EVM : Ethereum Virtual Machine Gas ( EVM = )
→ — — 2020-02-21 – p.12/39
— — 2020-02-21 – p.13/39
EVM : . . . : Solidity — JavaScript Vyper
— Python LLL — Lisp — — 2020-02-21 – p.14/39
Solidity ( ) pragma solidityˆ0.5.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; } } — — 2020-02-21 – p.15/39
( , ) (constructor) (deploy) = ( ) ( )
ETH — — 2020-02-21 – p.16/39
(ex. ) (ex. ) — — 2020-02-21 – p.17/39
ADEPT The DAO — — 2020-02-21 – p.18/39
ADEPT ADEPT : IBM IoT → ⇒ — — 2020-02-21
– p.19/39
— — 2020-02-21 – p.20/39
⇒ — — 2020-02-21 – p.21/39
The DAO ( ) The DAO Split ( ) 360
ETH (50∼60 ) (2016/6/17) ( ) ( ; ) (2016/7/20 ) — — 2020-02-21 – p.22/39
— — 2020-02-21 – p.23/39
ERC20 ERC (Ethereum Request for Comment) 20 https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md 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) — — 2020-02-21 – p.24/39
ERC20 ERC20 ( ) ⇒ ERC20 ( ERC20 ) ERC20
⇒ — — 2020-02-21 – p.25/39
(fungible) ERC20 → ERC223 (draft) or ERC777 (non-fungible) ERC721 (
) (partially fungible) ERC1410 (draft) (ERC1400 ) — — 2020-02-21 – p.26/39
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 ( ) ( ) — — 2020-02-21 – p.27/39
OS — — 2020-02-21 – p.28/39
OS (2007) — — 2020-02-21 – p.29/39
OS ↑ cf. NPO/NGO — — 2020-02-21 – p.30/39
OS — — 2020-02-21 – p.31/39
Uber — — 2020-02-21 – p.32/39
Uber Uber P2P + Uber — — 2020-02-21 – p.33/39
/ . . . — — 2020-02-21 – p.34/39
( ) / / — — 2020-02-21 – p.35/39
— 1. ( ) 2. ( ) 3. ( )
— — 2020-02-21 – p.36/39
10 12 → 120 120 12 12 120 — —
2020-02-21 – p.37/39
— — 2020-02-21 – p.38/39
— — 2020-02-21 – p.39/39