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
フィンテック 2017春 第9-10回「分散レッジャーと新たなアプリケーション基盤」 / Distributed Ledgers and New Application Platforms
Search
Kenji Saito
PRO
July 10, 2017
Technology
1
290
フィンテック 2017春 第9-10回「分散レッジャーと新たなアプリケーション基盤」 / Distributed Ledgers and New Application Platforms
早稲田大学 大学院経営管理研究科 2017年度春学期授業「フィンテック ─ 金融革新とインターネット」第9-10回のスライドです。2017年7月10日(月)に使用しました。
Kenji Saito
PRO
July 10, 2017
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
110
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM and Prompt Engineering and Building Tutors
ks91
PRO
0
250
講師自己紹介 / Lecturer's Self-Introduction
ks91
PRO
0
82
講師研究紹介 / Lecturer's Research Introduction
ks91
PRO
0
67
Discord とビルダー&チャットボットの使い方 / How to use Discord and Builder & Chatbots
ks91
PRO
0
160
研究って何だっけ / What's Research?
ks91
PRO
0
27
ブロックチェーンと分散ファイナンス概論 / Introduction to Blockchain and Decentralized Finance
ks91
PRO
0
18
招き猫コマロ— ネットワーク贈答経済のエージェント / Manekineko Komaro - Network Gift Economy Agent
ks91
PRO
0
17
Implementation of Blockchain Ecosystems
ks91
PRO
0
12
Other Decks in Technology
See All in Technology
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
270
Tableau事例紹介 / Tableau Case Study of Eureka
kazuya_araki_tokyo
1
180
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
150
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
4
880
20240418_Google ColabにLLMが搭載されたようなのでPython x データ分析の勉強方法を考えてみる
doradora09
0
120
AWS認定資格を取得したので、初めてマネコンを触った時を振り返ってみた。
ainatsuptr
2
100
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
740
ServiceNow Knowledge Learning Rise up
manarobot
0
190
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
130
最近たまに見かけるTiDBってなんだ? - Findy
pingcap0315
2
730
ここが嬉しいABAC ここが辛いよABAC #再解説+補足編
masahirokawahara
1
260
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
180
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
14
2.1k
Bootstrapping a Software Product
garrettdimon
PRO
301
110k
Music & Morning Musume
bryan
41
5.6k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Building Better People: How to give real-time feedback that sticks.
wjessup
354
18k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Making Projects Easy
brettharned
108
5.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
124
32k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
A Tale of Four Properties
chriscoyier
150
22k
Web development in the modern age
philhawksworth
202
10k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
Transcript
9-10 — 2017 ( )
[email protected]
— 2017 9-10 —
2017-07-10 – p.1/76
( ) 1 6 12 (1) • 2 6 12
(2) • 3 6 19 (1) • 4 6 19 (2) • 5 6 26 (1) • 6 6 26 (2) • 7 7 3 (1) • 8 7 3 (2) • 9 7 10 (1) • 10 7 10 (2) • 11 7 17 (1) 12 7 17 (2) 13 7 24 (1) 14 7 24 (2) 15 7 31 — 2017 9-10 — 2017-07-10 – p.2/76
1. 2. 3. 4. 5. 6. : 7. — 2017
9-10 — 2017-07-10 – p.3/76
1. — 2017 9-10 — 2017-07-10 – p.4/76
4. 2017 7 8 ( ) 17:59 JST Course N@vi
— 2017 9-10 — 2017-07-10 – p.5/76
37+α 30 (7/10 ) 5 4 3 3 2 Amazon
GO 2 2 2 , , , , , , , 1 — 2017 9-10 — 2017-07-10 – p.6/76
H AI ⇒ — 2017 9-10 — 2017-07-10 – p.7/76
S A ⇒ ← — 2017 9-10 — 2017-07-10 –
p.8/76
I Dash Dash ( ) ⇒ — 2017 9-10 —
2017-07-10 – p.9/76
K ( ) ⇒ — 2017 9-10 — 2017-07-10 –
p.10/76
S ⇒ — 2017 9-10 — 2017-07-10 – p.11/76
— 2017 9-10 — 2017-07-10 – p.12/76
( ) 3 1. ( : UTXO ) ⇒ (
) 2. ( : ) ⇒ 3. ( : ) TX ⇒ ( ) 2 3 — 2017 9-10 — 2017-07-10 – p.13/76
2. — 2017 9-10 — 2017-07-10 – p.14/76
— 2017 9-10 — 2017-07-10 – p.15/76
SHA-1 https://shattered.it 2017 2 Google (CWI) — 2017 9-10 —
2017-07-10 – p.16/76
— 2017 9-10 — 2017-07-10 – p.17/76
(RSA) RSA (RSA : Rivest, Shamir, Adleman) ECDSA ( DSA
: Digital Signature Algorithm) — 2017 9-10 — 2017-07-10 – p.18/76
: < , > : : < , , >
: OK NG — 2017 9-10 — 2017-07-10 – p.19/76
( ) ← CA — 2017 9-10 — 2017-07-10 –
p.20/76
3. — 2017 9-10 — 2017-07-10 – p.21/76
( ) (by ) (since 1984) ( ) ( )
( ) . . . ( ) ⇒ — 2017 9-10 — 2017-07-10 – p.22/76
( ) ( ) ( ) ( ) ( )
(by ) — 2017 9-10 — 2017-07-10 – p.23/76
Q. ( ) ( = / = ) ⇒ —
2017 9-10 — 2017-07-10 – p.24/76
( ) ( ) ( ) — 2017 9-10 —
2017-07-10 – p.25/76
( ) ( ) / / — 2017 9-10 —
2017-07-10 – p.26/76
— ( ) 1. ( ) 2. ( ) 3.
( ) — 2017 9-10 — 2017-07-10 – p.27/76
4. — 2017 9-10 — 2017-07-10 – p.28/76
— 2017 9-10 — 2017-07-10 – p.29/76
. . . — 2017 9-10 — 2017-07-10 – p.30/76
vs. ( ) — 2017 9-10 — 2017-07-10 – p.31/76
1. ⇒ ( ) ⇒ 2. ⇒ ⇒ 3. ⇒
— 2017 9-10 — 2017-07-10 – p.32/76
(by ) 1. 2. ( ) ( ) . .
. cf. by McLuhan cf. by McLuhan — 2017 9-10 — 2017-07-10 – p.33/76
Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART CONTRACT
& DECENTRALIZED APPLICATION PLATFORM” 15 — 2017 9-10 — 2017-07-10 – p.34/76
= run — 2017 9-10 — 2017-07-10 – p.35/76
Ether Ethereum EOA : Externally-Owned Account Ether EVM EVM —
2017 9-10 — 2017-07-10 – p.36/76
EVM : Ethereum Virtual Machine Gas — 2017 9-10 —
2017-07-10 – p.37/76
EVM : . . . : Solidity — JavaScript LLL
— Lisp — 2017 9-10 — 2017-07-10 – p.38/76
Solidity ( ) pragma solidity ˆ0.4.8; contract IndivisibleAsset { /*
*/ string public _name; string public _symbol; uint256 public _quantity; address public _owner; function IndivisibleAsset(string name, string symbol, uint256 quantity) { _name = name; _symbol = symbol; _quantity = quantity; _owner = msg.sender; } function transfer(address to) { if (_owner != msg.sender) { throw; } _owner = to; } } — 2017 9-10 — 2017-07-10 – p.39/76
Solidity JavaScript ( , ) (constructor) ( ) ( )
Ether — 2017 9-10 — 2017-07-10 – p.40/76
— 2017 9-10 — 2017-07-10 – p.41/76
ADEPT ADEPT : IBM IoT → — 2017 9-10 —
2017-07-10 – p.42/76
. . . — 2017 9-10 — 2017-07-10 – p.43/76
⇒ — 2017 9-10 — 2017-07-10 – p.44/76
5. (Fabric, Sawtooth, Iroha) R3 Corda Tangle (IOTA) — 2017
9-10 — 2017-07-10 – p.45/76
5-1. (Linux Foundation) https://www.hyperledger.org Apache License, Version 2.0 — 2017
9-10 — 2017-07-10 – p.46/76
/ : Proposal → Incubation → Active → Deprecated →
End of Life — 2017 9-10 — 2017-07-10 – p.47/76
( https://www.hyperledger.org/about/members ) — 2017 9-10 — 2017-07-10 – p.48/76
( ) ( ) ( ) IoT / / (
) — 2017 9-10 — 2017-07-10 – p.49/76
( = ) ( ) ( ) ↑ — 2017
9-10 — 2017-07-10 – p.50/76
5-2. 5-2-1. Fabric (IBM) 5-2-2. Sawtooth (Intel) 5-2-3. Iroha (
) 5-2-4. Burrow (Monax) ( ) 5-2-5. Indy — 2017 9-10 — 2017-07-10 – p.51/76
5-2-1. Fabric (IBM) IBM Digital Asset Holdings http://hyperledger-fabric.readthedocs.io/en/latest/ State :
Active — 2017 9-10 — 2017-07-10 – p.52/76
( ) ( ) — 2017 9-10 — 2017-07-10 –
p.53/76
— 2017 9-10 — 2017-07-10 – p.54/76
(Docker) (chaincode) PBFT (Practical BFT) RocksDB CA PKI v1.0 DB
CA BFT : Byzantine Fault Tolerance ( ) CA : Certificate Authority ( ) PKI : Public Key Infrastructure ( ) — 2017 9-10 — 2017-07-10 – p.55/76
5-2-2. Sawtooth (Intel) https://github.com/hyperledger/sawtooth-core State : Active — 2017 9-10
— 2017-07-10 – p.56/76
( ) (permissioned) (permissionless) Proof of Elapsed Time (PoET) Proof
of Work ( ) (Intel ) / Transaction Families — 2017 9-10 — 2017-07-10 – p.57/76
(transaction families) (PoET ) PoET ( ) (transaction families) —
2017 9-10 — 2017-07-10 – p.58/76
5-2-3. Iroha ( ) https://github.com/hyperledger/iroha State : Active — 2017
9-10 — 2017-07-10 – p.59/76
( ) DLT : C++ Sumeragi Whitepaper : https://github.com/hyperledger/iroha/blob/master/docs/iroha_whitepaper.md —
2017 9-10 — 2017-07-10 – p.60/76
JVM (chaincode) Sumeragi (BFT) JVM : Java Virtual Machine (Java
) — 2017 9-10 — 2017-07-10 – p.61/76
Merkle Tree ( ) Digest = double SHA-256 value Existence
of a TX can be verified if a relevant subtree is provided — 2017 9-10 — 2017-07-10 – p.62/76
5-3. Corda (R3) R3 https://github.com/corda/corda — 2017 9-10 — 2017-07-10
– p.63/76
R3 R3CEV 77 (2017 2 ) 3 SBI , R3Net(
) Corda — 2017 9-10 — 2017-07-10 – p.64/76
Corda Corda : : — 2017 9-10 — 2017-07-10 –
p.65/76
( ) + CAP ( DLT ) — 2017 9-10
— 2017-07-10 – p.66/76
CAP ( ) Consistency ( ) Availability ( ) Partition
tolerance ( ) ⇒ 3 C Eventual consistency ( ) . . . — 2017 9-10 — 2017-07-10 – p.67/76
JVM ( ) (Uniqueness Services) UTXO X.509 PKI ( )
UTXO : Unspent TX (transaction) Output ( ) X.509 : PKI — 2017 9-10 — 2017-07-10 – p.68/76
5-4. Tangle (IOTA) IoT IOTA https://iota.readme.io — 2017 9-10 —
2017-07-10 – p.69/76
IoT TX TX (DAG) TX Tangle — 2017 9-10 —
2017-07-10 – p.70/76
IoT (IOTA) DAG ( ) DAG — 2017 9-10 —
2017-07-10 – p.71/76
( ) — 2017 9-10 — 2017-07-10 – p.72/76
6. : ( ) — 2017 9-10 — 2017-07-10 –
p.73/76
7. — 2017 9-10 — 2017-07-10 – p.74/76
5. 2017 7 15 ( ) 17:59 JST Course N@vi
— 2017 9-10 — 2017-07-10 – p.75/76
— 2017 9-10 — 2017-07-10 – p.76/76