$30 off During Our Annual Pro Sale. View Details »

イーサリアムスケーリングの背景と概要

Osuke
April 26, 2018

 イーサリアムスケーリングの背景と概要

Osuke

April 26, 2018
Tweet

More Decks by Osuke

Other Decks in Technology

Transcript

  1. ΠʔαϦΞϜεέʔϦϯάͷ
    എܠͱ֓ཁ
    2018/4/26 Osuke

    View Slide

  2. Osuke
    @zoom_zoomzo
    - blog
    - dApp
    - twitter
    - ϑϦʔϥϯε
    - 2017೥ळࠒ͔ΒϒϩοΫνΣʔϯΛษڧ
    - ౦޻େੜ໋ཧ޻ֶ෦ଔ

    View Slide

  3. 1ɽεέʔϥϏϦςΟɾτϦϨϯϚ

    2ɽεέʔϦϯάιϦϡʔγϣϯ

    ɹ2.1ɹSidechains

    ɹ2.2ɹState Channels

    ɹ2.3ɹSharding

    View Slide

  4. 1. Scalablity Trilemma

    View Slide

  5. Scalablity Trilemma
    2ͭͷཁૉΛຬͨ͢ͷ͸Մೳ͚ͩͲɺ

    3ͭಉ࣌ʹຬͨ͢ͷ͕೉͍͠ʂ
    ௿ίετͰωοτϫʔΫʹࢀՃՄೳ
    े෼ʹ߈ܸίετ͕ߴ͍
    ωοτϫʔΫશମͰߴ͍ॲཧೳྗ
    ෼ࢄੑɿ
    ҆શੑɿ
    εέʔϥϏϦςΟɿ

    View Slide

  6. ݱঢ়͸ɾɾɾ
    εέʔϥϏϦςΟ
    ෼ࢄੑ ҆શੑ
    ෼ࢄੑͱ҆શੑΛߴਫ४ʹอͬͨ··

    εέʔϥϏϦςΟΛ৳͹͍͖͍ͯͨ͠ʂ
    ݕূϊʔυͷܭࢉϦιʔε͕

    ϘτϧωοΫʹɻ

    View Slide

  7. 1ɽ෼ࢄੑɿϊʔυʹඞཁͳܭࢉϦιʔεΛ௿͘อͭͨΊʹɺ

    ʢBlock Gas LimitΛ্͛ͯ͸μϝʣ

    2ɽ҆શੑɿίϯηϯαεͷηΩϡϦςΟΛอͪɺ

    ʢϋογϡύϫʔΛ௿Լͤͯ͞͸μϝʣ

    3ɽεέʔϥϏϦςΟɿωοτϫʔΫશମͰΑΓߴ͍ॲཧೳྗΛ࣋ͭ
    εέʔϥϏϦςΟ
    ෼ࢄੑ ҆શੑ
    →ϝΠϯνΣʔϯͰͷݕূ࡞ۀΛ࠷খԽ͢Δඞཁੑ
    →શͯͷTxΛશͯͷϊʔυ͕ݕূ͠ͳͯ͘ࡁΉΑ͏ͳํ๏

    View Slide

  8. S S*
    Tx
    ঢ়ଶͱ͸ɺ

    - ΞΧ΢ϯτ࢒ߴ

    - φϯε

    - EVMίʔυϋογϡ

    - ετϨʔδϧʔτ

    →ϒϩοΫνΣʔϯͷঢ়ଶΛม͑Δ͜ͱʹ
    ܭࢉϦιʔε͕ඞཁʹͳΔ
    ͦ΋ͦ΋ͳͥϊʔυ͸ܭࢉϦιʔε͕ඞཁͳͷ͔
    →τϥϯβΫγϣϯɾϒϩοΫΛݕূ͢Δ͜ͱʹ

    ܭࢉϦιʔε͕ඞཁʹͳΔ
    →ΠʔαϦΞϜ͸εςʔτϚγϯ

    View Slide

  9. ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ͢Δ
    ΠʔαϦΞϜʹ͓͚ΔεέʔϦϯά͸ɺ
    ͱ͍͏Ξϓϩʔν

    View Slide

  10. 2ɽΠʔαϦΞϜͷεέʔϦϯάιϦϡʔγϣϯ
    ɾ1st layer → Sharding

    ɾ2nd layer → Sidechains, State Channels

    View Slide

  11. 2.1ɹSidechains

    View Slide

  12. Global State

    ʢ҆શʣ
    Local State

    ʢ҆શ͡Όͳ͍ʣ
    S0 → S1 →ɾɾɾ Sn
    தؒঢ়ଶભҠ
    Flaud Proofsɿ

    ෆਖ਼ߦҝʹର͢Δਖ਼౰ੑͷূ໌
    Sidechains (Plasma)
    αΠυνΣʔϯ
    →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ

    View Slide

  13. 2.2 State Channels

    View Slide

  14. Global State

    ʢ҆શʣ
    தؒঢ়ଶભҠ
    State Channels (Raiden Network)
    S0 → S1 →ɾɾɾ→ Sn-1 → Sn
    OPEN
    CLOSE
    →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ

    View Slide

  15. Global State

    ʢ҆શʣ
    தؒঢ়ଶભҠ
    State Channels (Raiden Network)
    ࠷৽Ͱ͸ͳ͍StateΛ

    ίϛοτ͠Α͏ͱ͢ΔͱϖφϧςΟʂ
    S0 → S1 →ɾɾɾ→ Sn-1 → Sn
    →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ

    View Slide

  16. 2.3 Sharding

    View Slide

  17. Sharding
    shard_id: 0 shard_id: 1 shard_id: 99
    όϦσʔλʔ
    ɾɾɾ
    state: S0 state: S1 state: S99
    →ݕূΛฒྻԽͯ͠ܭࢉ
    →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ
    Global State

    View Slide

  18. Sharding
    shard_id: 0 shard_id: 1 shard_id: 99
    ɾɾɾ
    T = 1

    View Slide

  19. Sharding
    shard_id: 0 shard_id: 1 shard_id: 99
    ɾɾɾ
    T = 2

    View Slide

  20. Sharding
    shard_id: 0 shard_id: 1 shard_id: 99
    ɾɾɾ
    T = 3

    View Slide

  21. Ethereum 2.0
    • Sharding

    • Casper

    • Stateless Clients
    Sidechains
    • Plasma

    • Cosmos

    • Parity Bridge
    Truebit
    State Channels

    • Raiden Network

    • Counterfactual

    • FunFair

    …etc
    off-chain interactive verification
    εέʔϦϯάϓϩδΣΫτ

    View Slide

  22. ΠʔαϦΞϜεέʔϦϯάͷϞνϕʔγϣϯ
    ෼ࢄੑͱ҆શੑΛ٘ਜ਼ʹ͢Δͷ͸NG
    ϝΠϯνΣʔϯͰͷόϦσʔγϣϯ࡞ۀʢঢ়ଶભҠʣΛ࠷খԽ
    ϝΠϯνΣʔϯͱͷ҆શͳStateͷಉظ͕՝୊

    View Slide