IBExWalletAPI

EOA + EIP-7702

EOA + EIP-7702

The wallet=7702 mode allows users with an existing Externally Owned Account (EOA) — from MetaMask, WalletConnect, etc. — to upgrade it to a Smart Account using EIP-7702 delegation.

How It Works

EIP-7702 introduces a new transaction type that allows an EOA to delegate its execution to a smart contract implementation. In IBEx's case, the EOA delegates to SafeEIP7702Proxy, gaining all Safe Smart Account features (gas sponsorship, batch operations, recovery, etc.) while keeping the same address.

Existing EOA (0xCa33...)
    ↓ EIP-7702 authorization
SafeEIP7702Proxy delegation
    ↓
Smart Account features:
  ✅ Gasless transactions (sponsored)
  ✅ Batch operations
  ✅ Social recovery
  ✅ Multi-chain deployment

Sign-Up Flow

Step 1: Get Challenge

GET /v1.2/auth/sign-up?wallet=7702&address=0xCa33...&chainId=11155111

Required parameters:

  • wallet=7702 — selects EOA+7702 mode
  • address — the EOA address (0x-prefixed, 42 chars)
  • chainId (optional) — target chain ID (defaults to project chain)

Response: A SIWE-like challenge message to sign:

{
  "challenge": {
    "message": "IBEx Wallet wants you to sign in with your Ethereum account: 0xCa33...",
    "nonce": "abc123..."
  }
}

Step 2: Sign and Submit

POST /v1.2/auth/sign-up
Content-Type: application/json
 
{
  "wallet": "7702",
  "address": "0xCa33...",
  "signature": "0x...",
  "nonce": "abc123..."
}

Response: JWT tokens + delegation details:

{
  "access_token": "eyJ...",
  "refresh_token": "eyJ...",
  "safe": "0xCa33...",
  "delegation": {
    "implementation": "0x...",
    "chainId": 11155111
  }
}

Step 3: Broadcast EIP-7702 Authorization

The client must broadcast an EIP-7702 authorization transaction on-chain to activate the delegation. IBEx can sponsor this transaction through its proxy.

Sign-In Flow

# Step 1: Get challenge
GET /v1.2/auth/sign-in?wallet=7702&address=0xCa33...
 
# Step 2: Submit signed challenge
POST /v1.2/auth/sign-in
{
  "wallet": "7702",
  "address": "0xCa33...",
  "signature": "0x...",
  "nonce": "abc123..."
}

Key Differences from Other Modes

FeaturePasskeysKDFEmail7702
Signer typeWebAuthn P-256Argon2id-derivedGenerated keypairExisting EOA
Smart AccountNew SafeNew SafeNew SafeSame address
Requires walletNoNoNoYes (MetaMask, etc.)
Gas sponsorship✅✅✅✅
On-chain tx neededNo (counterfactual)NoNoYes (7702 auth)

Security Considerations

  • The EOA private key remains with the user — IBEx never has access to it
  • The delegation can be revoked by the user at any time
  • The Safe proxy implementation is audited and battle-tested
  • Multi-chain: the delegation must be set up per chain

On this page