SOS NOT SUS
🏆 HACKATHONAn emergency wallet escape prototype that uses EIP-7702 and LayerZero to move assets across chains to a preconfigured safe wallet.
SOS NOT SUS - A Cross-Chain Wallet Escape Button 🆘
Winner at ETHGlobal Buenos Aires 2025
- 🥇 Zircuit - Best use of Account Abstraction (1st place)
Overview
We built SOS NOT SUS at ETHGlobal Buenos Aires as an emergency escape button for crypto wallets. You set up a safe destination and a separate trigger wallet in advance. A single trigger then starts moving your configured assets across chains to that safe address.
For the demo, we used a Degen1-style hardware gadget so you could activate the escape discreetly if someone threatened you or tried to take control of your wallet.
The Problem
Moving assets manually means switching networks, selecting tokens, and signing multiple transactions. In an emergency, there may be little time to do that. With SOS NOT SUS, you choose the trigger wallet, safe address, chains, and tokens during setup, so those decisions are already made when you need to act.
Key Features
- Separate trigger wallet: A designated account can initiate the escape mechanism on behalf of the protected wallet.
- Fixed safe destination: The delegation is restricted to transfers toward the configured safe wallet.
- Coordinated execution: Zircuit initiates the cross-chain flow through LayerZero.
- Hardware trigger: Start the escape from a physical gadget without navigating a wallet interface.
- Cross-chain tracking: Follow the messages and transfers on LayerZero Scan.
Technical Architecture
EIP-7702 Delegation
We extended MetaMask's EIP-7702 delegation flow to give the trigger wallet one restricted action: initiate asset transfers to the safe destination. The protected wallet, trigger wallet, and receiving wallet each have a separate role.
LayerZero Messaging
An OApp on Zircuit batches messages for the destination networks, Base and Arbitrum in our demo. A destination OApp receives the message and initiates an lzCompose call to a Composer contract. The Composer extracts the original sender and invokes that wallet's delegation to perform the transfer.
Emergency Flow
- Configure the safe address and trigger authority before an emergency.
- Activate the hardware trigger to start the transaction on Zircuit.
- Send the corresponding LayerZero messages to the configured destination chains.
- Execute each destination's delegated transfer flow.
- Inspect the message and transaction progress across the networks.
One trigger starts the flow, with each destination chain executing its own transfers. You can follow a complete run in the example transaction.
Awards & Recognition
We won 1st place in Zircuit's Best use of Account Abstraction track at ETHGlobal Buenos Aires 2025.
Links
- Live Demo: SOS NOT SUS
- GitHub Repository: vonMangoldt/BlitzAyuda
- ETHGlobal Showcase: SOS NOT SUS Project Page
- Example Execution: Cross-chain transaction on LayerZero Scan