EIP-7702: Eksekusi Kode EOA untuk Account Abstraction Tanpa Migrasi

Penulis Buterin, Vitalik; Enright, Sam; Kadav, Ansgar; et al.
Tahun 2024
Proyek Ethereum
Lisensi Public
Sumber Resmi eips.ethereum.org/EIPS/eip-7702
Disclaimer: Halaman ini merupakan ringkasan dan analisis edukatif dari whitepaper atau makalah teknis resmi. Konten ini disajikan untuk tujuan pendidikan semata dan bukan merupakan saran investasi atau keuangan. Selalu baca dokumen asli dan lakukan riset mandiri sebelum mengambil keputusan keuangan apa pun.

EIP-7702 (diusulkan 2024, diaktifkan dalam Pectra hard fork) adalah Ethereum Improvement Proposal yang mengizinkan EOA (Externally Owned Account — dompet biasa seperti MetaMask) untuk sementara mengeksekusi sebagai smart contract dengan menetapkan field code-nya ke delegasi kontrak. Ini memberikan kemampuan smart contract kepada EOA yang sudah ada tanpa migrasi dompet — masalah utama yang selama ini menghambat adopsi smart account di kalangan pengguna lama Ethereum.

Publikasi dan Konteks

Ethereum memiliki dua jenis akun yang biner:

  • EOA: Dikontrol oleh private key, dapat memulai transaksi, tidak memiliki kode
  • Contract Account: Memiliki kode, tidak dapat memulai transaksi, membutuhkan EOA untuk memanggilnya

ERC-4337 (Account Abstraction, 2021) menciptakan smart contract wallet, tetapi memerlukan migrasi wallet penuh. Sebagian besar pengguna Ethereum memiliki aset di EOA dan lebih memilih untuk tidak migrasi. EIP-7702 memecahkan ini: EOA mendapat kemampuan smart contract tanpa meninggalkan EOA mereka.

Cara Kerja EIP-7702

Tipe transaksi baru menyertakan authorization list yang ditandatangani — daftar tuple (chain_id, contract_address, nonce, signature):

  1. Untuk setiap otorisasi: field code EOA di-set ke DELEGATECALL delegation designator yang menunjuk ke contract_address
  2. Dalam transaksi tersebut, EOA mengeksekusi seolah-olah ia adalah kontrak yang ditunjuk
  3. Setelah transaksi, kode tetap ada hingga dibersihkan secara eksplisit (tidak seperti EIP-3074 yang bersifat sementara per-transaksi)

Efek efektif: Saat kode EIP-7702 dipanggil, ia mendelegasikan ke smart contract target — EOA menjadi proxy untuk kontrak tersebut selama otorisasi berlaku.

Use Case yang Diaktifkan

Fitur Deskripsi
Batch transactions Tandatangani sekali, eksekusi banyak approval + swap dalam satu tx
Gas sponsorship Sponsor membayar gas; pengguna hanya menandatangani aksinya
Session keys Sub-key terbatas waktu untuk game atau dapp — tidak perlu tandatangan manual setiap interaksi
Social recovery Logika pemulihan ditambahkan ke EOA tanpa deployment kontrak baru
Revoke approval Otomatis mencabut approval yang sudah kadaluarsa dalam satu transaksi

Pectra Hard Fork

EIP-7702 diaktifkan bersamaan dengan Pectra hard fork (2024), bersama EIP-2537 (BLS precompile) dan EIP-7251 (peningkatan max validator balance). Pectra adalah hard fork Ethereum pertama yang secara langsung meningkatkan UX pengguna akhir melalui account abstraction untuk EOA yang sudah ada.

Perbedaan dengan ERC-4337

  • ERC-4337: Smart contract wallet baru yang sepenuhnya menggantikan EOA. Memerlukan migrasi semua aset.
  • EIP-7702: Menambahkan kemampuan smart contract ke EOA yang sudah ada. Tidak memerlukan migrasi. Kompatibel dengan semua dompet berbasis private key.

Istilah Terkait

Referensi