Overview
On Ethereum and other EVM chains, using DeFi requires the token-approval pattern: before a contract can move a user’s ERC-20 tokens it must first be granted an allowance with approve(), which it later spends via transferFrom(). Radix takes a different route – assets are native resources that move directly between vaults, so no standing permission ever exists to be abused.
The approval pattern and its risks
Because paying gas for a fresh approval before every interaction is costly, wallets and dApps routinely request unlimited allowances. Those allowances persist after the interaction ends: if the approved contract is later exploited, maliciously upgraded, or was a phishing lure, it can call transferFrom() to drain every approved token without any further consent from the owner (revoke.cash – What Are Token Approvals?). The burden falls on users to audit and manually revoke dangling allowances after the fact.
How Radix removes approvals
On Radix, tokens are first-class resources enforced by the Radix Engine itself, not balances tracked inside each token’s own contract. A transaction is expressed as a transaction manifest – an explicit, ordered list of instructions that withdraws a specific amount from the caller’s account into a bucket and passes it to a component. The movement is scoped to that single transaction; nothing is left behind for a contract to spend later.
Guaranteed outcomes and clear signing
Manifests also support guarantees: a signer can require that a transaction return at least a stated amount to their account or fail atomically, defending against slippage and malicious routing. Combined with the human-readable manifest the Radix Wallet presents before signing, users confirm exactly which assets will move – an outcome-based approval rather than a blank cheque (Radix Docs – Transaction Manifest).
Implications
With no standing allowances, there is nothing to periodically revoke and no dormant attack surface accumulating across a wallet’s history. The model is a natural fit for autonomous AI agents, which never grant open-ended permissions and can verify a manifest’s full effect before signing.
