EIP-7702 Analisis: Era Baru Abstraksi Akun dan Peningkatan Kemampuan EOA

Mendalami Masa Lalu dan Masa Depan Jalur Abstraksi Akun Ethereum

Artikel ini dibagi menjadi dua bagian besar:

Pertama, dimulai dari proposal AA pertama pada tahun 2015, sistem merangkum isi utama proposal EIP hingga saat ini, meninjau perjalanan proposal AA dalam sejarah, dan mengevaluasi kelebihan dan kekurangan masing-masing solusi.

Kedua, fokus pada perbandingan umpan balik pasar yang lesu setelah EIP4337 diajukan, menganalisis secara mendalam EIP7702 yang akan segera dimasukkan dalam pembaruan Ethereum berikutnya, proposal ini jika digabungkan akan secara menyeluruh mengubah bentuk aplikasi di chain.

EIP-7702 memiliki makna yang revolusioner, mari kita pelajari lebih lanjut.

1. Latar Belakang Abstraksi Akun

1.1 Makna abstraksi akun

Pendiri Ethereum Vitalik pada akhir tahun 2023 kembali memperbarui peta jalan pengembangan ETH, tetapi tidak mengubah posisi abstraksi akun. Model arus utama saat ini sedang bertransisi dari EIP-4337 ke tahap berikutnya yaitu konversi akunnya EOA secara sukarela.

Sejak peluncuran EIP4337 lebih dari setahun yang lalu, ( secara resmi dirilis pada 1 Maret 2023 di WalletCon di Denver, ), telah mendapatkan pengakuan luas dari pengguna tetapi belum banyak digunakan. Dalam keadaan pasar yang bertentangan ini, kemajuan EIP-7702 telah dipercepat secara signifikan dan telah dipastikan akan digabungkan dalam pembaruan berikutnya.

1.2 keadaan pasar abstrak akun

Setelah satu setengah tahun perkembangan, EIP4337 hanya memiliki 12 juta alamat di rantai utama, di mana alamat aktif di jaringan utama Ethereum hanya 6.764, jauh lebih rendah dibandingkan jumlah alamat EOA dan CA. Jumlah alamat independen di jaringan utama Ethereum telah mencapai 270 juta, dapat dikatakan bahwa EIP4337 hampir tidak mengalami perkembangan yang substansial di jaringan utama.

Namun ini tidak mempengaruhi nilai intrinsik AA. Sejak awal, desain EIP4337 sudah ditentukan sulit untuk dengan baik menyelesaikan masalah kompatibilitas maju di jaringan utama. Dengan berbagai jenis L2 yang secara asli mengintegrasikan AA, jumlah alamat EIP4337 di L2 mengalami ledakan, seperti pengguna aktif di rantai Base dan Polygon pada bulan Juli masing-masing mencapai 1 juta dan 3 juta, yang cukup mengesankan.

Oleh karena itu, bukan EIP4337 yang dirancang dengan salah, ia memiliki banyak keunggulan. Situasi saat ini berasal dari perbedaan antara mainnet dan L2, yang masing-masing memerlukan solusi yang sesuai.

Mendalami Masa Lalu dan Masa Depan Jalur Abstraksi Akun Ethereum

2. Apa itu akun abstrak?

Abstraksi akun pada dasarnya adalah solusi untuk masalah pemisahan kepemilikan.

Di dalam mesin virtual Ethereum ( EVM ) terdapat dua jenis akun: akun eksternal ( EOA ) dan akun kontrak ( CA ). Kepemilikan dan hak tanda tangan EOA sebenarnya dimiliki oleh entitas yang sama. Orang yang memiliki kunci pribadi tidak hanya memiliki "kepemilikan akun", tetapi juga berhak untuk "menandatangani pemindahan semua aset".

Ini ditentukan oleh struktur transaksi akun Ethereum. Dalam struktur transaksi standar tidak ada field From, transfer dana dilakukan melalui parameter VRS ( yang ditandatangani oleh pengguna ) untuk mengurai alamat From. Ini menyebabkan kesulitan dalam penggabungan kepemilikan alamat EOA saat ini.

Efek inti dari EIP4337 adalah menambahkan Alamat Pengirim di bidang transaksi, sehingga memisahkan kunci pribadi dari alamat operasi.

Pentingnya pemisahan kepemilikan adalah:

  1. Kunci pribadi sulit untuk dilindungi: kehilangan kunci pribadi berarti kehilangan semua aset.

  2. Algoritma tanda tangan tunggal: Verifikasi transaksi protokol asli hanya dapat menggunakan algoritma ECDSA.

  3. Izin tanda tangan terlalu tinggi: tidak ada multi-tanda tangan asli, tanda tangan tunggal dapat melakukan operasi apa pun.

  4. Biaya transaksi hanya dapat dibayar dengan ETH, tidak mendukung transaksi massal.

  5. Kebocoran privasi transaksi: transaksi satu lawan satu mudah untuk menganalisis informasi pemilik akun.

Kendala ini membuat pengguna biasa sulit untuk menggunakan Ethereum:

  • Menggunakan aplikasi apa pun harus memiliki Ether dan menanggung risiko fluktuasi harga.
  • Perlu menangani logika biaya yang kompleks, harga Gas, batas Gas, dan konsep Nonce terlalu rumit.
  • Meskipun aplikasi dompet mencoba mengoptimalkan pengalaman pengguna, hasilnya terbatas.

Oleh karena itu, jalan untuk memecahkan masalah terletak pada realisasi abstraksi akun, memisahkan kepemilikan (Owner) dan hak tanda tangan (Signer), sehingga secara bertahap menyelesaikan masalah di atas.

Sepanjang sejarah, ada berbagai macam rencana, yang akhirnya berkumpul menjadi dua jalur.

Pendalaman tentang masa lalu dan masa depan jalur abstraksi akun Ethereum

3. Penelusuran Sejarah Usulan AA

Solusi untuk masalah ini tampaknya memiliki banyak proposal EIP, tetapi pada akhirnya hanya ada dua pendekatan inti. Setiap EIP yang tidak disetujui mempertimbangkan masalah yang pada akhirnya terakumulasi dalam solusi yang ada.

3.1 Jalur pertama: Mengubah alamat EOA menjadi alamat CA

Pada 15 November 2015, Vitalik mengajukan struktur baru untuk akun yang menggunakan kontrak dalam EIP-101. Alamat diubah menjadi hanya kode dan ruang penyimpanan, mendukung pembayaran biaya transaksi dengan ERC20, mengubah token asli menjadi jenis ERC20 untuk menyimpan saldo melalui kontrak pra-kompilasi, dan menyederhanakan bidang transaksi hanya menjadi to, startgas, data, dan code.

Ini adalah perubahan besar yang akan mengubah desain dasar secara signifikan, sehingga setiap alamat akun memiliki logika "kode" nya sendiri ( yang juga merupakan efek yang ingin dicapai oleh EIP-7702 sekarang ).

Dapat menghasilkan fungsi lainnya:

  1. Transaksi menggunakan lebih banyak algoritma kripto, metode verifikasi tanda tangan ditentukan oleh Code internal alamat.
  2. Memiliki karakteristik tahan serangan kuantum, karena kode dapat ditingkatkan
  3. Membuat Ether memiliki fungsi yang sama dengan ERC20, seperti otorisasi pemotongan.
  4. Meningkatkan ruang kustomisasi akun, kompatibel dengan pemulihan sosial, dukungan SBT, pemulihan kunci, dll.

Alasan tidak melanjutkan sangat sederhana, jelas langkahnya terlalu besar, perhatian terhadap masalah konflik hash transaksi saat ini dan potensi risiko keamanan tidak cukup, jadi selalu ditangguhkan. Namun, setiap konsep keunggulan menjadi salah satu fungsi inti dari EIP4337 dan EIP7702 yang akan datang.

Kemudian ada serangkaian EIP yang mencoba untuk menyempurnakan logika ini:

EIP-859: Abstraksi Akun Rantai Utama (2018-01-30)

Mencoba menyelesaikan masalah penyebaran kode. Jika kontrak pihak yang bertransaksi belum dideploy, maka gunakan parameter kode yang menyertai transaksi untuk melakukan penyebaran dompet kontrak. Juga diusulkan opcode PAYGAS baru, selain membayar gas, juga sebagai pemisah antara bagian verifikasi dan bagian eksekusi dalam parameter transaksi.

Meskipun saat itu tidak berhasil, tetapi menjadi salah satu logika inti dari EIP7702 saat ini. Setiap transaksi EIP7702 menggabungkan struktur transaksi khusus, dapat menyertakan kode tertentu, memungkinkan alamat EOA memiliki kemampuan kontrak dalam transaksi ini.

EIP-7702: Mengatur kode akun EOA (2024-05-07)

Ini adalah inti dari diskusi lanjutan dalam artikel ini, diusulkan oleh Vitalik sebagai alternatif untuk EIP-3074. EIP-3074 telah ditinggalkan, EIP-7702 telah dipastikan akan dimasukkan dalam hard fork ETH Prague/Electra yang akan datang.

3.2 Rute kedua: membiarkan alamat EOA menggerakkan alamat CA

EIP-3074: menambahkan opcode AUTH dan AUTHCALL (2020-10-15)

Menambahkan dua OpCode baru di EVM: AUTH dan AUTHCALL, memungkinkan EOA untuk memberikan otorisasi kepada kontrak untuk memanggil kontrak lain atas nama identitas EOA.

Secara umum, EOA dapat mengirimkan pesan yang telah ditandatangani ( transaksi ) ke kontrak yang dipercaya sendiri ( yang disebut Invoker ). Kontrak Invoker dapat menggunakan AUTH dan AUTHCALL sebagai pengganti EOA untuk mengeluarkan transaksi.

EIP-4337: Mengimplementasikan abstraksi akun melalui mempool transaksi (2021-09-29)

Dirancang berdasarkan inspirasi MEV, nilai inti adalah sepenuhnya menghindari perubahan protokol lapisan konsensus.

EIP4337 mengusulkan objek transaksi baru yaitu UserOperation, pengguna mengirimkan objek ini ke mempool, yang kemudian dibundel oleh bundlers dari sudut pandang penambang untuk dikemas secara massal dan disampaikan untuk mengeksekusi transaksi kontrak. Secara esensial, ini memindahkan transaksi dasar dan operasi akun ke tingkat kontrak untuk dieksekusi.

EIP-5189: melalui operator penyokong akun abstrak (2022-06-29)

Mengoptimalkan logika EIP4337, dengan membangun mekanisme dukungan penalti dana (endorser) untuk mencegah serangan DoS oleh Bundler yang berniat jahat.

3.3 proposal lain yang mendukung AA

EIP-2718: Pembungkus jenis transaksi baru (2020-06-13)

Proposal yang sudah Final, mendefinisikan jenis transaksi baru sebagai amplop untuk jenis transaksi baru yang akan ditambahkan di masa depan.

Saat memperkenalkan jenis transaksi baru, dibedakan dengan kode tertentu, hanya perlu mendukung kompatibilitas mundur dan tidak perlu mendukung kompatibilitas ke depan. Contoh paling umum adalah EIP1559, yang membedakan biaya transaksi, menggunakan kode jenis transaksi baru, tanpa mempengaruhi jenis transaksi legacy awal.

EIP-3607: Melarang alamat EOA untuk menerapkan kontrak (2021-06-10)

Rencana tambahan di jalur AA, untuk mencegah konflik antara alamat penyebaran kontrak dan alamat EOA. Mengontrol metode pembuatan kontrak, tidak diperbolehkan mengimplementasikan kode ke alamat yang sudah menjadi EOA. Risiko ini sangat kecil, alamat Ethereum memiliki panjang 160 bit, meskipun ada metode untuk menghasilkan kunci pribadi dari alamat kontrak tertentu, tetapi dengan total daya komputasi Bitcoin diperkirakan juga akan memakan waktu satu tahun.

3.4 Bagaimana memahami perkembangan abstraksi akun?

Pertama-tama, perlu memahami nilai setelah diubah menjadi CA.

Pada dasarnya ini adalah efek nyata dari EIP-4337, yang dapat mewujudkan:

  • Pemulihan Sosial
  • transaksi tanpa gas
  • Transaksi massal
  • Pembayaran gas
  • akun terkunci
  • Tanda tangan kustom

Namun, kelemahan utama dari EIP-4337 adalah bertentangan dengan prinsip motivasi manusia.

Tampak lebih baik, tetapi terjebak dalam siklus mati perkembangan pasar: banyak Dapp yang masih tidak kompatibel, pengguna enggan menggunakan alamat CA, menggunakan CA justru memiliki biaya transaksi yang lebih tinggi ( biaya transaksi untuk skenario transfer biasa menjadi dua kali lipat ), terlalu bergantung pada kompatibilitas Dapp itu sendiri.

Jadi hingga saat ini, belum ada penyebaran di jaringan utama Ethereum.

Biaya adalah ukuran yang paling penting bagi pengguna, harus menurunkan biaya.

Untuk benar-benar mengurangi GAS, harus dilakukan upgrade fork lunak pada Ethereum itu sendiri, mengubah perhitungan GAS atau modul konsumsi GAS opcode. Karena harus melakukan fork lunak, lebih baik langsung mempertimbangkan EIP-7702.

Pendalaman tentang masa lalu dan masa depan jalur abstraksi akun Ethereum

4. Analisis Menyeluruh EIP-7702

4.1 Apa itu EIP-7702

Dengan jenis transaksi baru, memungkinkan EOA untuk sementara memiliki fungsi kontrak pintar dalam satu transaksi, mendukung transaksi massal, transaksi tanpa Gas, dan manajemen izin kustom, serta tidak perlu memperkenalkan EVM opCode( yang mempengaruhi kompatibilitas ke depan).

Memungkinkan pengguna untuk mendapatkan sebagian besar kemampuan AA tanpa perlu menerapkan kontrak pintar, bahkan dapat memberikan kemampuan kepada pihak ketiga untuk melakukan transaksi atas nama pengguna, tanpa memerlukan pengguna untuk menyediakan kunci pribadi, hanya perlu menandatangani informasi otorisasi.

4.2 Struktur Data

Mendefinisikan jenis transaksi baru 0x04, TransactionPayload adalah hasil serialisasi RLP dari konten berikut:

rlp([ chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, tujuan, nilai, data, access_list, authorization_list, signature_y_parity, signature_r, signature_s ])

Penting untuk menambahkan objek authorization_list, yang menyimpan kode yang ingin dijalankan oleh penandatangan di EOA mereka. Pengguna menandatangani transaksi sekaligus menandatangani kode kontrak yang akan dijalankan, yang ada dalam bentuk daftar dua dimensi, dapat menyimpan beberapa informasi operasi secara massal, dan melakukan operasi massal.

authorization_list = [[chain_id, address, nonce, y_parity, r, s], ...]

4.3 siklus hidup transaksi

4.3.1 Tahap Verifikasi

Melaksanakan tahap awal transaksi, untuk setiap tuple [chain_id, address, nonce, y_parity, r, s] dari authorization_list:

  1. Menggunakan r dan s dari tanda tangan untuk memulihkan alamat penandatangan menggunakan ecrecover.

  2. Verifikasi Chain ID ( untuk mencegah replay fork chain ).

  3. Verifikasi apakah kode penandatangan authority kosong atau telah mendelegasikan ( untuk memverifikasi apakah transaksi tersebut adalah transaksi valid 7702 ).

  4. Verifikasi nonce authority penandatangan ( untuk mencegah replay tanda tangan authority ).

  5. Atur kode penandatangan authority menjadi 0xef0100 || address( untuk melewati strategi penghindaran tabrakan EIP3607).

  6. Menambahkan nonce authority signer ( untuk mencegah replay tanda tangan lokal ).

  7. Tambahkan akun penandatangan authority ke daftar alamat yang telah diakses ( untuk mengurangi biaya gas penyimpanan kueri ).

4.3.2 Tahap Eksekusi Operasi

"Versi baru" hanya mengubah perilaku penyebaran kode.

Tidak lagi mengatur kode akun sebagai contract_code, melainkan mengambil alamat kode dari authorization_list dan mengatur sebagai kode akun.

Saat mengeksekusi kode otorisasi, muat kode dari bidang address dalam authorization_list yang ditentukan, dan jalankan dalam konteks akun penandatangan.

Kode kontrak pengguna sebenarnya disimpan di alamat tertentu di blockchain, tidak langsung termasuk dalam transaksi.

Perintah operasi dan parameter terkait disimpan di kolom data dari muatan transaksi.

4.4 Nilai EIP-7702

Perubahan terjadi di seluruh rantai untuk dompet Web3, pengalaman pengguna.

ETH-3.07%
GAS3.79%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 4
  • Bagikan
Komentar
0/400
CommunityLurkervip
· 07-16 07:30
Sekali lagi, Blockchain mengubah dunia.
Lihat AsliBalas0
BearHuggervip
· 07-14 19:01
Ini adalah rutinitas harian V God yang melukis BTC.
Lihat AsliBalas0
StableNomadvip
· 07-14 18:40
terasa seperti deja vu dari tahun 2021... eip "terobosan" lain yang mungkin hanya akan memiliki tingkat adopsi 0,001% sejujurnya
Lihat AsliBalas0
rekt_but_not_brokevip
· 07-14 18:34
Ini adalah aa yang selalu dibicarakan oleh v laos.
Lihat AsliBalas0
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)