r/ethdev • u/Humble-Replacement-2 • 21h ago
My Project I mapped which wallet defense stops which agent-wallet drain (runnable, one command)
An agent that holds a wallet decides in English but signs calldata or a typed message. A poisoned tool can make the plan look fine and the signature drain the wallet.
I built eight drains (approvals, EIP-2612 permits, EIP-712 orders, EIP-7702 delegations, Permit2) and scored each against a ladder of seven defenses, from a plan reviewer up to transaction and signature simulation. `./run.sh` runs the whole thing on a local fork.
Rendering the counterparty, amount, and recipient of a signature closes five of eight. Simulation adds nothing on top. One on-chain timing race (arm the contract after the dry-run, before inclusion) survives everything.
No new attack, just an honest map of what stops what.
Explainer: https://amarshat.github.io/quantum-commit-authorization/agent-drains.html
Code: https://github.com/amarshat/quantum-commit-authorization/tree/main/agent-calldata-demo