Pasar biaya tertanam dan ERC-4337 (bagian 2)

LanjutanOct 07, 2024
Penelitian ini bertujuan untuk mengeksplorasi metode untuk meningkatkan UX dengan memastikan bahwa pengguna tidak perlu membayar terlalu mahal untuk inklusi pada bundle berikutnya. Sebaliknya, pengguna seharusnya bisa membayar biaya berdasarkan permintaan pasar yang sebenarnya untuk inklusi.
Pasar biaya tertanam dan ERC-4337 (bagian 2)

Pengantar

Dalam artikel sebelumnya post 15, kami memperkenalkan model ERC-4337. Model ini menguraikan struktur pasar biaya untuk bundlers dan rincian fungsi biaya terkait biaya penerbitan on-chain dan biaya penggabungan (agregasi) off-chain dari bundle.

Kami juga memperkenalkan konsep 'Bundler Game'. Game ini akan menjadi fokus utama bagian kedua. Diberikan satu set transaksi, seorang bundler dapat memilih transaksi mana yang akan dimasukkan dalam bundel mereka. Hal ini menciptakan asimetri informasi antara bundler dan pengguna, karena pengguna tidak tahu berapa banyak transaksi yang akan dimasukkan dalam bundel. Hal ini menghasilkan permainan zero-sum di mana pengguna berada dalam kelemahan yang jelas.

Penelitian ini bertujuan untuk mengeksplorasi metode untuk meningkatkan UX dengan memastikan bahwa pengguna tidak perlu membayar terlalu mahal untuk inklusi dalam bundel berikutnya. Sebaliknya, pengguna seharusnya dapat membayar biaya berdasarkan permintaan pasar yang sebenarnya untuk inklusi.

Kondisi saat ini dari ERC-4337

Di pasar saat ini, mempool P2P tidak aktif di mainnet dan sedang diuji di testnet Sepolia. Perusahaan yang membangun di ERC-4337 saat ini beroperasi dalam mode pribadi, pengguna terhubung melalui RPC ke pembungkus pribadi yang kemudian akan bekerja dengan buidler untuk mempublikasikan operasi pengguna Anda di rantai.Aplikasi Bundle Bear 3, dikembangkan oleh Kofi, menyediakan beberapa statistik menarik tentang kondisi saat ini dari ERC-4337.

DiPaket Multi-UserOp Mingguan % Bundel 1dalam metrik ini, kami mengamati persentase bundler yang membuat bundel yang mencakup beberapa userops. Mulai dari awal 2024 hingga Juni 2024, persentase ini tidak pernah melebihi 6,6%. Data ini menjadi lebih menarik ketika mempertimbangkan bahwa banyak bundler menjalankan paymaster mereka sendiri, entitas yang mensponsori transaksi atas nama pengguna. Terutama, dua bundler terbesar yang juga beroperasi sebagai paymaster, dalam hal operasi pengguna yang diterbitkan, disponsori 97% 1dari operasi pengguna menggunakan layanan mereka. Paymaster membayar beberapa bagian dari operasi pengguna dan sisanya dibayar oleh dapps atau lainnya entitas 1.

Pertanyaan yang muncul adalah mengapa pembayaran, dApps, dll., membayar untuk operasi pengguna. Apakah pengguna akan membayar kembali di masa depan? Kami tidak dapat yakin apa yang akan terjadi, tetapi tebakan saya pribadi adalah bahwa saat ini, dApps menutupi biaya untuk meningkatkan penggunaan dan adopsi aplikasi mereka. Setelah adopsi tinggi, pengguna kemungkinan harus membayar untuk transaksi mereka sendiri. Perlu dicatat bahwa untuk pengguna membayar untuk operasi pengguna dengan model saat ini bukanlah pilihan terbaik, karena operasi ERC-4337 dasar membutuhkan biaya sekitar 42.000 gas, sementara transaksi normal membutuhkan biaya sekitar 21.000 gas.

Variasi pada ERC-4337

Ikhtisar ERC-4337

Mempool masih dalam tahap pengujian di Sepolia dan tidak berjalan di mainnet. Tanpa mempool, pengguna memiliki opsi terbatas untuk menggunakan abstraksi akun. Pengguna berinteraksi dengan RPC, yang dapat ditawarkan oleh bundler yang mengikat UserOps, atau dengan layanan RPC yang tidak diikat, mirip dengan layanan seperti Alchemy atau Infura, yang menerima dan menyebarkan transaksi ke bundler lain.

Setelah mempool aktif, aliran transaksi akan menyerupai diagram di bawah ini, yang mirip dengan aliran transaksi saat ini. Mempool meningkatkan ketahanan terhadap sensor karena, tidak seperti model RPC, ia mengurangi kemungkinan transaksi dikeluarkan. Namun, meskipun dengan mempool, masih ada risiko bahwa penyedia RPC mungkin tidak meneruskan transaksi, tetapi model mempool ini sangat menguntungkan bagi pengguna yang lebih suka menjalankan node mereka sendiri, karena hal ini memitigasi risiko tersebut.

Meskipun bundler memiliki potensi untuk berperan sebagai pembangun, kami lebih memilih untuk memisahkan peran-peran tersebut karena persaingan yang ketat. Bundler akan menghadapi persaingan yang signifikan dari pembangun yang sudah ada dan canggih, membuat proses pembangunan menjadi kurang menarik dan berpotensi kurang menguntungkan. Sebagai hasilnya, bundler lebih termotivasi untuk bekerja sama dengan pembangun yang sudah mapan daripada membangun secara independen dan berisiko mengalami kerugian.

Menggabungkan peran bundler dan builder menjadi satu entitas tunggal menyiratkan perubahan signifikan pada sistem saat ini. Bundlers perlu bersaing dengan yang ada pembangun yang canggih, atau alternatifnya, pembangun saat ini perlu melakukan integrasi horizontal dan mengambil peran sebagai penggabung juga. Skenario terakhir, meskipun lebih mungkin terjadi, menimbulkan kekhawatiran tentang konsentrasi pasar dan potensi dampak negatif pada resistensi sensor.

Bundlers dan builders sebagai dua entitas yang berbeda

Dengan pengguna yang terhubung langsung ke RPC, semuanya berjalan di lingkungan yang lebih pribadi, yang tidak membantu persaingan pasar. Di masa depan, mempool akan berada di mainnet meningkatkan persaingan.

Menggunakan mempool, di mana userops bersifat publik kepada bundlers yang berbeda meningkatkan persaingan, dalam kasus abstraksi akun non asli memiliki pemisahan antara bundler dan builder diperlukan, dalam kasus abstraksi akun asli pemisahan mungkin tidak diperlukan karena builder dapat menginterpretasikan userops sebagai transaksi normal.

Ini dapat mengarah ke hasil berikut: Dalam lingkungan yang kompetitif, bundler akan menurunkan harga mereka untuk dipilih oleh pengguna, yang pada gilirannya akan mencari harga terendah untuk inklusi operasi pengguna mereka dalam bundel. Kompetisi ini akan menciptakan sistem di mana bundler yang menawarkan harga terbaik akan dipilih lebih sering daripada bundler yang hanya mencoba memaksimalkan keuntungan mereka dengan membuat bundel yang lebih kecil. Memisahkan peran bundler dan builder juga dapat meningkatkan ketahanan terhadap sensor. Seorang bundler dapat membuat bundel operasi pengguna yang diagregasi dan mengirimkannya ke builder yang berbeda. Jika bundel tersebut mencakup operasi yang dapat disensor, seorang builder yang tidak melakukan sensor dapat menerimanya dan melanjutkan dengan pembangunan. Namun, perlu dicatat bahwa dari perspektif pengguna, pengaturan ini dapat meningkatkan biaya, karena pengenalan bundler menambah pihak tambahan, sehingga menyebabkan biaya yang lebih tinggi.

RIP-7560

Abstraksi akun asli bukanlah konsep baru; telah diteliti selama bertahun-tahun. Sementara ERC-4337 semakin populer, implementasinya di luar protokol menawarkan keuntungan yang berbeda sekaligus kompromi. Terutama, EOAs yang ada tidak dapat beralih secara mulus ke SCW, dan berbagai jenis daftar tahan sensor lebih sulit digunakan. Seperti yang disebutkan sebelumnya, biaya operasional gas userOp meningkat secara signifikan dibandingkan dengan transaksi normal.RIP-7560 2tidak secara inheren akan menyelesaikan masalah yang sedang berlangsung mengenai biaya di luar rantai, tetapi secara substansial mengurangi biaya transaksi. Dari awal ~42000 gas, mungkin biayanya dapat dikurangi sebesar~20000 gas.

Abstraksi Akun Layer2s

Abstraksi akun dapat digunakan dalam solusi Layer 2 (L2). Beberapa L2 sudah mengimplementasikannya secara native, sementara yang lain mengikuti pendekatan L1 dan menunggu proposal baru yang mirip dengan RIP-7560. Di L2, L1 digunakan untuk ketersediaan data untuk mewarisi keamanan, sementara sebagian besar komputasi terjadi di luar rantai di L2, menyediakan transaksi yang lebih murah dan skalabilitas.

Dalam skenario di mana komputasi pada L2 jauh lebih murah daripada biaya calldata untuk ketersediaan data (DA) pada mainchain, penggunaan agregasi tanda tangan terbukti sangat bermanfaat. Sebagai contoh, pasangan untuk BLS pada mainnet difasilitasi oleh 0x08 1prekompilasi dari EVM, yang membutuhkan sekitar ~45000k gas. Akibatnya, menggunakan BLS di L1 lebih mahal daripada transaksi tradisional.

Teknik kompresi pada L2 telah digunakan, seperti kompresi 0-byte, yang mengurangi biaya dari ~188 byte menjadi ~154 byte untuk transfer ERC20. Dengan agregasi tanda tangan, efisiensi kompresi dapat ditingkatkan lebih lanjut dengan menggunakan satu tanda tangan, mengurangi ukuran menjadi ~128 byte.

Di Layer 2, agregasi tanda tangan adalah inovasi penting yang meningkatkan efisiensi transaksi dan efektivitas biaya. Dengan menggabungkan beberapa tanda tangan menjadi satu, muatan data keseluruhan secara signifikan berkurang, yang menurunkan biaya yang terkait dengan ketersediaan data di Layer 1. Kemajuan ini tidak hanya meningkatkan skalabilitas tetapi juga mengurangi biaya transaksi bagi pengguna, sehingga membuat sistem lebih ekonomis dan efisien.

Ekonomi Agregasi Tanda Tangan di Layer2s

Saat menggunakan layanan L2, pengguna akan dikenakan beberapa biaya, termasuk biaya untuk operator L2, biaya berdasarkan kemacetan jaringan, dan biaya ketersediaan data di L1.

Dari penelitian sebelumnya tentang ”Memahami ekonomi rollup dari prinsip-prinsip pertama”, kita dapat menjabarkan biaya yang dihadapi pengguna saat menggunakan layanan L2 sebagai berikut:

Ketika seorang pengguna berinteraksi dengan lapisan 2, dia memiliki beberapa biaya yang dapat kita definisikan sebagai berikut:

  • Biaya pengguna = biaya publikasi data L1 + biaya operator L2 + biaya kemacetan L2
  • Biaya operator = Biaya operator L2 + Biaya publikasi data L1
  • Pendapatan operator = Biaya pengguna + MEV
  • Keuntungan operator = Pendapatan operator - Biaya operator = Biaya kemacetan L2 + MEV

Dalam kasus abstraksi akun non-asli, entitas tambahan, yaitu bundler, dapat memperkenalkan biaya untuk membuat bundel operasi pengguna.

Mengingat bundler, biaya dan keuntungan diperluas sebagai berikut:

  • Biaya pengguna = Biaya publikasi data L1 + Biaya operator L2 + Biaya kemacetan L2 + Biaya Bundler
  • Biaya Bundler = Dikutip (biaya publikasi data L1 + biaya operator L2 + biaya kemacetan L2)
  • Pendapatan Bundler = Biaya Pengguna
  • Keuntungan Bundler = Pendapatan Bundler - Biaya Bundler = Perbedaan antara biaya L1 dan L2 dan harga yang dikutip dari bundler + Biaya Bundler
  • Biaya Operator = Biaya publikasi data L1 + Biaya operator L2
  • Keuntungan operator = Pendapatan operator - Biaya operator = Biaya kemacetan L2 + MEV

Bundler menghasilkan biaya dari pengguna untuk layanan mereka, sementara sisa pembayaran pengguna mencakup biaya operator L2. Jika pengguna tidak menyadari ukuran bundel, memperkirakan biaya sebenarnya untuk mengirimkan userops menjadi sulit, yang berpotensi mengakibatkan bundler menagih biaya yang lebih tinggi dari yang diperlukan untuk menutupi biaya operator.

Incentive Alignment di L2

Interaksi antara bundler dan L2 membantu mengatasi masalah ini, karena L2 diincentivasi untuk menjaga biaya pengguna tetap rendah karena adanya persaingan. Membebankan biaya berlebih kepada pengguna dapat mendorong mereka beralih ke L2 lain yang menawarkan harga lebih adil.

Mari kita mendefinisikan ulang model kami dengan memperkenalkan operator. Pengguna mengajukan penawaran kepada pengumpul untuk dimasukkan dalam blok L2 berikutnya dengan menawarkan nilai V. Pengguna bertujuan untuk meminimalkan biaya penerbitan data, sementara pengumpul mencari untuk memaksimalkan biaya mereka atau mendapatkan kelebihan dari biaya interaksi L2 dan biaya pengguna.

Biaya yang terkait dengan membuat bundel dan mempublikasikannya di rantai dapat dibagi menjadi dua bagian:

Fungsi biaya on-chain: Bundler yang menerbitkan bundel B ketika biaya dasar r mengeluarkan biaya:

Fungsi biaya Agregat: Pemaket memiliki fungsi biaya untuk menggabungkan n transaksi dalam satu bundel B dengan biaya dasar r:

dengan S′F, yang berisi publikasi dan verifikasi dari tanda tangan terkumpul tunggal on-chain.

Jika pengguna dapat memperoleh perkiraan yang dapat diandalkan untuk n, mereka dapat menghitung biaya mereka menggunakan fungsi estimateGas, yang tersedia dalam sebagian besar solusi L2. Memiliki estimasi yang baik dapat membuat pengguna mengajukan penawaran sesuai tanpa harus memperkirakan penawaran mereka untuk inklusi. Fungsi ini menentukan biaya yang diperlukan untuk memastikan inklusi. Memiliki perkiraan yang baik untuk n dan fungsi estimateGas dapat menghindarkan pengguna dari pembayaran preVerificationGas yang lebih tinggi. Pada bagian selanjutnya, kami akan menjelajahi berbagai mekanisme untuk memastikan perkiraan yang dapat diandalkan untuk n.

Layer2s mengoperasikan oracle

Peran oracle adalah untuk memantau mempool dan memperkirakan jumlah transaksi yang ada. Prosesnya bekerja sebagai berikut: Layer 2 menyebarkan oracle untuk memeriksa mempool dan kemudian memberi tahu pengguna tentang jumlah transaksi di mempool. Hal ini memungkinkan pengguna memperkirakan bid mereka untuk disertakan dalam paket. Layer 2 dapat meminta bundler untuk memasukkan setidaknya sejumlah transaksi tertentu (n) dalam satu bundel, atau bundle akan ditolak. Setelah bundler mengumpulkan transaksi yang cukup untuk membentuk bundel, ia mengirimkan bundle ke Layer 2, yang kemudian meneruskannya ke mainnet sebagai calldata untuk ketersediaan data.

Proposal penjaga691×642 47.4 KB

Layer2s dengan sequencer bersama

Sebuah pendekatan menarik adalah memiliki beberapa jaringan Layer 2 (L2) yang menjalankan sequencer bersama. Penyiapan ini dapat memberikan perkiraan yang lebih akurat dari mempool, karena sequencer mencapai kesepakatan melalui konsensus yang difasilitasi oleh sequencer bersama.

Dalam konfigurasi ini, jaringan L2 yang berbeda beroperasi secara independen tetapi berbagi sequencer yang sama. Pada interval teratur, jaringan-jaringan ini memeriksa jumlah operasi pengguna (userops) di shared mempool. Sequencer bersama membantu sinkronisasi dan mengumpulkan data dari jaringan-jaringan ini. Setelah mereka mencapai kesepakatan, informasi tersebut dikomunikasikan ke pengguna, memungkinkan mereka untuk membuat penawaran berdasarkan jumlah userops yang tersedia.

Pendekatan ini menawarkan beberapa keuntungan. Pertama, itu menyediakan metode terdesentralisasi untuk menentukan jumlah userops dalam mempool, meningkatkan resistensi terhadap kolusi. Kedua, itu menghilangkan titik kegagalan tunggal yang dapat terjadi jika hanya satu sistem yang mengelola komunikasi antara pengguna dan mempool. Ketiga, sequencer bersama memastikan konsistensi dan mengurangi ketidaksesuaian antara solusi L2 yang berbeda.

Dengan memanfaatkan urutan bersama, metode ini memastikan sistem yang tangguh dan dapat diandalkan untuk memperkirakan dan mengkomunikasikan status mempool kepada pengguna, sehingga meningkatkan efisiensi dan keamanan keseluruhan dari proses tersebut.

Sequencer Bersama764×785 66.3 KB

Dalam dua pendekatan yang dijelaskan dengan menggunakan oracle, ada potensi vektor serangan di mana lawan bisa menghasilkan beberapa operasi pengguna di mempool, mengetahui bahwa operasi tersebut akan dibalik jika digabungkan bersama. Akibatnya, oracle melihat bahwa ada

n

transaksi dan memerlukan bundel besar, tetapi pemberi bundel tidak dapat membuat bundel. Masalah ini bisa membuat jaringan terhenti untuk beberapa blok.

Layer2s mengoperasikan pembundle mereka sendiri

Dalam proposal ini, Layer 2 itu sendiri mengasumsikan peran bundler, sementara entitas lain menangani agregasi tanda tangan (ini bisa menjadi layanan bundler saat ini). Prosesnya bekerja sebagai berikut: Layer 2 mengoperasikan bundler-nya sendiri, dan pengguna mengirim operasi mereka (userops) ke mempool. Layer 2 memilih beberapa userops ini dari mempool dan mengirimkannya "mentah" ke agregator, memberi kompensasi kepada agregator untuk menggabungkan tanda tangan. Setelah agregator menghasilkan bundel, ia mengirimkannya ke bundler, yang kemudian meneruskannya ke mainnet sebagai calldata untuk ketersediaan data.

Idea utama adalah bahwa Layer 2 menangani pengumpulan userops dan kemudian menyumbangkan agregasi ke entitas lain. Layer 2 membayar untuk agregasi dan mengenakan biaya kepada pengguna untuk layanan tersebut.

Ada dua pilihan yang berbeda:

  1. Model Biaya Tetap: Bundler (Sequencer) memilih beberapa transaksi dan mengenakan biaya tetap kepada pengguna. Biaya tetap ini dihitung secara serupa dengan transaksi Layer 2 saat ini, dengan memprediksi biaya publikasi data L1 di masa depan. Atau, Layer 2 dapat mengenakan biaya tetap kepada pengguna berdasarkan biaya penggabungan n.
  2. aggreGated userops, lapisan 2 masih harus memprediksi berapa banyak transaksi yang akan hadir dalam bundel yang akan dia susun untuk menawarkan pengguna dengan benar, ini dapat dilakukan dengan cara yang sama seperti sekarang di mana . Seperti sekarang di mana l2 mengenakan harga kompetitif terbaik kepada pengguna sehingga dalam kepentingan terbaik Lapisan 2 untuk menjaga harga sesuai dengan yang mungkin untuk pengguna.
  3. Biaya Flat671×702 22.1 KB
  4. Meminta Pengembalian Dana: Jika Layer 2 ingin meningkatkan kredibilitasnya, ia dapat mengaktifkan pengembalian dana otomatis. Ini akan melibatkan mekanisme yang memeriksa berapa banyak userop yang dipublikasikan dalam satu blok dan apakah transaksi dapat digabungkan. Jika userop yang dapat digabungkan tidak digabungkan, dan tidak ada pengembalian dana otomatis yang dikeluarkan, pengguna dapat meminta pengembalian dana. Dalam skenario ini, Layer 2 dapat mempertaruhkan beberapa aset, dan jika pengembalian dana tidak disediakan, pengguna dapat menuntut pengembalian dana, memastikan keadilan dan akuntabilitas.
  5. Minta Pengembalian671×702 22.8 KB

Kesimpulan

Dalam dua posting yang berbeda ini, kami menguraikan kesulitan yang dialami pengguna saat membidding untuk dimasukkan ke dalam bundel berikutnya. Pada bagian pertama, kami mempresentasikan model ERC-4337, menjelaskan biaya yang ditanggung oleh bundler saat memposting bundel on-chain dan biaya off-chain yang terkait. Kami juga menguraikan pasar biaya untuk bundler dan memulai pembahasan tentang masalah formatting bundler. Pengguna mengalami kesulitan dalam membidding karena kurangnya pengetahuan tentang jumlah transaksi yang ada di mempool pada saat penggabungan.

Pada bagian kedua, kami menjelaskan ERC-4337 dan RIP-7560. Kami kemudian membahas mengapa agregasi tanda tangan lebih mungkin terjadi pada solusi Layer 2 daripada langsung pada Layer 1. Kami menunjukkan bagaimana solusi Layer 2 dapat mengatasi pengetahuan asimetris yang dialami pengguna dengan berbagai cara. Cara pertama adalah menggunakan orakel untuk memberi sinyal kepada pengguna berapa banyak transaksi yang ada di mempool, dengan pendekatan ini pengguna tahu seberapa besar mereka harus membayar dan dapat memaksa bundler untuk membuat bundel yang lebih besar. Pendekatan ketiga yang paling sederhana adalah bahwa L2 bertindak sebagai bundler dan mengoutsourcing agregasi ke pihak ketiga dan membiarkan pengguna membayar biaya untuk itu.

Penafian:

  1. Artikel ini diperoleh dari [ethresear], Forward Judul Asli 'Pasar biaya tertanam dan ERC-4337 (bagian 2)', Semua hak cipta milik penulis asli [ DavideRezzoli & Barnabé Monnot]. Jika ada keberatan terhadap cetakan ulang ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan cepat.

  2. Penolakan Tanggung Jawab Kewajiban: Pendapat dan pandangan yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan nasihat investasi apa pun.

  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau melakukan plagiarisme terhadap artikel yang diterjemahkan dilarang.

Pasar biaya tertanam dan ERC-4337 (bagian 2)

LanjutanOct 07, 2024
Penelitian ini bertujuan untuk mengeksplorasi metode untuk meningkatkan UX dengan memastikan bahwa pengguna tidak perlu membayar terlalu mahal untuk inklusi pada bundle berikutnya. Sebaliknya, pengguna seharusnya bisa membayar biaya berdasarkan permintaan pasar yang sebenarnya untuk inklusi.
Pasar biaya tertanam dan ERC-4337 (bagian 2)

Pengantar

Dalam artikel sebelumnya post 15, kami memperkenalkan model ERC-4337. Model ini menguraikan struktur pasar biaya untuk bundlers dan rincian fungsi biaya terkait biaya penerbitan on-chain dan biaya penggabungan (agregasi) off-chain dari bundle.

Kami juga memperkenalkan konsep 'Bundler Game'. Game ini akan menjadi fokus utama bagian kedua. Diberikan satu set transaksi, seorang bundler dapat memilih transaksi mana yang akan dimasukkan dalam bundel mereka. Hal ini menciptakan asimetri informasi antara bundler dan pengguna, karena pengguna tidak tahu berapa banyak transaksi yang akan dimasukkan dalam bundel. Hal ini menghasilkan permainan zero-sum di mana pengguna berada dalam kelemahan yang jelas.

Penelitian ini bertujuan untuk mengeksplorasi metode untuk meningkatkan UX dengan memastikan bahwa pengguna tidak perlu membayar terlalu mahal untuk inklusi dalam bundel berikutnya. Sebaliknya, pengguna seharusnya dapat membayar biaya berdasarkan permintaan pasar yang sebenarnya untuk inklusi.

Kondisi saat ini dari ERC-4337

Di pasar saat ini, mempool P2P tidak aktif di mainnet dan sedang diuji di testnet Sepolia. Perusahaan yang membangun di ERC-4337 saat ini beroperasi dalam mode pribadi, pengguna terhubung melalui RPC ke pembungkus pribadi yang kemudian akan bekerja dengan buidler untuk mempublikasikan operasi pengguna Anda di rantai.Aplikasi Bundle Bear 3, dikembangkan oleh Kofi, menyediakan beberapa statistik menarik tentang kondisi saat ini dari ERC-4337.

DiPaket Multi-UserOp Mingguan % Bundel 1dalam metrik ini, kami mengamati persentase bundler yang membuat bundel yang mencakup beberapa userops. Mulai dari awal 2024 hingga Juni 2024, persentase ini tidak pernah melebihi 6,6%. Data ini menjadi lebih menarik ketika mempertimbangkan bahwa banyak bundler menjalankan paymaster mereka sendiri, entitas yang mensponsori transaksi atas nama pengguna. Terutama, dua bundler terbesar yang juga beroperasi sebagai paymaster, dalam hal operasi pengguna yang diterbitkan, disponsori 97% 1dari operasi pengguna menggunakan layanan mereka. Paymaster membayar beberapa bagian dari operasi pengguna dan sisanya dibayar oleh dapps atau lainnya entitas 1.

Pertanyaan yang muncul adalah mengapa pembayaran, dApps, dll., membayar untuk operasi pengguna. Apakah pengguna akan membayar kembali di masa depan? Kami tidak dapat yakin apa yang akan terjadi, tetapi tebakan saya pribadi adalah bahwa saat ini, dApps menutupi biaya untuk meningkatkan penggunaan dan adopsi aplikasi mereka. Setelah adopsi tinggi, pengguna kemungkinan harus membayar untuk transaksi mereka sendiri. Perlu dicatat bahwa untuk pengguna membayar untuk operasi pengguna dengan model saat ini bukanlah pilihan terbaik, karena operasi ERC-4337 dasar membutuhkan biaya sekitar 42.000 gas, sementara transaksi normal membutuhkan biaya sekitar 21.000 gas.

Variasi pada ERC-4337

Ikhtisar ERC-4337

Mempool masih dalam tahap pengujian di Sepolia dan tidak berjalan di mainnet. Tanpa mempool, pengguna memiliki opsi terbatas untuk menggunakan abstraksi akun. Pengguna berinteraksi dengan RPC, yang dapat ditawarkan oleh bundler yang mengikat UserOps, atau dengan layanan RPC yang tidak diikat, mirip dengan layanan seperti Alchemy atau Infura, yang menerima dan menyebarkan transaksi ke bundler lain.

Setelah mempool aktif, aliran transaksi akan menyerupai diagram di bawah ini, yang mirip dengan aliran transaksi saat ini. Mempool meningkatkan ketahanan terhadap sensor karena, tidak seperti model RPC, ia mengurangi kemungkinan transaksi dikeluarkan. Namun, meskipun dengan mempool, masih ada risiko bahwa penyedia RPC mungkin tidak meneruskan transaksi, tetapi model mempool ini sangat menguntungkan bagi pengguna yang lebih suka menjalankan node mereka sendiri, karena hal ini memitigasi risiko tersebut.

Meskipun bundler memiliki potensi untuk berperan sebagai pembangun, kami lebih memilih untuk memisahkan peran-peran tersebut karena persaingan yang ketat. Bundler akan menghadapi persaingan yang signifikan dari pembangun yang sudah ada dan canggih, membuat proses pembangunan menjadi kurang menarik dan berpotensi kurang menguntungkan. Sebagai hasilnya, bundler lebih termotivasi untuk bekerja sama dengan pembangun yang sudah mapan daripada membangun secara independen dan berisiko mengalami kerugian.

Menggabungkan peran bundler dan builder menjadi satu entitas tunggal menyiratkan perubahan signifikan pada sistem saat ini. Bundlers perlu bersaing dengan yang ada pembangun yang canggih, atau alternatifnya, pembangun saat ini perlu melakukan integrasi horizontal dan mengambil peran sebagai penggabung juga. Skenario terakhir, meskipun lebih mungkin terjadi, menimbulkan kekhawatiran tentang konsentrasi pasar dan potensi dampak negatif pada resistensi sensor.

Bundlers dan builders sebagai dua entitas yang berbeda

Dengan pengguna yang terhubung langsung ke RPC, semuanya berjalan di lingkungan yang lebih pribadi, yang tidak membantu persaingan pasar. Di masa depan, mempool akan berada di mainnet meningkatkan persaingan.

Menggunakan mempool, di mana userops bersifat publik kepada bundlers yang berbeda meningkatkan persaingan, dalam kasus abstraksi akun non asli memiliki pemisahan antara bundler dan builder diperlukan, dalam kasus abstraksi akun asli pemisahan mungkin tidak diperlukan karena builder dapat menginterpretasikan userops sebagai transaksi normal.

Ini dapat mengarah ke hasil berikut: Dalam lingkungan yang kompetitif, bundler akan menurunkan harga mereka untuk dipilih oleh pengguna, yang pada gilirannya akan mencari harga terendah untuk inklusi operasi pengguna mereka dalam bundel. Kompetisi ini akan menciptakan sistem di mana bundler yang menawarkan harga terbaik akan dipilih lebih sering daripada bundler yang hanya mencoba memaksimalkan keuntungan mereka dengan membuat bundel yang lebih kecil. Memisahkan peran bundler dan builder juga dapat meningkatkan ketahanan terhadap sensor. Seorang bundler dapat membuat bundel operasi pengguna yang diagregasi dan mengirimkannya ke builder yang berbeda. Jika bundel tersebut mencakup operasi yang dapat disensor, seorang builder yang tidak melakukan sensor dapat menerimanya dan melanjutkan dengan pembangunan. Namun, perlu dicatat bahwa dari perspektif pengguna, pengaturan ini dapat meningkatkan biaya, karena pengenalan bundler menambah pihak tambahan, sehingga menyebabkan biaya yang lebih tinggi.

RIP-7560

Abstraksi akun asli bukanlah konsep baru; telah diteliti selama bertahun-tahun. Sementara ERC-4337 semakin populer, implementasinya di luar protokol menawarkan keuntungan yang berbeda sekaligus kompromi. Terutama, EOAs yang ada tidak dapat beralih secara mulus ke SCW, dan berbagai jenis daftar tahan sensor lebih sulit digunakan. Seperti yang disebutkan sebelumnya, biaya operasional gas userOp meningkat secara signifikan dibandingkan dengan transaksi normal.RIP-7560 2tidak secara inheren akan menyelesaikan masalah yang sedang berlangsung mengenai biaya di luar rantai, tetapi secara substansial mengurangi biaya transaksi. Dari awal ~42000 gas, mungkin biayanya dapat dikurangi sebesar~20000 gas.

Abstraksi Akun Layer2s

Abstraksi akun dapat digunakan dalam solusi Layer 2 (L2). Beberapa L2 sudah mengimplementasikannya secara native, sementara yang lain mengikuti pendekatan L1 dan menunggu proposal baru yang mirip dengan RIP-7560. Di L2, L1 digunakan untuk ketersediaan data untuk mewarisi keamanan, sementara sebagian besar komputasi terjadi di luar rantai di L2, menyediakan transaksi yang lebih murah dan skalabilitas.

Dalam skenario di mana komputasi pada L2 jauh lebih murah daripada biaya calldata untuk ketersediaan data (DA) pada mainchain, penggunaan agregasi tanda tangan terbukti sangat bermanfaat. Sebagai contoh, pasangan untuk BLS pada mainnet difasilitasi oleh 0x08 1prekompilasi dari EVM, yang membutuhkan sekitar ~45000k gas. Akibatnya, menggunakan BLS di L1 lebih mahal daripada transaksi tradisional.

Teknik kompresi pada L2 telah digunakan, seperti kompresi 0-byte, yang mengurangi biaya dari ~188 byte menjadi ~154 byte untuk transfer ERC20. Dengan agregasi tanda tangan, efisiensi kompresi dapat ditingkatkan lebih lanjut dengan menggunakan satu tanda tangan, mengurangi ukuran menjadi ~128 byte.

Di Layer 2, agregasi tanda tangan adalah inovasi penting yang meningkatkan efisiensi transaksi dan efektivitas biaya. Dengan menggabungkan beberapa tanda tangan menjadi satu, muatan data keseluruhan secara signifikan berkurang, yang menurunkan biaya yang terkait dengan ketersediaan data di Layer 1. Kemajuan ini tidak hanya meningkatkan skalabilitas tetapi juga mengurangi biaya transaksi bagi pengguna, sehingga membuat sistem lebih ekonomis dan efisien.

Ekonomi Agregasi Tanda Tangan di Layer2s

Saat menggunakan layanan L2, pengguna akan dikenakan beberapa biaya, termasuk biaya untuk operator L2, biaya berdasarkan kemacetan jaringan, dan biaya ketersediaan data di L1.

Dari penelitian sebelumnya tentang ”Memahami ekonomi rollup dari prinsip-prinsip pertama”, kita dapat menjabarkan biaya yang dihadapi pengguna saat menggunakan layanan L2 sebagai berikut:

Ketika seorang pengguna berinteraksi dengan lapisan 2, dia memiliki beberapa biaya yang dapat kita definisikan sebagai berikut:

  • Biaya pengguna = biaya publikasi data L1 + biaya operator L2 + biaya kemacetan L2
  • Biaya operator = Biaya operator L2 + Biaya publikasi data L1
  • Pendapatan operator = Biaya pengguna + MEV
  • Keuntungan operator = Pendapatan operator - Biaya operator = Biaya kemacetan L2 + MEV

Dalam kasus abstraksi akun non-asli, entitas tambahan, yaitu bundler, dapat memperkenalkan biaya untuk membuat bundel operasi pengguna.

Mengingat bundler, biaya dan keuntungan diperluas sebagai berikut:

  • Biaya pengguna = Biaya publikasi data L1 + Biaya operator L2 + Biaya kemacetan L2 + Biaya Bundler
  • Biaya Bundler = Dikutip (biaya publikasi data L1 + biaya operator L2 + biaya kemacetan L2)
  • Pendapatan Bundler = Biaya Pengguna
  • Keuntungan Bundler = Pendapatan Bundler - Biaya Bundler = Perbedaan antara biaya L1 dan L2 dan harga yang dikutip dari bundler + Biaya Bundler
  • Biaya Operator = Biaya publikasi data L1 + Biaya operator L2
  • Keuntungan operator = Pendapatan operator - Biaya operator = Biaya kemacetan L2 + MEV

Bundler menghasilkan biaya dari pengguna untuk layanan mereka, sementara sisa pembayaran pengguna mencakup biaya operator L2. Jika pengguna tidak menyadari ukuran bundel, memperkirakan biaya sebenarnya untuk mengirimkan userops menjadi sulit, yang berpotensi mengakibatkan bundler menagih biaya yang lebih tinggi dari yang diperlukan untuk menutupi biaya operator.

Incentive Alignment di L2

Interaksi antara bundler dan L2 membantu mengatasi masalah ini, karena L2 diincentivasi untuk menjaga biaya pengguna tetap rendah karena adanya persaingan. Membebankan biaya berlebih kepada pengguna dapat mendorong mereka beralih ke L2 lain yang menawarkan harga lebih adil.

Mari kita mendefinisikan ulang model kami dengan memperkenalkan operator. Pengguna mengajukan penawaran kepada pengumpul untuk dimasukkan dalam blok L2 berikutnya dengan menawarkan nilai V. Pengguna bertujuan untuk meminimalkan biaya penerbitan data, sementara pengumpul mencari untuk memaksimalkan biaya mereka atau mendapatkan kelebihan dari biaya interaksi L2 dan biaya pengguna.

Biaya yang terkait dengan membuat bundel dan mempublikasikannya di rantai dapat dibagi menjadi dua bagian:

Fungsi biaya on-chain: Bundler yang menerbitkan bundel B ketika biaya dasar r mengeluarkan biaya:

Fungsi biaya Agregat: Pemaket memiliki fungsi biaya untuk menggabungkan n transaksi dalam satu bundel B dengan biaya dasar r:

dengan S′F, yang berisi publikasi dan verifikasi dari tanda tangan terkumpul tunggal on-chain.

Jika pengguna dapat memperoleh perkiraan yang dapat diandalkan untuk n, mereka dapat menghitung biaya mereka menggunakan fungsi estimateGas, yang tersedia dalam sebagian besar solusi L2. Memiliki estimasi yang baik dapat membuat pengguna mengajukan penawaran sesuai tanpa harus memperkirakan penawaran mereka untuk inklusi. Fungsi ini menentukan biaya yang diperlukan untuk memastikan inklusi. Memiliki perkiraan yang baik untuk n dan fungsi estimateGas dapat menghindarkan pengguna dari pembayaran preVerificationGas yang lebih tinggi. Pada bagian selanjutnya, kami akan menjelajahi berbagai mekanisme untuk memastikan perkiraan yang dapat diandalkan untuk n.

Layer2s mengoperasikan oracle

Peran oracle adalah untuk memantau mempool dan memperkirakan jumlah transaksi yang ada. Prosesnya bekerja sebagai berikut: Layer 2 menyebarkan oracle untuk memeriksa mempool dan kemudian memberi tahu pengguna tentang jumlah transaksi di mempool. Hal ini memungkinkan pengguna memperkirakan bid mereka untuk disertakan dalam paket. Layer 2 dapat meminta bundler untuk memasukkan setidaknya sejumlah transaksi tertentu (n) dalam satu bundel, atau bundle akan ditolak. Setelah bundler mengumpulkan transaksi yang cukup untuk membentuk bundel, ia mengirimkan bundle ke Layer 2, yang kemudian meneruskannya ke mainnet sebagai calldata untuk ketersediaan data.

Proposal penjaga691×642 47.4 KB

Layer2s dengan sequencer bersama

Sebuah pendekatan menarik adalah memiliki beberapa jaringan Layer 2 (L2) yang menjalankan sequencer bersama. Penyiapan ini dapat memberikan perkiraan yang lebih akurat dari mempool, karena sequencer mencapai kesepakatan melalui konsensus yang difasilitasi oleh sequencer bersama.

Dalam konfigurasi ini, jaringan L2 yang berbeda beroperasi secara independen tetapi berbagi sequencer yang sama. Pada interval teratur, jaringan-jaringan ini memeriksa jumlah operasi pengguna (userops) di shared mempool. Sequencer bersama membantu sinkronisasi dan mengumpulkan data dari jaringan-jaringan ini. Setelah mereka mencapai kesepakatan, informasi tersebut dikomunikasikan ke pengguna, memungkinkan mereka untuk membuat penawaran berdasarkan jumlah userops yang tersedia.

Pendekatan ini menawarkan beberapa keuntungan. Pertama, itu menyediakan metode terdesentralisasi untuk menentukan jumlah userops dalam mempool, meningkatkan resistensi terhadap kolusi. Kedua, itu menghilangkan titik kegagalan tunggal yang dapat terjadi jika hanya satu sistem yang mengelola komunikasi antara pengguna dan mempool. Ketiga, sequencer bersama memastikan konsistensi dan mengurangi ketidaksesuaian antara solusi L2 yang berbeda.

Dengan memanfaatkan urutan bersama, metode ini memastikan sistem yang tangguh dan dapat diandalkan untuk memperkirakan dan mengkomunikasikan status mempool kepada pengguna, sehingga meningkatkan efisiensi dan keamanan keseluruhan dari proses tersebut.

Sequencer Bersama764×785 66.3 KB

Dalam dua pendekatan yang dijelaskan dengan menggunakan oracle, ada potensi vektor serangan di mana lawan bisa menghasilkan beberapa operasi pengguna di mempool, mengetahui bahwa operasi tersebut akan dibalik jika digabungkan bersama. Akibatnya, oracle melihat bahwa ada

n

transaksi dan memerlukan bundel besar, tetapi pemberi bundel tidak dapat membuat bundel. Masalah ini bisa membuat jaringan terhenti untuk beberapa blok.

Layer2s mengoperasikan pembundle mereka sendiri

Dalam proposal ini, Layer 2 itu sendiri mengasumsikan peran bundler, sementara entitas lain menangani agregasi tanda tangan (ini bisa menjadi layanan bundler saat ini). Prosesnya bekerja sebagai berikut: Layer 2 mengoperasikan bundler-nya sendiri, dan pengguna mengirim operasi mereka (userops) ke mempool. Layer 2 memilih beberapa userops ini dari mempool dan mengirimkannya "mentah" ke agregator, memberi kompensasi kepada agregator untuk menggabungkan tanda tangan. Setelah agregator menghasilkan bundel, ia mengirimkannya ke bundler, yang kemudian meneruskannya ke mainnet sebagai calldata untuk ketersediaan data.

Idea utama adalah bahwa Layer 2 menangani pengumpulan userops dan kemudian menyumbangkan agregasi ke entitas lain. Layer 2 membayar untuk agregasi dan mengenakan biaya kepada pengguna untuk layanan tersebut.

Ada dua pilihan yang berbeda:

  1. Model Biaya Tetap: Bundler (Sequencer) memilih beberapa transaksi dan mengenakan biaya tetap kepada pengguna. Biaya tetap ini dihitung secara serupa dengan transaksi Layer 2 saat ini, dengan memprediksi biaya publikasi data L1 di masa depan. Atau, Layer 2 dapat mengenakan biaya tetap kepada pengguna berdasarkan biaya penggabungan n.
  2. aggreGated userops, lapisan 2 masih harus memprediksi berapa banyak transaksi yang akan hadir dalam bundel yang akan dia susun untuk menawarkan pengguna dengan benar, ini dapat dilakukan dengan cara yang sama seperti sekarang di mana . Seperti sekarang di mana l2 mengenakan harga kompetitif terbaik kepada pengguna sehingga dalam kepentingan terbaik Lapisan 2 untuk menjaga harga sesuai dengan yang mungkin untuk pengguna.
  3. Biaya Flat671×702 22.1 KB
  4. Meminta Pengembalian Dana: Jika Layer 2 ingin meningkatkan kredibilitasnya, ia dapat mengaktifkan pengembalian dana otomatis. Ini akan melibatkan mekanisme yang memeriksa berapa banyak userop yang dipublikasikan dalam satu blok dan apakah transaksi dapat digabungkan. Jika userop yang dapat digabungkan tidak digabungkan, dan tidak ada pengembalian dana otomatis yang dikeluarkan, pengguna dapat meminta pengembalian dana. Dalam skenario ini, Layer 2 dapat mempertaruhkan beberapa aset, dan jika pengembalian dana tidak disediakan, pengguna dapat menuntut pengembalian dana, memastikan keadilan dan akuntabilitas.
  5. Minta Pengembalian671×702 22.8 KB

Kesimpulan

Dalam dua posting yang berbeda ini, kami menguraikan kesulitan yang dialami pengguna saat membidding untuk dimasukkan ke dalam bundel berikutnya. Pada bagian pertama, kami mempresentasikan model ERC-4337, menjelaskan biaya yang ditanggung oleh bundler saat memposting bundel on-chain dan biaya off-chain yang terkait. Kami juga menguraikan pasar biaya untuk bundler dan memulai pembahasan tentang masalah formatting bundler. Pengguna mengalami kesulitan dalam membidding karena kurangnya pengetahuan tentang jumlah transaksi yang ada di mempool pada saat penggabungan.

Pada bagian kedua, kami menjelaskan ERC-4337 dan RIP-7560. Kami kemudian membahas mengapa agregasi tanda tangan lebih mungkin terjadi pada solusi Layer 2 daripada langsung pada Layer 1. Kami menunjukkan bagaimana solusi Layer 2 dapat mengatasi pengetahuan asimetris yang dialami pengguna dengan berbagai cara. Cara pertama adalah menggunakan orakel untuk memberi sinyal kepada pengguna berapa banyak transaksi yang ada di mempool, dengan pendekatan ini pengguna tahu seberapa besar mereka harus membayar dan dapat memaksa bundler untuk membuat bundel yang lebih besar. Pendekatan ketiga yang paling sederhana adalah bahwa L2 bertindak sebagai bundler dan mengoutsourcing agregasi ke pihak ketiga dan membiarkan pengguna membayar biaya untuk itu.

Penafian:

  1. Artikel ini diperoleh dari [ethresear], Forward Judul Asli 'Pasar biaya tertanam dan ERC-4337 (bagian 2)', Semua hak cipta milik penulis asli [ DavideRezzoli & Barnabé Monnot]. Jika ada keberatan terhadap cetakan ulang ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan cepat.

  2. Penolakan Tanggung Jawab Kewajiban: Pendapat dan pandangan yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan nasihat investasi apa pun.

  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau melakukan plagiarisme terhadap artikel yang diterjemahkan dilarang.

Mulai Sekarang
Daftar dan dapatkan Voucher
$100
!