Upgrade to Pro — share decks privately, control downloads, hide ads and more …

フィンテック 2017春 第9-10回「分散レッジャーと新たなアプリケーション基盤」 / Distributed Ledgers and New Application Platforms

フィンテック 2017春 第9-10回「分散レッジャーと新たなアプリケーション基盤」 / Distributed Ledgers and New Application Platforms

早稲田大学 大学院経営管理研究科 2017年度春学期授業「フィンテック ─ 金融革新とインターネット」第9-10回のスライドです。2017年7月10日(月)に使用しました。

Kenji Saito

July 10, 2017
Tweet

More Decks by Kenji Saito

Other Decks in Technology

Transcript

  1. ( ) 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
  2. 1. 2. 3. 4. 5. 6. : 7. — 2017

    9-10 — 2017-07-10 – p.3/76
  3. 4. 2017 7 8 ( ) 17:59 JST Course N@vi

    — 2017 9-10 — 2017-07-10 – p.5/76
  4. 37+α 30 (7/10 ) 5 4 3 3 2 Amazon

    GO 2 2 2 , , , , , , , 1 — 2017 9-10 — 2017-07-10 – p.6/76
  5. ( ) 3 1. ( : UTXO ) ⇒ (

    ) 2. ( : ) ⇒ 3. ( : ) TX ⇒ ( ) 2 3 — 2017 9-10 — 2017-07-10 – p.13/76
  6. (RSA) RSA (RSA : Rivest, Shamir, Adleman) ECDSA ( DSA

    : Digital Signature Algorithm) — 2017 9-10 — 2017-07-10 – p.18/76
  7. : < , > : : < , , >

    : OK NG — 2017 9-10 — 2017-07-10 – p.19/76
  8. ( ) (by ) (since 1984) ( ) ( )

    ( ) . . . ( ) ⇒ — 2017 9-10 — 2017-07-10 – p.22/76
  9. ( ) ( ) ( ) ( ) ( )

    (by ) — 2017 9-10 — 2017-07-10 – p.23/76
  10. Q. ( ) ( = / = ) ⇒ —

    2017 9-10 — 2017-07-10 – p.24/76
  11. ( ) ( ) ( ) — 2017 9-10 —

    2017-07-10 – p.25/76
  12. ( ) ( ) / / — 2017 9-10 —

    2017-07-10 – p.26/76
  13. — ( ) 1. ( ) 2. ( ) 3.

    ( ) — 2017 9-10 — 2017-07-10 – p.27/76
  14. 1. ⇒ ( ) ⇒ 2. ⇒ ⇒ 3. ⇒

    — 2017 9-10 — 2017-07-10 – p.32/76
  15. (by ) 1. 2. ( ) ( ) . .

    . cf. by McLuhan cf. by McLuhan — 2017 9-10 — 2017-07-10 – p.33/76
  16. Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART CONTRACT

    & DECENTRALIZED APPLICATION PLATFORM” 15 — 2017 9-10 — 2017-07-10 – p.34/76
  17. EVM : . . . : Solidity — JavaScript LLL

    — Lisp — 2017 9-10 — 2017-07-10 – p.38/76
  18. 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
  19. Solidity JavaScript ( , ) (constructor) ( ) ( )

    Ether — 2017 9-10 — 2017-07-10 – p.40/76
  20. / : Proposal → Incubation → Active → Deprecated →

    End of Life — 2017 9-10 — 2017-07-10 – p.47/76
  21. ( ) ( ) ( ) IoT / / (

    ) — 2017 9-10 — 2017-07-10 – p.49/76
  22. ( = ) ( ) ( ) ↑ — 2017

    9-10 — 2017-07-10 – p.50/76
  23. 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
  24. (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
  25. ( ) (permissioned) (permissionless) Proof of Elapsed Time (PoET) Proof

    of Work ( ) (Intel ) / Transaction Families — 2017 9-10 — 2017-07-10 – p.57/76
  26. JVM (chaincode) Sumeragi (BFT) JVM : Java Virtual Machine (Java

    ) — 2017 9-10 — 2017-07-10 – p.61/76
  27. 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
  28. R3 R3CEV 77 (2017 2 ) 3 SBI , R3Net(

    ) Corda — 2017 9-10 — 2017-07-10 – p.64/76
  29. ( ) + CAP ( DLT ) — 2017 9-10

    — 2017-07-10 – p.66/76
  30. CAP ( ) Consistency ( ) Availability ( ) Partition

    tolerance ( ) ⇒ 3 C Eventual consistency ( ) . . . — 2017 9-10 — 2017-07-10 – p.67/76
  31. JVM ( ) (Uniqueness Services) UTXO X.509 PKI ( )

    UTXO : Unspent TX (transaction) Output ( ) X.509 : PKI — 2017 9-10 — 2017-07-10 – p.68/76
  32. 5. 2017 7 15 ( ) 17:59 JST Course N@vi

    — 2017 9-10 — 2017-07-10 – p.75/76