Open1

Meta tx資料

ぽけなぽけな

Meta txの仕組みの解説

大まかな流れから細かい仕組みまで解説されててとても良い
https://www.youtube.com/watch?v=PsEQgSGxYTE&t=1862s

OpenzeppelinによるForwarderのサンプル実装

https://github.com/OpenZeppelin/openzeppelin-contracts/tree/master/contracts/metatx

上記のForwarderの拡張実装の紹介

YouTubeのvideoIDが不正ですhttps://youtu.be/__gHB1zqlQE?t=1414
https://github.com/dea-sg/meta-tx/tree/main/contracts/metatx

Openzeppelin Defenderを使用した方法の解説

https://zenn.dev/yusuke_ikeda/articles/b5c11351d7764d
https://github.com/OpenZeppelin/workshops/tree/master/01-defender-meta-txs

注意点

上に載っているOpenzeppelinのサンプルでは、ユーザの所持ETHが足りない場合のみ、
Meta txを発行するような実装になっているので注意(ちゃんと設定したのにガス代請求される…ってなった)
https://github.com/OpenZeppelin/workshops/blob/master/01-defender-meta-txs/app/src/eth/register.js#L42-L44

Openzeppelin Defenderは問い合わせると制限解除できるっぽい

https://share.hsforms.com/1Om9QuxXmSkO6ftBLaQL4nQ4n2uq

信頼できるか不明だけど、Openzeppelin Defenderを使わない場合の実装例

https://gist.github.com/austintgriffith/7ceb91c058f59f8296e2793dc0d10b39