Apa Itu Entry Point dalam Kripto?
Dalam kripto, Entry Point secara umum dapat berarti kontrak, fungsi, atau antarmuka yang digunakan pengguna untuk memulai operasi blockchain.Dalam account abstraction, Entry Point biasanya merujuk pada smart contract EntryPoint pusat yang didefinisikan oleh ERC-4337.Kontrak EntryPoint mengoordinasikan validasi, eksekusi, pembayaran gas, deployment akun, dan penyelesaian operasi yang dikirim oleh smart account.Spesifikasi ERC-4337 resmi menjelaskan sistem yang memungkinkan pengguna mengirim objek bernama UserOperation alih-alih mengirim transaksi biasa secara langsung dari externally owned account.
Partisipan jaringan khusus bernama bundler mengumpulkan UserOperation ini dan mengirimkannya ke kontrak EntryPoint melalui transaksi blockchain biasa.EntryPoint kemudian memeriksa apakah setiap operasi telah diotorisasi, menentukan cara pembayaran gas, memanggil smart account terkait, dan menyelesaikan biaya gas akhir.EntryPoint bukan wallet, token, blockchain, kunci privat, atau jaringan mata uang kripto tersendiri.EntryPoint adalah infrastruktur smart contract bersama yang digunakan oleh wallet account abstraction, bundler, account factory, paymaster, dan aplikasi yang kompatibel.Apa Itu ERC-4337?
ERC-4337 adalah standar account abstraction yang memungkinkan smart account terprogram tanpa memerlukan jenis transaksi Ethereum baru pada lapisan konsensus.Externally owned account tradisional menggunakan aturan tanda tangan dan nonce yang ditentukan protokol.Smart account ERC-4337 dapat menggunakan kode kontrak untuk menentukan logika otorisasinya sendiri.Hal ini dapat mendukung persetujuan multisignature, passkey, sistem pemulihan, izin sesi, batas pengeluaran, tindakan batch, dan fitur wallet terprogram lainnya.ERC-4337 memperkenalkan alur UserOperation terpisah, tetapi aktivitasnya pada akhirnya diselesaikan melalui transaksi biasa yang dimasukkan ke dalam blok.Ikhtisar account abstraction Ethereum menjelaskan bahwa ERC-4337 menyediakan fungsionalitas smart account tanpa mengubah aturan konsensus dasar Ethereum.
EntryPoint adalah kontrak on-chain bersama yang menghubungkan berbagai bagian sistem ini.Mengapa Disebut EntryPoint?
Kontrak ini disebut EntryPoint karena merupakan gerbang tepercaya utama yang dilalui operasi ERC-4337 untuk masuk ke smart account.Smart account yang kompatibel biasanya hanya menerima panggilan validasi dan eksekusi ERC-4337 dari alamat EntryPoint yang dipercayainya.Bundler tidak memanggil fungsi eksekusi wallet sembarang seolah-olah bundler adalah pemilik wallet.Sebaliknya, bundler mengirim UserOperation ke EntryPoint, lalu EntryPoint meminta setiap smart account memvalidasi operasinya sendiri.Struktur ini memisahkan pihak yang membayar dan mengirim transaksi blockchain dari akun yang mengotorisasi tindakan dasarnya.Struktur ini juga memberi bundler satu antarmuka kontrak terstandardisasi untuk memproses berbagai desain smart account.Apa Versi EntryPoint Saat Ini?
Per 16 Juli 2026, repositori account abstraction resmi mencantumkan EntryPoint v0.9.0 sebagai rilis terbarunya.Halaman rilis account abstraction resmi mencantumkan alamat EntryPoint v0.9 sebagai
Mengapa Ada Beberapa Versi EntryPoint?
EntryPoint di-deploy sebagai smart contract, sehingga kodenya tidak dapat begitu saja diedit di tempat jika deployment-nya bersifat immutable.Versi baru umumnya diperkenalkan dengan men-deploy kontrak EntryPoint baru pada alamat deterministik yang baru.Wallet dan infrastruktur dapat bermigrasi setelah meninjau kontrak baru dan menambahkan dukungan terhadap perilakunya.Pendekatan ini menghindari pemberian wewenang tanpa batas kepada satu administrator untuk mengganti kode singleton yang sudah ada.Namun, selama masa migrasi, infrastruktur account abstraction dapat terfragmentasi di berbagai versi.UserOperation yang ditujukan untuk satu EntryPoint tidak boleh dikirim seolah-olah ditujukan untuk versi lain.Alamat EntryPoint yang dipilih disertakan dalam perhitungan keamanan penting, termasuk hash operasi.Apa Itu UserOperation?
UserOperation adalah permintaan terstruktur yang menjelaskan tindakan yang ingin dilakukan smart account.Istilah ini terkadang disingkat menjadi UserOp.UserOperation bukan transaksi Ethereum biasa, meskipun bundler pada akhirnya memasukkannya ke dalam transaksi biasa yang dikirim ke EntryPoint.Field-nya mengidentifikasi smart account, nonce, data eksekusi, batas gas, batas biaya, tanda tangan, data deployment akun opsional, dan informasi paymaster opsional.Versi saat ini menggunakan representasi terkemas bernama
Field Utama UserOperation
Field
Field
Field
Field
Bagaimana UserOperation Mencapai EntryPoint
Wallet terlebih dahulu menyusun UserOperation yang menjelaskan tindakan blockchain yang diminta.Wallet memperoleh nonce yang benar dan memperkirakan field gas yang diperlukan operasi.Sistem otorisasi smart account menandatangani atau menyetujui operasi dengan cara lain.Wallet mengirimkannya ke bundler melalui metode RPC account abstraction.Bundler menyimulasikan logika validasi sebelum menerima operasi.Operasi yang diterima dapat masuk ke mempool UserOperation khusus.Bundler memilih sekelompok operasi dan mengirimkannya ke EntryPoint dalam satu transaksi blockchain.EntryPoint memvalidasi dan mengeksekusi operasi sesuai aturan ERC-4337.Setelah eksekusi, EntryPoint membayar beneficiary pilihan bundler menggunakan dana gas yang dibebankan kepada akun atau paymaster.Apa Itu Bundler?
Bundler adalah partisipan account abstraction yang mengumpulkan, memvalidasi, mengelompokkan, dan mengirim UserOperation.Bundler membayar biaya transaksi jaringan native saat mengirim transaksi bundle ke blockchain.Bundler mengharapkan EntryPoint mengganti biaya operasi dari deposit smart account atau paymaster.Hal ini menimbulkan persyaratan ekonomi penting karena bundler harus menolak operasi yang dapat menggunakan gas tanpa membayar.Bundler biasanya menyimulasikan operasi beberapa kali seiring perubahan state blockchain antara penerimaan awal dan pengiriman akhir.Antarmuka JSON-RPC ERC-7769 terstandardisasi mendefinisikan metode yang dapat digunakan wallet dan bundler untuk bertukar UserOperation dan mengambil statusnya.
Bundler bukan pemilik smart account dan seharusnya tidak dapat mengotorisasi operasi yang ditolak akun tersebut.Fungsi handleOps
Fungsi utama EntryPoint adalah
Validasi dan Eksekusi Merupakan Tahap Terpisah
ERC-4337 memisahkan validasi dari eksekusi utama operasi.Dalam tahap validasi, EntryPoint menentukan apakah akun mengotorisasi operasi dan apakah biaya gasnya dapat dibayar.Dalam tahap eksekusi, smart account menjalankan panggilan yang diminta.Pemisahan ini penting karena operasi dapat lolos pemeriksaan otorisasi tetapi tetap gagal saat menjalankan panggilan aplikasi.Contohnya, smart account dapat mengotorisasi transfer token dengan benar, tetapi transfer tersebut kemudian gagal karena saldo token akun tidak mencukupi.Gas tetap digunakan untuk validasi dan eksekusi yang gagal.Karena itu, akun atau paymaster tetap dapat dikenai biaya meskipun tindakan aplikasi yang dimaksud tidak berhasil.Fungsi validateUserOp
Smart account ERC-4337 mengimplementasikan fungsi bernama
Mengapa Smart Account Harus Memercayai EntryPoint yang Tepat
EntryPoint mendapat izin untuk memanggil jalur validasi dan eksekusi sensitif pada smart account.Karena itu, smart account sebaiknya menolak panggilan dari kontrak tidak tepercaya yang menyamar sebagai EntryPoint.Memercayai alamat yang salah dapat memungkinkan kontrak berbahaya melewati asumsi tentang penanganan nonce, akuntansi gas, identitas pemanggil, atau urutan eksekusi.Implementasi wallet harus menetapkan cara mengenali versi EntryPoint yang disetujui.Beberapa akun menggunakan satu alamat tetap, sementara akun yang dapat di-upgrade atau modular mungkin mendukung proses migrasi terkendali.Penambahan EntryPoint baru sebaiknya diperlakukan sebagai upgrade wallet yang sensitif terhadap keamanan, bukan sekadar pengaturan antarmuka rutin.Hash UserOperation dan Perlindungan Replay
Hash UserOperation mengikat operasi ke data penting yang digunakan dalam otorisasi.Hash tersebut mencakup alamat EntryPoint dan chain ID blockchain.Hal ini mencegah operasi valid yang ditujukan untuk satu EntryPoint atau jaringan digunakan kembali secara otomatis pada yang lain.Tanda tangan tidak disertakan dalam hash operasi dasar agar akun dapat memvalidasi data otorisasi yang diberikan terhadap hash tersebut.Desain tanda tangan paymaster saat ini juga dapat mengecualikan tanda tangan paymaster terpisah dari hash agar penandatanganan wallet dan paymaster dapat berlangsung paralel.Developer harus mengikuti aturan hashing yang tepat untuk versi EntryPoint yang dipilih.Pemisahan domain yang keliru dapat menimbulkan risiko replay atau membuat operasi yang sah tidak dapat divalidasi.Pengelolaan Nonce EntryPoint
EntryPoint menyediakan pengelolaan nonce untuk mencegah UserOperation yang sama dieksekusi berulang kali.ERC-4337 menggunakan nonce dua bagian yang berisi key 192-bit dan nilai urutan 64-bit.Setiap key dapat mewakili kanal berurutan yang terpisah untuk satu smart account.Dengan begitu, akun dapat memisahkan operasi normal, operasi administratif, atau kategori lain tanpa memaksa semua tindakan menggunakan satu urutan global.Fungsi
Deployment Smart Account Kontrafaktual
Alamat wallet ERC-4337 sering kali dapat dihitung sebelum kontrak smart account di-deploy.Alamat ini disebut alamat kontrafaktual.Wallet dapat menerima aset kripto di alamat yang telah dihitung tersebut sebelum operasi account abstraction pertamanya.UserOperation pertama menyertakan informasi deployment akun yang mengidentifikasi factory dan data inisialisasi.EntryPoint menggunakan helper SenderCreator untuk memanggil factory dan membuat smart account pada alamat yang diharapkan.Alamat yang di-deploy harus sesuai dengan field sender UserOperation.Jika akun belum ada dan operasi tidak menyertakan informasi deployment yang valid, validasi akan gagal.EntryPoint v0.9 dan initCode
EntryPoint v0.9 mengubah penanganan data deployment ketika akun sender sudah ada.Dalam perilaku sebelumnya,
Versi 0.9 dapat mengabaikan data deployment jika kontrak sender sudah ada dan memancarkan event
Prefunding Gas
Bundler membayar biaya jaringan untuk transaksi yang memanggil EntryPoint.Karena itu, EntryPoint harus memastikan bahwa setiap UserOperation dapat mengganti biaya maksimum yang diperkirakan.Selama validasi, EntryPoint menghitung prefund yang diperlukan berdasarkan batas gas dan pengaturan biaya operasi.Smart account dapat menyimpan deposit di EntryPoint untuk keperluan ini.Jika deposit akun tidak mencukupi, akun dapat mentransfer mata uang native tambahan ke EntryPoint selama validasi.Jika paymaster mensponsori operasi, deposit paymaster yang digunakan.Prefunding yang tidak mencukupi membuat operasi tidak valid untuk dimasukkan.Deposit EntryPoint
EntryPoint memelihara deposit yang digunakan untuk membayar biaya gas UserOperation di kemudian hari.Smart account dan paymaster dapat menambahkan mata uang native ke deposit tersebut.Fungsi
Fungsi
Entitas yang berwenang dapat menggunakan
Apa Itu Paymaster?
Paymaster adalah smart contract opsional yang setuju menanggung biaya gas untuk UserOperation tertentu.Dengan demikian, aplikasi dapat menyubsidi aktivitas pengguna atau menerapkan pengaturan biaya lain.Paymaster menyimpan mata uang native dalam deposit EntryPoint-nya.Selama validasi, EntryPoint memanggil
Jika mengembalikan data konteks, EntryPoint dapat memanggil fungsi
Deposit Paymaster vs. Stake
Deposit dan stake paymaster memiliki tujuan berbeda.Deposit membayar biaya gas UserOperation.Stake dikunci sebagai bagian dari perlindungan sistem terhadap denial-of-service dan penyalahgunaan reputasi.Fungsi
Paymaster harus terlebih dahulu memanggil
Fungsi
Tanda Tangan Paymaster EntryPoint v0.9
EntryPoint v0.9 menambahkan dukungan untuk nilai
Stake dan Reputasi EntryPoint
Validasi ERC-4337 dapat melibatkan account factory, paymaster, signature aggregator, dan kontrak lainnya.Entitas berbahaya dapat mencoba membuang sumber daya bundler atau membuat operasi tidak valid setelah masuk ke mempool.Staking memungkinkan entitas tertentu memperoleh akses storage yang lebih luas saat validasi, sekaligus membuat mereka menghadapi konsekuensi reputasi.Bundler dapat memantau entitas yang berulang kali menyebabkan bundle tidak valid atau melakukan perilaku abusif.Kebijakan reputasi off-chain yang tepat dapat berbeda di setiap implementasi bundler.Staking mengurangi insentif untuk serangan tertentu, tetapi tidak membuktikan bahwa paymaster atau factory dapat dipercaya.Apa Itu Simulasi UserOperation?
Simulasi adalah proses off-chain yang digunakan bundler untuk memperkirakan apakah UserOperation akan lolos validasi EntryPoint.Bundler melakukan panggilan dan penelusuran terhadap state blockchain terkini tanpa menerapkan perubahan hasil simulasi.Simulasi memeriksa pembuatan akun, validitas nonce, otorisasi akun, persetujuan paymaster, pendanaan gas, dan perilaku validasi yang dibatasi.Bundler biasanya melakukan simulasi saat pertama kali menerima operasi, sekali lagi saat memilihnya untuk bundle, dan sekali lagi sebelum mengirim bundle.Simulasi berulang diperlukan karena transaksi lain dapat mengubah saldo, deposit, nonce, kode kontrak, atau state relevan lainnya.Simulasi yang berhasil tidak menjamin eksekusi aplikasi akan berhasil.Aturan Validasi ERC-7562
Validasi terprogram menimbulkan risiko denial-of-service yang tidak muncul dalam bentuk yang sama pada tanda tangan akun biasa.Akun berbahaya dapat membuat validasi bergantung pada state yang tidak stabil atau menghabiskan banyak sumber daya bundler.Aturan validasi ERC-7562 membatasi opcode, akses storage, dan perilaku lain selama validasi UserOperation di mempool publik.
Bundler menegakkan aturan ini secara off-chain sebelum memasukkan operasi.Pembatasan berlaku untuk validasi, bukan setiap tindakan yang dilakukan selama eksekusi utama akun.Operasi yang diterima dalam mempool privat atau alternatif dapat mengikuti kebijakan berbeda dari mempool bersama kanonis.Eksekusi UserOperation
Setelah validasi berhasil, EntryPoint memanggil smart account untuk mengeksekusi operasi yang diminta.Akun menafsirkan
Antarmuka IAccountExecute
Smart account dapat memilih untuk mengimplementasikan
Antarmuka ini menyediakan fungsi
Fungsi getCurrentUserOpHash
EntryPoint v0.9 menambahkan
Penyelesaian Gas dan Beneficiary
EntryPoint mengukur gas yang terkait dengan pemrosesan setiap UserOperation.EntryPoint membebankan biaya aktual kepada akun atau paymaster yang bertanggung jawab, sesuai biaya aktual dan batas biaya operasi.Biaya yang terkumpul dikirim ke beneficiary yang diberikan dalam panggilan
Dapatkah Satu Operasi Gagal Merusak Bundle?
Kegagalan validasi dapat menyebabkan operasi dikeluarkan atau pengiriman bundle mengalami revert, bergantung pada kapan masalah ditemukan dan fungsi EntryPoint yang digunakan.Inilah alasan bundler menyimulasikan operasi berulang kali sebelum mengirim bundle.Setelah lolos validasi, eksekusi aplikasi dari operasi tersebut tetap dapat mengalami revert.Revert eksekusi biasanya dicatat sebagai UserOperation yang gagal, sementara gas tetap harus dibayar.Bundler harus menyusun bundle dengan cermat agar perubahan state tidak membatalkan operasi berikutnya secara tak terduga.Aplikasi sebaiknya membaca receipt UserOperation dan event keberhasilan, bukan menganggap bahwa masuknya bundle ke dalam blok berarti panggilan yang diminta berhasil.Event EntryPoint
EntryPoint memancarkan event yang membuat aktivitas UserOperation dapat diamati.Event UserOperation dapat mengidentifikasi hash operasi, sender, paymaster, nonce, status keberhasilan, biaya gas aktual, dan gas yang digunakan.Event deployment akun dapat mengidentifikasi smart account baru dan factory-nya.Event deposit dan penarikan mencatat perubahan saldo gas yang didanai di muka.Event stake mencatat aktivitas staking, pembukaan kunci, dan penarikan.Versi lebih baru dapat menambahkan event untuk perilaku khusus versi, seperti data deployment yang diabaikan atau inisialisasi EIP-7702.Indexer harus menggunakan definisi event untuk versi EntryPoint yang tepat yang dipantaunya.EntryPoint dan EIP-7702
EIP-7702 memungkinkan externally owned account mengotorisasi delegasi ke kode smart contract.Versi ERC-4337 saat ini dapat menggunakan delegasi ini untuk menyediakan fitur account abstraction pada alamat yang sudah ada.Spesifikasi EIP-7702 resmi mendefinisikan mekanisme otorisasi pada tingkat transaksi.
Bundler ERC-4337 dapat menyertakan data otorisasi yang diperlukan saat mengirim bundle UserOperation yang kompatibel.EntryPoint menyertakan target delegasi dalam logika hashing dan inisialisasi yang relevan.EIP-7702 tidak menghilangkan kebutuhan untuk mengamankan implementasi akun yang didelegasikan, proses otorisasi, dan integrasi EntryPoint.Rentang Validitas EntryPoint v0.9
Smart account dan paymaster dapat membatasi UserOperation pada periode validitas tertentu.Perilaku EntryPoint sebelumnya merepresentasikan batas ini melalui timestamp.Versi 0.9 juga mendukung rentang validitas yang ditafsirkan sebagai nomor blok ketika flag encoding yang ditentukan digunakan.Hal ini dapat membantu aplikasi yang izinnya atau tindakannya sudah ditetapkan berdasarkan tinggi blok.Bundler harus memahami encoding tersebut dan menghindari penyertaan operasi yang belum valid atau kemungkinan kedaluwarsa sebelum dimasukkan.Deployment EntryPoint Deterministik
Deployment EntryPoint resmi menggunakan teknik pembuatan kontrak deterministik agar versi yang sama dapat memiliki alamat yang sama di jaringan kompatibel yang didukung.Hal ini dapat menyederhanakan konfigurasi wallet dan bundler.Dokumentasi kontrak EntryPoint menjelaskan cara repositori resmi menggunakan salt deployment tetap untuk deployment lokal dan yang kompatibel.
Alamat yang sama saja tidak cukup untuk membuktikan keaslian karena jaringan berbeda dapat memiliki kode atau riwayat deployment berbeda.Developer sebaiknya memverifikasi bytecode dan code hash pada alamat tersebut di setiap jaringan yang didukung.EntryPoint vs. Smart Account
EntryPoint adalah infrastruktur bersama yang digunakan banyak smart account.Smart account adalah kontrak khusus pengguna yang menyimpan aset dan menentukan aturan otorisasi.EntryPoint biasanya tidak menyimpan saldo token pengguna atau menggantikan alamat smart account.Smart account menentukan apakah UserOperation diotorisasi.EntryPoint menegakkan kerangka umum pemrosesan, nonce, deployment, gas, dan penyelesaian.Kerentanan pada smart account dapat berdampak pada akun tersebut meskipun EntryPoint berfungsi dengan benar.Kerentanan pada versi EntryPoint yang banyak digunakan dapat berdampak pada banyak akun dan paymaster yang memercayainya.EntryPoint vs. Bundler
EntryPoint adalah kontrak on-chain.Bundler adalah partisipan off-chain yang menerima UserOperation dan mengirim transaksi EntryPoint.Bundler melakukan simulasi dan membayar biaya transaksi jaringan di awal.EntryPoint melakukan validasi on-chain yang berwenang dan menyelesaikan pembayaran.Bundler tidak dapat membuat tanda tangan smart account yang tidak valid menjadi valid.Namun, bundler dapat menunda atau menolak penyertaan operasi, sehingga wallet dapat memperoleh manfaat dari akses ke lebih dari satu jalur pengiriman yang kompatibel.EntryPoint vs. Paymaster
EntryPoint memproses operasi dan menyelesaikan biaya gasnya.Paymaster secara opsional setuju membayar biaya tersebut untuk pengguna atau tindakan tertentu.Paymaster menentukan aturan sponsornya sendiri sesuai batasan validasi ERC-4337.Paymaster harus memiliki deposit yang cukup dan mungkin juga memerlukan stake.EntryPoint tidak memaksa paymaster mensponsori setiap operasi yang valid.Gangguan layanan atau penolakan kebijakan paymaster dapat menghentikan alur bersponsor meskipun smart account itu sendiri valid.EntryPoint vs. Account Factory
Account factory men-deploy smart account.EntryPoint memanggil factory melalui mekanisme SenderCreator ketika sender yang belum di-deploy menyertakan data pembuatan yang valid.Factory harus menghasilkan alamat akun yang diharapkan.Factory juga harus membatasi jalur pembuatan sensitif sesuai persyaratan keamanan ERC-4337.EntryPoint tidak menentukan implementasi smart account, pemilik, modul, atau aturan pemulihannya.Properti tersebut ditentukan oleh factory dan data inisialisasi.Manfaat Model EntryPoint
EntryPoint memberi bundler satu antarmuka bersama untuk berbagai desain smart account.EntryPoint memungkinkan akun menentukan otorisasi terprogram alih-alih bergantung pada satu model tanda tangan tetap.EntryPoint mendukung deployment akun kontrafaktual sebagai bagian dari UserOperation pertama.EntryPoint memungkinkan paymaster mensponsori gas berdasarkan kebijakan terprogram.EntryPoint mendukung penggabungan beberapa tindakan pengguna dalam satu transaksi dasar.EntryPoint memisahkan otorisasi pengguna dari akun yang membayar biaya transaksi jaringan.EntryPoint dapat di-deploy pada jaringan kompatibel tanpa memerlukan perubahan pada lapisan konsensus.Keterbatasan Model EntryPoint
EntryPoint menambahkan kontrak, metode RPC, simulasi, field gas, dan peran infrastruktur tambahan.Wallet harus berkoordinasi dengan bundler yang kompatibel dan mungkin juga paymaster.Versi EntryPoint yang berbeda dapat memecah likuiditas, tooling, dan dukungan mempool.Validasi terprogram menimbulkan risiko denial-of-service yang memerlukan aturan off-chain ketat.Estimasi gas lebih kompleks daripada estimasi transaksi akun dasar.Operasi bersponsor dapat gagal ketika paymaster tidak tersedia atau menolak permintaan.Account abstraction meningkatkan fleksibilitas wallet, tetapi tidak menghilangkan phishing, aplikasi berbahaya, approval yang tidak aman, atau bug smart contract.Risiko Keamanan EntryPoint
EntryPoint merupakan dependensi bersama bernilai tinggi karena smart account dan paymaster memberinya wewenang khusus.Cacat dalam validasi, perhitungan gas, deposit, staking, pembuatan akun, atau eksekusi dapat berdampak luas.Developer sebaiknya menggunakan deployment resmi yang telah diaudit, bukan mengubah kontrak inti tanpa pertimbangan.Wallet harus memverifikasi alamat dan versi EntryPoint yang dipercaya.Bundler harus menegakkan aturan validasi dan reputasi secara konsisten.Akun dan paymaster harus memastikan callback sensitif berasal dari EntryPoint tepercaya.Factory harus memverifikasi panggilan dari kontrak SenderCreator yang benar.Risiko Tanda Tangan dan Otorisasi
Account abstraction mendukung tanda tangan yang fleksibel, tetapi fleksibilitas tidak menjamin otorisasi yang aman.Verifier passkey yang lemah, ambang multisignature yang keliru, session key yang terekspos, atau modul pemulihan yang cacat dapat mengotorisasi UserOperation yang tidak diinginkan.Akun harus mengikat otorisasi ke hash operasi, chain ID, EntryPoint, nonce, rentang validitas, dan panggilan yang dimaksud dengan benar.Antarmuka wallet sebaiknya menampilkan panggilan dalam batch dengan jelas sebelum meminta persetujuan.Tanda tangan smart account yang valid dapat mengotorisasi beberapa tindakan sekaligus, termasuk approval dan transfer token.Risiko Paymaster
Paymaster dapat menerapkan aturan sponsor yang ketat atau terpusat.Paymaster dapat berhenti mensponsori aktivitas jika depositnya rendah, layanannya tidak tersedia, atau kebijakannya berubah.Paymaster yang cacat dapat kehilangan deposit akibat validasi atau akuntansi yang keliru.Pengguna berbahaya dapat mencoba menghabiskan sumber daya paymaster tanpa menyelesaikan tindakan yang bermanfaat.Signer paymaster yang disusupi dapat menyetujui operasi di luar kebijakan yang dimaksud.Pengguna tidak boleh berasumsi bahwa gas bersponsor berarti operasi aman atau bebas dari biaya lain.Risiko Bundler
Bundler dapat menyensor, menunda, salah menentukan harga, atau menghapus UserOperation.Bundler juga dapat memberikan estimasi gas yang tidak akurat atau informasi status yang sudah kedaluwarsa.Smart account tetap dilindungi oleh validasi on-chain, tetapi pengalaman pengguna masih dapat terganggu jika bundler yang dipilih tidak andal.Wallet sebaiknya menangani timeout, penggantian operasi, perubahan biaya, dan pengiriman melalui bundler alternatif jika didukung.Pengguna sebaiknya memverifikasi receipt on-chain final, bukan hanya mengandalkan respons pending dari bundler.Risiko Estimasi Gas
UserOperation memisahkan beberapa batas gas untuk validasi, eksekusi, pekerjaan paymaster, dan overhead bundler.Batas yang terlalu rendah dapat menyebabkan validasi atau eksekusi gagal.Batas yang terlalu tinggi dan tidak diperlukan dapat mengharuskan prefund lebih besar, meskipun penyelesaian akhir seharusnya menggunakan biaya aktual sesuai aturan protokol.Biaya data khusus jaringan dapat memengaruhi
Reentrancy dan Panggilan Eksternal
EntryPoint memanggil smart account, factory, paymaster, signature aggregator, dan kontrak aplikasi.Panggilan eksternal ini dapat menjalankan kode kontrak apa pun.Implementasi harus mengasumsikan bahwa kode eksternal dapat mengalami revert, menghabiskan gas, atau mencoba reentrancy.Smart account dan modul harus melindungi state pentingnya sendiri selama eksekusi yang dipicu EntryPoint.Logika pascaoperasi paymaster tidak boleh berasumsi bahwa tindakan yang diminta akun berhasil.Extension account abstraction khusus memerlukan analisis keamanan independen meskipun menggunakan EntryPoint yang telah diaudit.Cara Developer Mengintegrasikan EntryPoint
Langkah pertama adalah memilih versi EntryPoint yang didukung dan memverifikasi deployment resminya di setiap jaringan.Langkah kedua adalah memastikan smart account hanya memercayai alamat EntryPoint yang disetujui.Langkah ketiga adalah mengimplementasikan
Bagaimana Pengguna Berinteraksi dengan EntryPoint
Kebanyakan pengguna tidak memanggil EntryPoint secara manual.Wallet smart account menyusun dan mengirim UserOperation di latar belakang.Pengguna mungkin melihat hash operasi account abstraction sebelum transaksi blockchain yang mendasarinya dibuat.Setelah dimasukkan ke dalam blok, blockchain explorer dapat menampilkan transaksi yang memanggil
Contoh Transaksi EntryPoint
Misalkan Alice menggunakan smart account dan ingin melakukan approval token lalu menyetorkannya ke vault kripto dalam satu tindakan.Wallet-nya membuat UserOperation yang berisi kedua panggilan tersebut.Logika otorisasi akun menyetujui operasi menggunakan metode autentikasi yang telah dikonfigurasi Alice.Paymaster setuju mensponsori gas jaringan sesuai kebijakannya.Wallet mengirim operasi ke bundler yang kompatibel.Bundler menyimulasikan validasi akun dan paymaster.Kemudian, bundler memasukkan operasi Alice bersama UserOperation lain dalam panggilan ke fungsi
Kesalahan Umum EntryPoint
Kesalahan umum pertama adalah mengira EntryPoint sebagai smart account pengguna.Kesalahan kedua adalah mengirim UserOperation ke bundler yang mendukung versi EntryPoint berbeda.Kesalahan ketiga adalah memercayai alamat EntryPoint tanpa memverifikasi kode yang di-deploy.Kesalahan keempat adalah menganggap masuknya bundle ke dalam blok membuktikan panggilan aplikasi berhasil.Kesalahan kelima adalah mencampuradukkan deposit gas dengan stake paymaster.Kesalahan keenam adalah tidak menyertakan chain ID dan alamat EntryPoint dalam logika otorisasi.Kesalahan ketujuh adalah menganggap simulasi yang berhasil menjamin eksekusi berhasil.Kesalahan kedelapan adalah membiarkan fungsi akun sensitif menerima panggilan dari EntryPoint mana pun yang mengaku sebagai EntryPoint.Kesalahan kesembilan adalah menganggap transaksi bersponsor tidak dapat membebankan token atau menerapkan biaya lain.Kesalahan kesepuluh adalah meng-upgrade ke EntryPoint baru tanpa meninjau perilaku khusus versi dan laporan keamanan.FAQ
Apa itu EntryPoint dalam ERC-4337?
EntryPoint adalah smart contract pusat yang memvalidasi, mengeksekusi, dan menyelesaikan UserOperation untuk wallet account abstraction yang kompatibel.Apakah EntryPoint merupakan wallet?
Bukan. EntryPoint adalah infrastruktur bersama yang digunakan wallet smart account, bundler, factory, dan paymaster.Apakah EntryPoint merupakan mata uang kripto?
Bukan. EntryPoint adalah perangkat lunak smart contract dan tidak memerlukan token sendiri.Apa versi EntryPoint terbaru?
Per 16 Juli 2026, repositori account abstraction resmi mencantumkan EntryPoint v0.9.0 sebagai rilis terbaru.Apa alamat EntryPoint v0.9?
Rilis resmi v0.9 mencantumkan
Dapatkah beberapa versi EntryPoint tersedia sekaligus?
Ya. Versi lama dan baru dapat berjalan bersamaan saat wallet, bundler, dan paymaster bermigrasi.Apa itu UserOperation?
UserOperation adalah permintaan account abstraction terstruktur yang memuat sender, nonce, panggilan, pengaturan gas, otorisasi, dan data deployment atau sponsor opsional.Apakah UserOperation merupakan transaksi Ethereum?
Bukan. Bundler mengemas satu atau beberapa UserOperation ke dalam transaksi blockchain biasa yang dikirim ke EntryPoint.Apa fungsi handleOps?
Fungsi ini memvalidasi dan mengeksekusi bundle UserOperation serta membayar beneficiary pilihan dari biaya gas yang terkumpul.Siapa yang memanggil EntryPoint?
Bundler biasanya memanggil EntryPoint saat mengirim bundle UserOperation on-chain.Siapa yang mengotorisasi UserOperation?
Smart account mengotorisasinya melalui logika
Dapatkah bundler membelanjakan dana tanpa persetujuan akun?
Smart account yang diimplementasikan dengan benar akan menolak operasi yang tidak memenuhi aturan otorisasinya.Apa itu deposit EntryPoint?
Deposit EntryPoint adalah mata uang native yang didanai di dalam EntryPoint untuk membayar biaya gas UserOperation di kemudian hari.Apa itu stake EntryPoint?
Stake EntryPoint adalah mata uang native yang dikunci oleh entitas tertentu, terutama paymaster, sebagai bagian dari perlindungan terhadap denial-of-service dan penyalahgunaan reputasi.Apakah deposit paymaster sama dengan stake-nya?
Tidak. Deposit membayar gas, sedangkan stake dikunci secara terpisah dengan masa tunggu unstake.Apa itu paymaster?
Paymaster adalah kontrak yang setuju membayar biaya gas untuk UserOperation tertentu.Apakah paymaster membuat semua operasi gratis?
Tidak. Paymaster dapat menolak operasi, menerapkan aturan kelayakan, atau menggunakan metode lain untuk memulihkan biayanya.Apa itu simulasi UserOperation?
Simulasi adalah proses off-chain yang digunakan bundler untuk memperkirakan apakah operasi akan lolos validasi EntryPoint sebelum dikirim.Apakah simulasi yang berhasil menjamin eksekusi?
Tidak. Eksekusi aplikasi tetap dapat mengalami revert atau state blockchain dapat berubah sebelum operasi dimasukkan.Mengapa alamat EntryPoint disertakan dalam hash operasi?
Hal ini membantu mencegah otorisasi untuk satu versi EntryPoint digunakan ulang melalui kontrak lain.Mengapa chain ID disertakan dalam hash operasi?
Hal ini membantu mencegah operasi bertanda tangan yang sama digunakan ulang secara otomatis pada jaringan blockchain lain.Dapatkah EntryPoint men-deploy smart account?
EntryPoint dapat mengoordinasikan deployment melalui data pembuatan akun dan factory jika akun sender belum ada.Apa itu smart account kontrafaktual?
Smart account kontrafaktual adalah alamat smart account yang dihitung sebelum kontrak akunnya di-deploy.Apakah EntryPoint menyimpan token pengguna?
Token biasanya disimpan dalam smart account pengguna, sedangkan EntryPoint hanya menyimpan deposit dan stake terkait pemrosesan gas.Dapatkah satu transaksi EntryPoint memuat beberapa pengguna?
Ya. Bundler dapat memasukkan UserOperation dari beberapa smart account yang tidak saling terkait ke dalam satu transaksi
Apakah UserOperation yang gagal tetap dapat menggunakan gas?
Ya. Validasi dan eksekusi yang gagal menggunakan gas, dan akun atau paymaster yang bertanggung jawab tetap dapat dikenai biaya.Apakah EntryPoint mendukung akun EIP-7702?
Versi EntryPoint saat ini mendukung alur otorisasi EIP-7702 dan akun terdelegasi yang kompatibel.Apa yang berubah pada EntryPoint v0.9?
Perubahan utamanya mencakup tanda tangan paymaster paralel, rentang validitas berbasis nomor blok, penanganan data deployment yang diperbarui, kueri hash UserOperation saat ini, dan peningkatan observabilitas tambahan.Haruskah proyek men-deploy EntryPoint sendiri?
Wallet produksi biasanya menggunakan deployment kanonis yang telah ditinjau, sedangkan deployment lokal khusus terutama berguna untuk pengujian dan pengembangan.Apakah EntryPoint aman?
Kontrak resmi telah ditinjau secara menyeluruh, tetapi keamanan tetap bergantung pada deployment, versi, smart account, bundler, paymaster, factory, modul, dan kode integrasi yang tepat.Kesimpulan
EntryPoint adalah gerbang on-chain pusat untuk account abstraction ERC-4337.EntryPoint menerima UserOperation yang dibundel, mengoordinasikan validasi smart account, men-deploy akun jika diperlukan, memverifikasi pendanaan gas, mengeksekusi panggilan yang disetujui, dan menyelesaikan biaya.Bundler mengirim operasi ke EntryPoint, sedangkan smart account tetap mengendalikan aturan otorisasinya sendiri.Paymaster dapat mensponsori gas dengan memelihara deposit dan menerima operasi melalui kebijakan validasi terprogram.EntryPoint juga mengelola kanal nonce, deposit, stake, event operasi, serta fungsi account abstraction bersama lainnya.Per 16 Juli 2026, v0.9.0 merupakan rilis terbaru yang tercantum dalam repositori account abstraction resmi.Kompatibilitas versi tetap mengharuskan setiap wallet, bundler, paymaster, factory, dan implementasi akun menggunakan deployment EntryPoint yang sama.Developer harus memverifikasi alamat dan bytecode, melindungi pemeriksaan pemanggil tepercaya, mengikuti aturan hashing yang tepat, menyimulasikan operasi, dan meninjau setiap kontrak yang terhubung.Pengguna harus memahami bahwa gas bersponsor dan wallet terprogram meningkatkan kemudahan penggunaan, tetapi tidak menghilangkan phishing, kegagalan eksekusi, risiko approval, atau kerentanan smart contract.Memahami EntryPoint membantu pengguna kripto membedakan kontrak pemrosesan ERC-4337 bersama dari smart account, bundler, paymaster, dan tindakan aplikasi yang dibangun di sekitarnya.Anda Mungkin Juga Menyukai
ZK-Rollup
ZK-Rollup-as-a-Service
zk-SNARK
POPULER
Mata uang kripto yang sedang tren saat ini dan menarik perhatian pasar yang signifikan
Volume TERATAS
Mata uang kripto dengan volume trading tertinggi
Baru Ditambahkan
Mata uang kripto yang baru saja masuk listing dan tersedia untuk trading

