project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4

Token Rescue Buddy

Never worry about receiving tokens on the wrong chain again. Safest & easiest way to prevent mistakes like the $20M Wintermute/Optimism accident

Token Rescue Buddy

Created At

ETHGlobal Waterloo

Winner of

trophy

🏆 ETHGlobal Waterloo 2023 Finalist

Project Description

This project combines CREATE2 magic, multiple blockchain data aggregators, and an intuitive React frontend to make recovering tokens sent on the wrong chain incredibly easy.

Through the popularity of L2s and breakthroughs like Account Abstraction (EIP-4337), it's clear that the future is multichain with a side of smart contract wallets. However, current solutions present a few huge problems. Unlike EOAs, smart contract wallets can only be deployed on one chain at a time. Adding insult to injury, Gnosis Safe, the most popular SC wallet, doesn't support same-address multichain safes, a feature that's technically possible and has been requested by their community for years!

This very dangerous UX problem opens doors for huge losses caused by tokens on the wrong chain. $20M Optimism + Wintermute accident: https://rekt.news/wintermute-rekt/

Token Rescue Buddy works by redeploying your safe at the same address on a different chain. This usually is a convoluted process that can lead to headaches and missing funds/hacks, and is a process that Gnosis themselves considers advanced and recommends trying only as a last resort. Token Rescue Buddy makes it trivial for any user to do.

The ease of use also makes it perfect for centralized exchanges, who can now easily and programmatically recover tokens sent to the incorrect addresses as long as they technically have the key to them.

How it's Made

This project uses React, Wagmi hooks, rainbowkit, etherscan (and it's sisters), typescript, and was built in VSCode. We use gnosis safe, and the gnosis safe UI kit. It's designed to look like an official gnosis app!

It works because of a few technicalities. The address of each safe is procedurally generated based on certain information, including the sender of the transaction. The Safe Factory has the same address on most chains. This means that it's possible to replay the original transaction data on another chain to create a safe at the same address.

This is still secure, because the new safe will still have the same owners that the original one was deployed with. Now that you have access to the safe, you can recover your tokens! Easy as that.

background image mobile

Join the mailing list

Get the latest news and updates