$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
September 16, 2020
Technology
0
100
スマートコントラクト / Smart Contracts
2020年9月16日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミー「スマートコントラクト」にて使用したスライドです。
Kenji Saito
PRO
September 16, 2020
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
講師自己紹介 / Self-Introduction of the Lecturer
ks91
PRO
0
3
R をインストールする / Installing R
ks91
PRO
0
9
組織とデータ分析/統計的仮説検定 / Organization, data analysis and statistical hypothesis testing
ks91
PRO
0
9
データフレームと代表値 / Data frame and representative values
ks91
PRO
0
3
発表と総括 / Presentations and Summary
ks91
PRO
0
18
市民科学にAI はどう活用できるか / How AI Can Be Used for Citizen Science
ks91
PRO
0
14
グリーンマイニングが Bitcoin プロトコルに及ぼす影響 / Impact of Green Mining on the Bitcoin Protocol
ks91
PRO
0
22
FinTech 13-14 : Ideathon, Presentations and Conclusions
ks91
PRO
0
60
デザイン相談会 / Design Consultation
ks91
PRO
0
15
Other Decks in Technology
See All in Technology
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
1
280
OCI Vault 概要
oracle4engineer
PRO
0
9.8k
Amazon Forecast亡き今、我々がマネージドサービスに頼らず時系列予測を実行する方法
sadynitro
0
200
静的解析で実現した効率的なi18n対応の仕組みづくり
minako__ph
2
2k
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
2
2.1k
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
320
RDRAとLLM
kanzaki
3
260
minify の効果を最大限に引き出す TypeScript コードを書く
jsakamoto
2
130
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
340
共創するアーキテクチャ ~チーム全体で築く持続可能な開発エコシステム~ / Co-Creating Architecture - A Sustainable Development Ecosystem Built by the Entire Team
bitkey
PRO
0
2.9k
140年の歴史あるエンタープライズ企業の内製化×マイクロサービス化への航海
yussugi
0
2.7k
Chasing the White Whale of Open Source - ROI
mrbobbytables
0
150
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
10 Git Anti Patterns You Should be Aware of
lemiorhan
656
59k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Become a Pro
speakerdeck
PRO
25
5k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Speed Design
sergeychernyshev
25
630
KATA
mclloyd
29
14k
Being A Developer After 40
akosma
87
590k
Gamification - CAS2011
davidbonilla
80
5k
Adopting Sorbet at Scale
ufuk
73
9.1k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Transcript
Chief Science Officer /
[email protected]
— — 2020-09-16 – p.1/39
https://speakerdeck.com/ks91 — — 2020-09-16 – p.2/39
( ) SFC ( ) CSO (Chief Science Officer) 1993
( ) 2006 ( ) SFC 20 P2P (Peer-to-Peer) ( 9 ) 2011 2018 2019 2019 2020 2020 → ( ) — — 2020-09-16 – p.3/39
— — 2020-09-16 – p.4/39
— — 2020-09-16 – p.5/39
— — 2020-09-16 – p.6/39
↑ . . . — — 2020-09-16 – p.7/39
vs. — — 2020-09-16 – p.8/39
(by ) 1. 2. ( ) ( ) . .
. cf. by McLuhan cf. by McLuhan → — — 2020-09-16 – p.9/39
Ethereum ( ) EVM (Ethereum Virtual Machine) — — 2020-09-16
– p.10/39
Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART CONTRACT
& DECENTRALIZED APPLICATION PLATFORM” 15 = ( ) DApps ( ) — — 2020-09-16 – p.11/39
EVM : Ethereum Virtual Machine Gas ( EVM = )
→ — — 2020-09-16 – p.12/39
— — 2020-09-16 – p.13/39
EVM : . . . : Solidity — JavaScript Vyper
— Python LLL — Lisp — — 2020-09-16 – 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-09-16 – p.15/39
( , ) (constructor) (deploy) = ( ) ( )
ETH Trusted Actor Model — — 2020-09-16 – p.16/39
(ex. ) (ex. ) — — 2020-09-16 – p.17/39
ADEPT The DAO — — 2020-09-16 – p.18/39
ADEPT ADEPT : IBM IoT → ⇒ — — 2020-09-16
– p.19/39
— — 2020-09-16 – p.20/39
⇒ — — 2020-09-16 – p.21/39
The DAO ( ) The DAO Split ( ) 360
ETH (50∼60 ) (2016/6/17) ( ) ( ; ) (2016/7/20 ) — — 2020-09-16 – p.22/39
— — 2020-09-16 – p.23/39
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) — — 2020-09-16 – p.24/39
ERC20 ERC20 ← ( ) ( ) ⇒ ERC20 (
ERC20 ) ERC20 ⇒ — — 2020-09-16 – p.25/39
(fungible) ERC20 → ERC223 (draft) or ERC777 (non-fungible) ERC721 (
) (partially fungible) ERC1410 (draft) (ERC1400 ) (redeemable) — — 2020-09-16 – 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-09-16 – p.27/39
OS — — 2020-09-16 – p.28/39
OS (2007) — — 2020-09-16 – p.29/39
OS ↑ cf. NPO/NGO — — 2020-09-16 – p.30/39
OS . . . — — 2020-09-16 – p.31/39
Uber — — 2020-09-16 – p.32/39
Uber Uber P2P + Uber — — 2020-09-16 – p.33/39
/ . . . — — 2020-09-16 – p.34/39
( ) / / — — 2020-09-16 – p.35/39
— 1. ( ) 2. ( ) 3. ( )
— — 2020-09-16 – p.36/39
10 12 → 120 120 12 12 120 — —
2020-09-16 – p.37/39
— — 2020-09-16 – p.38/39
— — 2020-09-16 – p.39/39