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

Gasを誰が払うのか問題について

 Gasを誰が払うのか問題について

yudetamago

July 24, 2018
Tweet

More Decks by yudetamago

Other Decks in Programming

Transcript

  1. Gasを誰が払うのか問題について
    blockchain.tokyo #10
    2018/7/24
    ゆで卵
    1

    View Slide

  2. 自己紹介
    ゆで卵
    Twitter: @takayukib
    Github: yudetamago
    フリーランス
    DApps(Solidity), Rails辺りをやっている
    2

    View Slide

  3. みなさんDApps使ってますか?
    3

    View Slide

  4. DApps利用者はまだまだ少ない
    https://dappradar.com/dapps (2018/7/24)
    4

    View Slide

  5. なぜDAppsは浸透しないのか?
    5

    View Slide

  6. まだUXが悪い
    MetaMaskインストールが必要
    秘密鍵とパスフレーズの管理が必要
    仮想通貨取引所に登録して入金が必要
    etc...
    やること・覚えることが多い
    ref: https://www.uplucid.com/entry/2018/07/12/DAppsのUXが非常に
    良くない問題をどうにかする
    6

    View Slide

  7. どうすれば良いか?
    (ETHを配るのは無しで)
    7

    View Slide

  8. 代表的な方法(私見)
    トランザクションの実行を委譲する
    Meta Transaction、ERC877など
    gasをETHではなくトークンで支払う
    ERC865など
    8

    View Slide

  9. Meta Transaction
    ユーザーでトランザクションへの署名だけを行い、トランザクションの
    実行自体は第三者が行う。
    https://qiita.com/doskin/items/5764c55e2bdd528db4ed
    9

    View Slide

  10. ERC865: Pay transfers in tokens instead
    of gas, in one transaction
    ERC20の拡張で、トークンのtransferにかかるgasを
    ETHでなくトークンで支払う
    https://github.com/ethereum/EIPs/issues/865
    (draftなので変わる可能性あり)
    10

    View Slide

  11. ERC20の流れ
    11

    View Slide

  12. ERC865の流れ
    12

    View Slide

  13. ERC877: Separating transaction signer
    from transaction deployer
    Ethereumのtxを従来のtxと、signedTransactionをフィールドに含むよ
    うなtxの2種類に分ける
    (あまり進んでない...?)
    https://github.com/ethereum/EIPs/issues/877
    13

    View Slide

  14. ERC1077: Executable Signed Messages
    refunded by the contract
    ERC865とERC877を踏まえて(トークンのtransferに限らない)トラン
    ザクション実行の委譲とトークンでのgasの支払いを統一的に扱えるよ
    うにしたインターフェース
    14

    View Slide

  15. ERC1077の流れ
    15

    View Slide