イーサリアムの技術 / Ethereum Technology

847a328633b1df6b11cc2f72430025e6?s=47 Kenji Saito
February 14, 2020

イーサリアムの技術 / Ethereum Technology

2020年2月14日(金)、ブロックチェーンハブ主催のブロックチェーンアカデミー「イーサリアムの技術」にて使用したスライドです。

847a328633b1df6b11cc2f72430025e6?s=128

Kenji Saito

February 14, 2020
Tweet

Transcript

  1. Chief Science Officer / ks91@blockchainhub.co.jp — — 2020-02-14 – p.1/29

  2. https://speakerdeck.com/ks91 — — 2020-02-14 – p.2/29

  3. ( ) SFC CSO (Chief Science Officer) 1993 ( )

    2006 ( ) SFC 19 P2P (Peer-to-Peer) ( 9 ) 2011 2018 2019 ∼ 2019 ∼ REINVENT THE WORLD → ( ) — — 2020-02-14 – p.3/29
  4. (EVM) — — 2020-02-14 – p.4/29

  5. Ethereum Vitalik Buterin, “Ethereum White Paper: A NEXT GENERATION SMART

    CONTRACT & DECENTRALIZED APPLICATION PLATFORM” (Dec. 2013∼) 15 (= ) = = ( ) CPU ⇒ DApps DApps = / — — 2020-02-14 – p.5/29
  6. = ( ) run = → — — 2020-02-14 –

    p.6/29
  7. Ether Ethereum EOA : Externally-Owned Account ( ) ( )

    Ether ( ) EVM EVM = Ethereum = — — 2020-02-14 – p.7/29
  8. EVM : Ethereum Virtual Machine Gas ( EVM = )

    → — — 2020-02-14 – p.8/29
  9. Ethereum Frontier (2015) Homestead (2016) Metropolis Byzantium (2017) zk-SNARKs (

    ) → Zcash on Ethereum (ZoE) Constantinople + St.Petersburg (2019) (for 2nd Layer) Proof of Stake Istanbul (2019) ← Zcash zk-SNARKs/STARKs Serenity Ethereum 2.0 phase 0 (2020 ) — — 2020-02-14 – p.9/29
  10. Ethereum — — 2020-02-14 – p.10/29

  11. ( ) ( ) ( ) ( vs. ) (

    ) ( ) ( ) ( ) ⇒ ( : BBc-1) : : — — 2020-02-14 – p.11/29
  12. Ethereum ( ) ⇒ (Casper; ) ( ) ⇒ ZoE

    (Zcash on Ethereum) ( vs. ) ( ) ⇒ Plasma ( ) ( ) ⇒ ( ) (Benevolent Dictator For Life (BDFL)) ( ) ( ) ⇒ — — 2020-02-14 – p.12/29
  13. Ethereum Proof of Work + Proof of Stake + —

    — 2020-02-14 – p.13/29
  14. SHA-256 × SHA-256 ( /TX ) SHA-256 × RIPEMD-160 (

    = ) (1 ) . . . scrypt ( ) Ethereum Ethash (Dagger-Hashimoto ) (Proof of Work) DAG : Directed Acyclic Graph ( ) https://github.com/ethereum/wiki/wiki/Ethash Keccak-256 (≈SHA-3) ( ) (Ethash ) — — 2020-02-14 – p.14/29
  15. GHOST (Greedy Heaviest Observed Subtree) ⇒ GHOST ( ) “uncles”

    proof of work ( ) uncle Ethereum uncles 7 GHOST uncle gender-neutral ommer — — 2020-02-14 – p.15/29
  16. Merkle ( ) Digest = SHA-256 × SHA-256 Merkle root

    TX ( ) TX — — 2020-02-14 – p.16/29
  17. IUUQTFOXJLJQFEJBPSHXJLJ3BEJY@USFF key OK PATRICIA (Practical Algorithm To Retrieve Information Coded

    In Alphanumeric) Trie ( ) (key, value) RLP (recursive length prefix encoding) Ethereum — — 2020-02-14 – p.17/29
  18. Ethereum Proof of Stake Casper — — 2020-02-14 – p.18/29

  19. Proof of Stake ( ) ( ) ( ) →

    ( ) Ethereum — — 2020-02-14 – p.19/29
  20. Nothing at Stake - = — — 2020-02-14 – p.20/29

  21. Nothing at Stake - 100% Proof of Stake — —

    2020-02-14 – p.21/29
  22. Casper : Ethereum Nothing at Stake (Slasher) stake 100 ⇒

    ( ) → — — 2020-02-14 – p.22/29
  23. Ethereum 2.0 Phase 0 Beacon Chain Beacon Contract 32 ETH

    32 ETH2 1 10% ETH2 ETH2 ETH Beacon Contract — — 2020-02-14 – p.23/29
  24. ( ) PoS . . . PoW ( ) (

    ) ( ) — — 2020-02-14 – p.24/29
  25. ( ) PoS PoW PoS — — 2020-02-14 – p.25/29

  26. (Bitcoin ) A-B — — 2020-02-14 – p.26/29

  27. µRaiden Raiden Network Plasma — — 2020-02-14 – p.27/29

  28. Ethereum 2.0 Phase 0 ← Ethereum 1.0 Beacon Chain Ethereum

    1.0 Phase 1 ( ) (Beacon Chain ) ETH2 Phase 2 EVM → eWASM (Ethereum WebAssembly) Ethereum 1.0 EVM eWASM (2021 ) — — 2020-02-14 – p.28/29
  29. — — 2020-02-14 – p.29/29