Evolusi DeFi Hooks: Dari Keamanan Kontrak Uniswap V4 hingga Protokol Asli Artela

Menengah5/21/2024, 3:41:36 PM
Artikel ini menjelaskan konsep model pemrograman Hooks, yang memungkinkan pengembang untuk menyisipkan kode kustom ke dalam jalur eksekusi sistem, aplikasi, atau pustaka melalui fungsi yang telah ditetapkan atau blok kode, meningkatkan skalabilitas dan kustomisasi program. Uniswap V4 memperkenalkan Hooks, melalui fungsi-fungsi seperti biaya dinamis, pesanan batas harga on-chain, dan pembuat pasar rata-rata terperberat waktu dapat diimplementasikan, meningkatkan fungsi DApp dan efek jaringan Uniswap.

Apa Itu Hooks

Hooks, atau Hook Programming, adalah model pemrograman yang memungkinkan pengembang untuk menyisipkan kode kustom ke dalam jalur eksekusi dari suatu sistem, aplikasi, atau perpustakaan melalui Hooks, yang merupakan fungsi atau blok kode yang telah ditentukan sebelumnya. Tidak perlu memodifikasi kode asli. Hooks sering digunakan dalam berbagai lingkungan dan kerangka pemrograman, seperti sistem operasi, kerangka kerja dan perpustakaan, pengembangan web, dan sistem plug-in.

Dengan menggunakan Hooks, pengembang dapat meningkatkan skalabilitas dan customisasi program tanpa harus memodifikasi kode asli untuk setiap perubahan atau kebutuhan perluasan, yang membantu menjaga kode tetap bersih dan stabil. Hooks menyediakan metode implementasi yang elegan untuk ekstensi perangkat lunak dan merupakan model pemrograman yang sangat berguna dalam desain perangkat lunak.

Secara khusus, AOP (Aspect-oriented Programming) sering dibandingkan dengan pemrograman Hook. AOP adalah paradigma pemrograman modular yang mengimplementasikan kekhawatiran cross-cutting, dan tujuannya bukan untuk mengubah logika bisnis utama. Ini meningkatkan atau memodifikasi fungsionalitas jika diperlukan. Saya tidak akan mengembangkan AOP secara detail di sini. Anda dapat dengan mudah menganggap AOP sebagai abstraksi tingkat yang lebih tinggi dari pemrograman HooK.

Uniswap V4: Revolusi Hooks

Pada Juni 2023, Uniswap mengumumkan dan mempublikasikan versi draf dari white paper Uniswap V4. Fitur penting dari Uniswap V4 adalah pengenalan Hooks.

Hooks telah banyak digunakan dalam sistem keuangan Web2, karena sistem-sistem ini biasanya membutuhkan tingkat kustomisasi dan skalabilitas yang tinggi. Skenario yang disesuaikan, seperti saat memproses transaksi, menggunakan Hooks untuk menyisipkan logika verifikasi tambahan sebelum dan setelah eksekusi transaksi, seperti verifikasi sekunder, deteksi kontrol risiko, dan strategi anti pencucian uang (AML). Skenario skalabilitas meliputi mengintegrasikan dengan API eksternal atau mikro layanan melalui Hooks untuk memperluas fungsi-fungsi baru dalam sistem keuangan, seperti layanan otentikasi identitas, konversi kurs, gateway pembayaran, dll. Namun dengan memperkenalkan Hooks ke DeFi, Uniswap telah menetapkan preseden.

Uniswap V4 Hooks pada dasarnya adalah kontrak eksternal yang dibuat dan ditentukan oleh para pengembang. Ketika sebuah kolam likuiditas dibuat, Anda dapat memilih untuk mengikat kontrak Hook. Selanjutnya, kolam likuiditas akan memanggil kontrak Hook yang sebelumnya terikat untuk melakukan operasi yang ditentukan pada berbagai tahap siklus hidup, menyediakan tingkat kustomisasi yang tinggi. Pengembang dapat menggunakan Hook Uniswap untuk memenuhi skenario perdagangan yang lebih personal dan membangun DApps dengan fungsi yang lebih kaya, seperti:

  • Biaya dinamis: Melalui Hooks, kolam likuiditas dapat menyesuaikan biaya secara dinamis berdasarkan volatilitas pasar atau parameter input lainnya untuk lebih baik beradaptasi dengan kondisi pasar;
  • Pesanan Limit On-chain: Hooks dapat membuat dan mengeksekusi pesanan limit di rantai, memungkinkan pengguna untuk melakukan perdagangan pada harga yang ditentukan;
  • Time Weighted Average Market Maker (TWAMM): Memanfaatkan mekanisme Hooks untuk membuat kolam likuiditas yang mendukung strategi TWAMM untuk meratakan transaksi pesanan besar selama beberapa saat.

Saat ini, Uniswap V4 mendukung empat kelompok panggilan Hook, setiap kelompok berisi sepasang panggilan:

  • sebelumInitialize/setelahInitialize: Inisialisasi kolam likuiditas;
  • sebelumModifikasiPosisi/setelahModifikasiPosisi: menambah/mengurangi/menghapus likuiditas;
  • sebelumSwap/setelahSwap: pertukaran;
  • sebelumDonate/setelahDonate: Donasi (fitur baru yang diperkenalkan oleh Uniswap V4, berikan tip kepada penyedia likuiditas dalam cakupan perdagangan).

Diagram berikut menggambarkan proses Hook sebelum/dan setelah Swap seperti yang disajikan dalam whitepaper. Dapat diamati bahwa sebelum dan setelah mengeksekusi swap, pertama-tama memeriksa apakah bendera yang sesuai dari Hook pool likuiditas diaktifkan. Jika diaktifkan, maka akan memanggil fungsi yang sesuai dari kontrak Hook.

Hook ini dapat dieksekusi sebelum perdagangan dimulai dan setelah perdagangan berakhir, memungkinkan fungsionalitas yang mirip dengan pesanan limit on-chain. Pengguna menempatkan pesanan limit pada kontrak Hook, dan kemudian menggunakan oracle kustom atau dikelola dalam panggilan afterSwap untuk menentukan apakah harga memenuhi batas. Jika ya, transaksi akan dieksekusi. Jika tidak, transaksi akan dibatalkan.

Uniswap V4 sangat erat mengikat likuiditas pada pengembangan DApp itu sendiri melalui Hooks. Ini meningkatkan fungsi DApp dan juga meningkatkan efek jaringan Uniswap, menjadikannya infrastruktur dasar dari seluruh ekosistem DeFi.

Masalah Keamanan dari Uniswap V4 Hooks

Tim BlockSec telah mengeksplorasi risiko keamanan dari mekanisme Hooks di Uniswap V4. Selain fakta bahwa kontrak Hook itu sendiri bersifat jahat, kontrak Hook yang baik hati juga sangat rentan terhadap kerentanan. Tim BlockSec menganalisis repositori Awesome Uniswap v4 Hooks (hash komit 3a0a444922f26605ec27a41929f3ced924af6075) dan menemukan bahwa lebih dari 30% proyek di repositori tersebut rentan. Kerentanan ini terutama berasal dari interaksi risiko antara Hook, PoolManager, dan pihak ketiga eksternal, dan dapat dibagi menjadi dua kategori utama:

  • Masalah kontrol akses: Keprihatinan utamanya adalah fungsi panggilan kembali dalam Uniswap V4. Fungsi-fungsi ini seharusnya hanya dipanggil oleh PoolManager dan tidak dapat dipanggil oleh alamat lain (termasuk EOA dan kontrak). Sebagai contoh, dalam kasus di mana imbalan didistribusikan oleh kunci kolam, imbalan dapat diklaim secara tidak benar jika fungsi yang sesuai dapat dipanggil oleh setiap akun. Oleh karena itu, Hooks harus membentuk mekanisme kontrol akses yang kuat, terutama karena mereka dapat dipanggil oleh pihak lain selain kolam itu sendiri;
  • Masukkan pertanyaan verifikasi: Berbagai jenis serangan, termasuk serangan reentrancy yang terkenal, hasil dari validasi input yang tidak tepat dalam beberapa implementasi Hook yang rentan. Situasi paling umum adalah kontrak eksternal yang tidak terpercaya dipanggil dalam beberapa fungsi Hook kunci. Untuk menyerang Hook yang rentan ini, penyerang dapat mendaftarkan dana palsu berbahaya untuk token palsu miliknya sendiri, dan kemudian memanggil Hook untuk menggunakan dana tersebut. Kolam melakukan operasi. Saat berinteraksi dengan kolam, logika token jahat mengambil alih aliran kontrol untuk terlibat dalam perilaku yang tidak diinginkan.

Meskipun kontrol akses yang diperlukan ke fungsi eksternal/publik yang sensitif diimplementasikan dengan benar dan parameter input diverifikasi untuk mengurangi risiko keamanan yang terkait dengan dua jenis Hooks di atas, kerentanan kontrak itu sendiri tidak dapat sepenuhnya dihindari, terutama jika Hook yang dapat ditingkatkan. Jika kontrak diimplementasikan, Anda mungkin juga menghadapi masalah terkait yang mirip dengan kerentanan UUPSUpgradeable milik OpenZeppelin.

Alasannya terletak pada kenyataan bahwa pemrograman Hook meningkatkan kompleksitas kontrak pintar, dengan demikian memperbesar permukaan serangan. Untuk kontrak pintar reguler, OpenZeppelin menyediakan serangkaian perpustakaan praktik terbaik untuk memastikan bahwa kontrak yang dikembangkan berdasarkan itu aman. Namun, pada dasarnya, itu menambahkan "kendala penggunaan keamanan" bagi para pengembang. Dalam perbandingan, kontrak Hook memerlukan "kendala penggunaan keamanan" yang lebih ketat daripada kontrak reguler. Oleh karena itu, agar pemrograman Hook dapat diterapkan secara luas, diperlukan kerangka kerja komprehensif: ini memerlukan lingkungan eksekusi yang aman, paradigma pemrograman yang berlaku untuk Hook, dan kendala penggunaan yang lebih ketat.

Aspek Artela: Dukungan Tingkat Protokol untuk Pemrograman Hook

Hook Uniswap V4 diimplementasikan melalui kontrak pintar, dan isu keamanannya juga disebabkan oleh keterbatasan kontrak pintar. Apakah ada solusi yang mendukung pemrograman Hook dari level protokol? Artela Aspect memberi kita jawabannya!

Artela adalah jaringan blockchain Layer 1 yang sangat dapat diskalakan dan berkinerja tinggi yang kompatibel dengan EVM, dirancang untuk pengembang membangun aplikasi modular, kaya fitur, dapat diskalakan, dan dapat disesuaikan. Artela mendefinisikan modul yang dapat diprogram baru sebagai ekstensi asli yang disebut Aspect, yang secara inovatif memperkenalkan AOP ke dalam jaringan blockchain. Aspect perlu menentukan titik koneksi, yaitu lokasi di mana Aspect dieksekusi dalam siklus hidup pemrosesan transaksi secara keseluruhan. Mirip dengan callback Hook, titik-titik koneksi mencakup:

  • Inisialisasi Blok
  • Verifikasi Transaksi
  • Praproses
  • Post Execute
  • Block Selesai

Aspect saat ini hanya mendukung TypeScript, dan kode-kodenya dikompilasi menjadi bytecode WebAssembly (WASM) dan didistribusikan ke jaringan Artela. Setelah penyebaran Aspect, pemilik kontrak pintar dapat mengikat kontrak mereka dengan Aspect. Pemilik kontrak pintar didefinisikan sebagai alamat akun eksternal (EOA) yang dapat melewati pemeriksaan isOwner(alamat) mengembalikan (bool) dalam kontrak pintar.

Selanjutnya, transaksi berikutnya yang memanggil kontrak pintar akan ditangani oleh Aspect, seperti yang ditunjukkan dalam diagram di bawah ini:

Sebagai implementasi Hooks tingkat protokol, Aspek Artela memiliki keunggulan besar dibandingkan dengan Hooks Uniswap V4:

Pertama, Artela Aspects menggunakan WASM untuk menjalankan kode-kodenya, dan efisiensi eksekusinya beberapa tingkat lebih tinggi daripada EVM;

Kedua, Aspek Artela dapat mengaitkan seluruh siklus hidup transaksi, bukan hanya logika inti dari DeFi, dan dapat membangun DApps dengan fungsi yang lebih kaya;

Akhirnya, dan yang paling penting, Artela Aspects berjalan secara independen dalam lingkungan sandbox yang aman. Isolasi ini memastikan bahwa eksekusi Aspects tidak akan memengaruhi keamanan eksekusi kontrak.

Isolasi Aspek Artela membatasi panggilan saling antara kontrak Hook sebagai kontrak normal dan kontrak eksternal lainnya, menyelesaikan masalah keras kepala tentang kontrol akses dan verifikasi input Uniswap V4 Hooks. Untuk kontrak DeFi seperti Uniswap, Anda dapat menikmati pengalaman Hook yang lebih cepat, lebih kuat, dan lebih aman dengan mendeploynya ke Artela.

Ringkasan

Sebagai peserta dan pemimpin penting dalam industri DeFi, Uniswap telah memainkan peran penting dalam mendorong kemajuan industri dan meningkatkan fungsionalitas. Pengenalan Hooks di Uniswap V4 tanpa ragu menetapkan arah pengembangan DEX dan dengan antusias ditiru oleh para penggantinya.

Namun, Uniswap V4 Hooks terbatas oleh kendala inherent dari kontrak pintar. Terlepas dari seberapa kuat desain protokolnya dan seberapa komprehensif toolkitnya, itu tidak dapat secara fundamental mencegah invokasi saling antara kontrak Hook dan kontrak eksternal, menciptakan potensi kerentanan keamanan.

Artela, sebagai jaringan blockchain Layer 1 yang kompatibel dengan EVM dan berkinerja tinggi, telah merancang Aspect untuk berjalan secara independen dalam WASM sejak awal protokol, dengan dukungan native untuk pemrograman Hook. Ini sangat meningkatkan keamanan, memberikan solusi canggih untuk protokol DeFi yang mempertimbangkan keamanan sebagai hal yang sangat penting.

Pernyataan:

  1. Artikel ini awalnya berjudul "Evolusi Kait DeFi: Dari Keamanan Kontrak Uniswap V4 ke Protokol Asli Arela" direproduksi dari [Web3 Babi]. Semua hak cipta milik penulis asli [web3 Zhu Bold]. Jika Anda keberatan dengan mencetak ulang, silakan hubungi Pintu Belajartim, tim akan menanganinya secepat mungkin.

  2. Penafian: Pandangan dan pendapat yang terdapat dalam artikel ini hanya mewakili pandangan pribadi penulis dan tidak merupakan saran investasi apa pun.

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

Evolusi DeFi Hooks: Dari Keamanan Kontrak Uniswap V4 hingga Protokol Asli Artela

Menengah5/21/2024, 3:41:36 PM
Artikel ini menjelaskan konsep model pemrograman Hooks, yang memungkinkan pengembang untuk menyisipkan kode kustom ke dalam jalur eksekusi sistem, aplikasi, atau pustaka melalui fungsi yang telah ditetapkan atau blok kode, meningkatkan skalabilitas dan kustomisasi program. Uniswap V4 memperkenalkan Hooks, melalui fungsi-fungsi seperti biaya dinamis, pesanan batas harga on-chain, dan pembuat pasar rata-rata terperberat waktu dapat diimplementasikan, meningkatkan fungsi DApp dan efek jaringan Uniswap.

Apa Itu Hooks

Hooks, atau Hook Programming, adalah model pemrograman yang memungkinkan pengembang untuk menyisipkan kode kustom ke dalam jalur eksekusi dari suatu sistem, aplikasi, atau perpustakaan melalui Hooks, yang merupakan fungsi atau blok kode yang telah ditentukan sebelumnya. Tidak perlu memodifikasi kode asli. Hooks sering digunakan dalam berbagai lingkungan dan kerangka pemrograman, seperti sistem operasi, kerangka kerja dan perpustakaan, pengembangan web, dan sistem plug-in.

Dengan menggunakan Hooks, pengembang dapat meningkatkan skalabilitas dan customisasi program tanpa harus memodifikasi kode asli untuk setiap perubahan atau kebutuhan perluasan, yang membantu menjaga kode tetap bersih dan stabil. Hooks menyediakan metode implementasi yang elegan untuk ekstensi perangkat lunak dan merupakan model pemrograman yang sangat berguna dalam desain perangkat lunak.

Secara khusus, AOP (Aspect-oriented Programming) sering dibandingkan dengan pemrograman Hook. AOP adalah paradigma pemrograman modular yang mengimplementasikan kekhawatiran cross-cutting, dan tujuannya bukan untuk mengubah logika bisnis utama. Ini meningkatkan atau memodifikasi fungsionalitas jika diperlukan. Saya tidak akan mengembangkan AOP secara detail di sini. Anda dapat dengan mudah menganggap AOP sebagai abstraksi tingkat yang lebih tinggi dari pemrograman HooK.

Uniswap V4: Revolusi Hooks

Pada Juni 2023, Uniswap mengumumkan dan mempublikasikan versi draf dari white paper Uniswap V4. Fitur penting dari Uniswap V4 adalah pengenalan Hooks.

Hooks telah banyak digunakan dalam sistem keuangan Web2, karena sistem-sistem ini biasanya membutuhkan tingkat kustomisasi dan skalabilitas yang tinggi. Skenario yang disesuaikan, seperti saat memproses transaksi, menggunakan Hooks untuk menyisipkan logika verifikasi tambahan sebelum dan setelah eksekusi transaksi, seperti verifikasi sekunder, deteksi kontrol risiko, dan strategi anti pencucian uang (AML). Skenario skalabilitas meliputi mengintegrasikan dengan API eksternal atau mikro layanan melalui Hooks untuk memperluas fungsi-fungsi baru dalam sistem keuangan, seperti layanan otentikasi identitas, konversi kurs, gateway pembayaran, dll. Namun dengan memperkenalkan Hooks ke DeFi, Uniswap telah menetapkan preseden.

Uniswap V4 Hooks pada dasarnya adalah kontrak eksternal yang dibuat dan ditentukan oleh para pengembang. Ketika sebuah kolam likuiditas dibuat, Anda dapat memilih untuk mengikat kontrak Hook. Selanjutnya, kolam likuiditas akan memanggil kontrak Hook yang sebelumnya terikat untuk melakukan operasi yang ditentukan pada berbagai tahap siklus hidup, menyediakan tingkat kustomisasi yang tinggi. Pengembang dapat menggunakan Hook Uniswap untuk memenuhi skenario perdagangan yang lebih personal dan membangun DApps dengan fungsi yang lebih kaya, seperti:

  • Biaya dinamis: Melalui Hooks, kolam likuiditas dapat menyesuaikan biaya secara dinamis berdasarkan volatilitas pasar atau parameter input lainnya untuk lebih baik beradaptasi dengan kondisi pasar;
  • Pesanan Limit On-chain: Hooks dapat membuat dan mengeksekusi pesanan limit di rantai, memungkinkan pengguna untuk melakukan perdagangan pada harga yang ditentukan;
  • Time Weighted Average Market Maker (TWAMM): Memanfaatkan mekanisme Hooks untuk membuat kolam likuiditas yang mendukung strategi TWAMM untuk meratakan transaksi pesanan besar selama beberapa saat.

Saat ini, Uniswap V4 mendukung empat kelompok panggilan Hook, setiap kelompok berisi sepasang panggilan:

  • sebelumInitialize/setelahInitialize: Inisialisasi kolam likuiditas;
  • sebelumModifikasiPosisi/setelahModifikasiPosisi: menambah/mengurangi/menghapus likuiditas;
  • sebelumSwap/setelahSwap: pertukaran;
  • sebelumDonate/setelahDonate: Donasi (fitur baru yang diperkenalkan oleh Uniswap V4, berikan tip kepada penyedia likuiditas dalam cakupan perdagangan).

Diagram berikut menggambarkan proses Hook sebelum/dan setelah Swap seperti yang disajikan dalam whitepaper. Dapat diamati bahwa sebelum dan setelah mengeksekusi swap, pertama-tama memeriksa apakah bendera yang sesuai dari Hook pool likuiditas diaktifkan. Jika diaktifkan, maka akan memanggil fungsi yang sesuai dari kontrak Hook.

Hook ini dapat dieksekusi sebelum perdagangan dimulai dan setelah perdagangan berakhir, memungkinkan fungsionalitas yang mirip dengan pesanan limit on-chain. Pengguna menempatkan pesanan limit pada kontrak Hook, dan kemudian menggunakan oracle kustom atau dikelola dalam panggilan afterSwap untuk menentukan apakah harga memenuhi batas. Jika ya, transaksi akan dieksekusi. Jika tidak, transaksi akan dibatalkan.

Uniswap V4 sangat erat mengikat likuiditas pada pengembangan DApp itu sendiri melalui Hooks. Ini meningkatkan fungsi DApp dan juga meningkatkan efek jaringan Uniswap, menjadikannya infrastruktur dasar dari seluruh ekosistem DeFi.

Masalah Keamanan dari Uniswap V4 Hooks

Tim BlockSec telah mengeksplorasi risiko keamanan dari mekanisme Hooks di Uniswap V4. Selain fakta bahwa kontrak Hook itu sendiri bersifat jahat, kontrak Hook yang baik hati juga sangat rentan terhadap kerentanan. Tim BlockSec menganalisis repositori Awesome Uniswap v4 Hooks (hash komit 3a0a444922f26605ec27a41929f3ced924af6075) dan menemukan bahwa lebih dari 30% proyek di repositori tersebut rentan. Kerentanan ini terutama berasal dari interaksi risiko antara Hook, PoolManager, dan pihak ketiga eksternal, dan dapat dibagi menjadi dua kategori utama:

  • Masalah kontrol akses: Keprihatinan utamanya adalah fungsi panggilan kembali dalam Uniswap V4. Fungsi-fungsi ini seharusnya hanya dipanggil oleh PoolManager dan tidak dapat dipanggil oleh alamat lain (termasuk EOA dan kontrak). Sebagai contoh, dalam kasus di mana imbalan didistribusikan oleh kunci kolam, imbalan dapat diklaim secara tidak benar jika fungsi yang sesuai dapat dipanggil oleh setiap akun. Oleh karena itu, Hooks harus membentuk mekanisme kontrol akses yang kuat, terutama karena mereka dapat dipanggil oleh pihak lain selain kolam itu sendiri;
  • Masukkan pertanyaan verifikasi: Berbagai jenis serangan, termasuk serangan reentrancy yang terkenal, hasil dari validasi input yang tidak tepat dalam beberapa implementasi Hook yang rentan. Situasi paling umum adalah kontrak eksternal yang tidak terpercaya dipanggil dalam beberapa fungsi Hook kunci. Untuk menyerang Hook yang rentan ini, penyerang dapat mendaftarkan dana palsu berbahaya untuk token palsu miliknya sendiri, dan kemudian memanggil Hook untuk menggunakan dana tersebut. Kolam melakukan operasi. Saat berinteraksi dengan kolam, logika token jahat mengambil alih aliran kontrol untuk terlibat dalam perilaku yang tidak diinginkan.

Meskipun kontrol akses yang diperlukan ke fungsi eksternal/publik yang sensitif diimplementasikan dengan benar dan parameter input diverifikasi untuk mengurangi risiko keamanan yang terkait dengan dua jenis Hooks di atas, kerentanan kontrak itu sendiri tidak dapat sepenuhnya dihindari, terutama jika Hook yang dapat ditingkatkan. Jika kontrak diimplementasikan, Anda mungkin juga menghadapi masalah terkait yang mirip dengan kerentanan UUPSUpgradeable milik OpenZeppelin.

Alasannya terletak pada kenyataan bahwa pemrograman Hook meningkatkan kompleksitas kontrak pintar, dengan demikian memperbesar permukaan serangan. Untuk kontrak pintar reguler, OpenZeppelin menyediakan serangkaian perpustakaan praktik terbaik untuk memastikan bahwa kontrak yang dikembangkan berdasarkan itu aman. Namun, pada dasarnya, itu menambahkan "kendala penggunaan keamanan" bagi para pengembang. Dalam perbandingan, kontrak Hook memerlukan "kendala penggunaan keamanan" yang lebih ketat daripada kontrak reguler. Oleh karena itu, agar pemrograman Hook dapat diterapkan secara luas, diperlukan kerangka kerja komprehensif: ini memerlukan lingkungan eksekusi yang aman, paradigma pemrograman yang berlaku untuk Hook, dan kendala penggunaan yang lebih ketat.

Aspek Artela: Dukungan Tingkat Protokol untuk Pemrograman Hook

Hook Uniswap V4 diimplementasikan melalui kontrak pintar, dan isu keamanannya juga disebabkan oleh keterbatasan kontrak pintar. Apakah ada solusi yang mendukung pemrograman Hook dari level protokol? Artela Aspect memberi kita jawabannya!

Artela adalah jaringan blockchain Layer 1 yang sangat dapat diskalakan dan berkinerja tinggi yang kompatibel dengan EVM, dirancang untuk pengembang membangun aplikasi modular, kaya fitur, dapat diskalakan, dan dapat disesuaikan. Artela mendefinisikan modul yang dapat diprogram baru sebagai ekstensi asli yang disebut Aspect, yang secara inovatif memperkenalkan AOP ke dalam jaringan blockchain. Aspect perlu menentukan titik koneksi, yaitu lokasi di mana Aspect dieksekusi dalam siklus hidup pemrosesan transaksi secara keseluruhan. Mirip dengan callback Hook, titik-titik koneksi mencakup:

  • Inisialisasi Blok
  • Verifikasi Transaksi
  • Praproses
  • Post Execute
  • Block Selesai

Aspect saat ini hanya mendukung TypeScript, dan kode-kodenya dikompilasi menjadi bytecode WebAssembly (WASM) dan didistribusikan ke jaringan Artela. Setelah penyebaran Aspect, pemilik kontrak pintar dapat mengikat kontrak mereka dengan Aspect. Pemilik kontrak pintar didefinisikan sebagai alamat akun eksternal (EOA) yang dapat melewati pemeriksaan isOwner(alamat) mengembalikan (bool) dalam kontrak pintar.

Selanjutnya, transaksi berikutnya yang memanggil kontrak pintar akan ditangani oleh Aspect, seperti yang ditunjukkan dalam diagram di bawah ini:

Sebagai implementasi Hooks tingkat protokol, Aspek Artela memiliki keunggulan besar dibandingkan dengan Hooks Uniswap V4:

Pertama, Artela Aspects menggunakan WASM untuk menjalankan kode-kodenya, dan efisiensi eksekusinya beberapa tingkat lebih tinggi daripada EVM;

Kedua, Aspek Artela dapat mengaitkan seluruh siklus hidup transaksi, bukan hanya logika inti dari DeFi, dan dapat membangun DApps dengan fungsi yang lebih kaya;

Akhirnya, dan yang paling penting, Artela Aspects berjalan secara independen dalam lingkungan sandbox yang aman. Isolasi ini memastikan bahwa eksekusi Aspects tidak akan memengaruhi keamanan eksekusi kontrak.

Isolasi Aspek Artela membatasi panggilan saling antara kontrak Hook sebagai kontrak normal dan kontrak eksternal lainnya, menyelesaikan masalah keras kepala tentang kontrol akses dan verifikasi input Uniswap V4 Hooks. Untuk kontrak DeFi seperti Uniswap, Anda dapat menikmati pengalaman Hook yang lebih cepat, lebih kuat, dan lebih aman dengan mendeploynya ke Artela.

Ringkasan

Sebagai peserta dan pemimpin penting dalam industri DeFi, Uniswap telah memainkan peran penting dalam mendorong kemajuan industri dan meningkatkan fungsionalitas. Pengenalan Hooks di Uniswap V4 tanpa ragu menetapkan arah pengembangan DEX dan dengan antusias ditiru oleh para penggantinya.

Namun, Uniswap V4 Hooks terbatas oleh kendala inherent dari kontrak pintar. Terlepas dari seberapa kuat desain protokolnya dan seberapa komprehensif toolkitnya, itu tidak dapat secara fundamental mencegah invokasi saling antara kontrak Hook dan kontrak eksternal, menciptakan potensi kerentanan keamanan.

Artela, sebagai jaringan blockchain Layer 1 yang kompatibel dengan EVM dan berkinerja tinggi, telah merancang Aspect untuk berjalan secara independen dalam WASM sejak awal protokol, dengan dukungan native untuk pemrograman Hook. Ini sangat meningkatkan keamanan, memberikan solusi canggih untuk protokol DeFi yang mempertimbangkan keamanan sebagai hal yang sangat penting.

Pernyataan:

  1. Artikel ini awalnya berjudul "Evolusi Kait DeFi: Dari Keamanan Kontrak Uniswap V4 ke Protokol Asli Arela" direproduksi dari [Web3 Babi]. Semua hak cipta milik penulis asli [web3 Zhu Bold]. Jika Anda keberatan dengan mencetak ulang, silakan hubungi Pintu Belajartim, tim akan menanganinya secepat mungkin.

  2. Penafian: Pandangan dan pendapat yang terdapat dalam artikel ini hanya mewakili pandangan pribadi penulis dan tidak merupakan saran investasi apa pun.

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

เริ่มตอนนี้
สมัครและรับรางวัล
$100