I wasn’t sure where to post this, but I would like to promote / discuss a new safe app I worked on. So please drop some feedback / suggestions / questions
Summary
The Token Approval Manager offers a convenient way to
- Keep track of the safe’s ERC20 token approvals
- Edit / revoke multiple approvals in a single transaction
Motivation
ERC20 Approvals are widely used in all kinds of dapps which interact with ERC20 tokens (i.e. DEXes like Cowswap).
While the concept is very convenient it comes with certain risks and problems:
- It gets really hard for users to keep track of how many approvals have been given to which dapps / contracts.
- A lot of dapps set the approval to unlimited to save gas on future interactions / out of convenience.
- Non malicious smart contracts can have vulnerabilities enabling malicious users to potential drain ERC20 tokens of others if allowances still exist
- Malicious contracts exists with the goal to bait people into giving ERC20 approvals for this contracts to transfer all assets as soon as enough approvals are accumulated.
There are also some solutions out there to manage / revoke approvals. But none of them leverage that gnosis safes can batch send approve-calls making this app potentially the best solution out there.
Existing apps
- https://revoke.cash
- etherscan[dot]io/tokenapprovalchecker
Possible extension
As a future feature I would also love to include a list of known malicious / compromised contracts so the app could warn about known dangerous approvals. But I didn’t find a good source for such a list yet and doubt that I could keep it up-to-date by myself.
Code
I started developing a new (unfinished) safe app here:
Screenrecording of current app
Next steps
I would love to finish it up.
Currently its mainly tests, the logo and some UI tweaks which are missing.
I could also imagine submitting this as a grant if it qualifies for one and the program still exists.