Rumah > web3.0 > Daripada Uniswap V4 kepada protokol asli Artela, perjalanan lanjutan revolusi DeFi Hooks

Daripada Uniswap V4 kepada protokol asli Artela, perjalanan lanjutan revolusi DeFi Hooks

WBOY
Lepaskan: 2024-04-30 16:40:02
ke hadapan
1139 orang telah melayarinya

Apakah itu Hooks

Hooks, iaitu, Hook Programming, ialah model pengaturcaraan yang membenarkan pembangun menggunakan Hooks, yang merupakan fungsi atau blok kod yang dipratentukan, untuk membolehkan pembangun melaksanakan laluan pelaksanaan sistem, aplikasi atau perpustakaan. Masukkan kod tersuai ke dalamnya tanpa mengubah suai kod asal. Cangkuk sering digunakan dalam banyak persekitaran dan rangka kerja pengaturcaraan, seperti sistem pengendalian, rangka kerja dan perpustakaan, pembangunan web dan sistem pemalam.

Dengan menggunakan Hooks, pembangun boleh meningkatkan kebolehskalaan dan kebolehsesuaian program tanpa perlu mengubah suai kod asal untuk setiap perubahan atau keperluan pengembangan, yang membantu memastikan kod bersih dan stabil. Cangkuk menyediakan kaedah pelaksanaan yang elegan untuk sambungan perisian dan merupakan model pengaturcaraan yang sangat berguna dalam reka bentuk perisian.

Khususnya, AOP (Pengaturcaraan Berorientasikan Aspek) sering dibandingkan dengan pengaturcaraan Hook AOP ialah paradigma pengaturcaraan modular yang melaksanakan kebimbangan silang, dan matlamatnya bukan untuk mengubah Pertingkat atau mengubah suai fungsi utama tanpa logik perniagaan. Saya tidak akan mengembangkan AOP secara terperinci di sini Anda hanya boleh menganggap AOP sebagai abstraksi peringkat tinggi pengaturcaraan HooK.

Uniswap V4: Revolusi Hooks

从Uniswap V4到Artela原生协议,DeFi Hooks 革命的进阶之旅

Pada bulan Jun 2023, Uniswap mengumumkan dan mengumumkan versi draf kertas putih Uniswap V4 Satu ciri penting Uniswap V4 ialah pengenalan Hooks.

Malah, Hooks telah digunakan secara meluas dalam sistem kewangan Web2, kerana sistem ini biasanya memerlukan tahap penyesuaian dan skalabiliti yang tinggi. Senario tersuai, seperti semasa memproses transaksi, gunakan Hooks untuk memasukkan logik pengesahan tambahan sebelum dan selepas pelaksanaan transaksi, seperti pengesahan kedua, pengesanan kawalan risiko dan strategi anti pengubahan wang haram (AML). Senario kebolehskalaan termasuk penyepaduan dengan API luaran atau perkhidmatan mikro melalui Hooks untuk mengembangkan fungsi baharu dalam sistem kewangan, seperti perkhidmatan pengesahan identiti, penukaran kadar pertukaran, gerbang pembayaran, dsb. Tetapi dengan memperkenalkan Hooks ke dalam DeFi, Uniswap telah menetapkan duluan.

Uniswap V4 Hooks pada asasnya ialah kontrak luaran yang dibuat dan ditakrifkan oleh pembangun Apabila kumpulan kecairan dibuat, anda boleh memilih untuk mengikat kontrak Hook. Selepas itu, kumpulan kecairan akan memanggil kontrak Hook yang terikat sebelum ini untuk melaksanakan operasi tertentu pada peringkat kitaran hayat yang berbeza, memberikan tahap penyesuaian yang tinggi. Pembangun boleh memenuhi lebih banyak senario dagangan yang diperibadikan berdasarkan Uniswap's Hooks dan membina DApps dengan fungsi yang lebih kaya, seperti:

  • Yuran Dinamik: Melalui Hooks, kumpulan kecairan boleh melaraskan yuran secara dinamik berdasarkan turun naik pasaran atau parameter input lain, untuk menyesuaikan diri dengan pasaran dengan lebih baik. syarat;
  • On-chain Limit Orders: Hooks boleh membuat dan melaksanakan pesanan had pada rantaian, membolehkan pengguna berdagang pada harga tertentu
  • Time-weighted average Market Maker (TWAMM): Gunakan mekanisme Hooks untuk mencipta kumpulan kecairan; yang menyokong strategi TWAMM untuk mengagihkan urus niaga pesanan besar secara sama rata dalam satu tempoh masa.

Pada masa ini Uniswap V4 menyokong empat kumpulan panggilan balik Hook, setiap kumpulan mengandungi sepasang panggilan balik:

  • sebelum Initialize/afterInitialize: mulakan kumpulan kecairan
  • beforeModifyPosition/afterModify;
  • sebelum Tukar/ afterSwap: pertukaran;
  • beforeDonate/afterDonate: derma (ciri baharu yang diperkenalkan dalam Uniswap V4, pembekal kecairan tip dalam julat transaksi).
Gambar di bawah ialah proses sebelumSwap/afterSwap Hook yang ditunjukkan dalam kertas putih Anda boleh melihat bahawa sebelum dan selepas melaksanakan swap, ia akan menyemak dahulu sama ada Cangkuk yang sepadan bagi kumpulan kecairan mempunyai bendera yang sepadan. Jika ia dihidupkan, Cangkuk akan dipanggil Fungsi kontrak yang sepadan.

从Uniswap V4到Artela原生协议,DeFi Hooks 革命的进阶之旅

Cangkuk ini boleh dilaksanakan sebelum urus niaga bermula dan selepas urus niaga tamat, sekali gus mencapai fungsi yang serupa dengan pesanan harga dalam rantaian. Pengguna membuat pesanan had pada kontrak Hook, dan kemudian menggunakan oracle tersuai atau terurus dalam panggilan balik afterSwap untuk menentukan sama ada harga memenuhi had Jika ia berlaku, urus niaga akan dilaksanakan dibatalkan.

Uniswap V4 sangat mengikat kecairan kepada pembangunan DApp itu sendiri melalui Hooks, mempertingkatkan fungsi DApp sambil turut mempertingkatkan kesan rangkaian Uniswap, menjadikannya infrastruktur asas bagi keseluruhan ekosistem DeFi.

Isu Keselamatan Uniswap V4 Hooks

从Uniswap V4到Artela原生协议,DeFi Hooks 革命的进阶之旅

Pasukan BlockSec telah meneroka risiko keselamatan mekanisme Hooks dalam Uniswap V4 Selain fakta bahawa kontrak Hook itu sendiri berniat jahat, kontrak Hook jinak juga sangat terdedah kelemahan. Pasukan BlockSec menganalisis repositori Awesome Uniswap v4 Hooks (commit hash 3a0a444922f26605ec27a41929f3ced924af6075) dan mendapati bahawa lebih daripada 30% projek dalam repositori terdedah. Kerentanan ini terutamanya berpunca daripada interaksi berisiko antara Hook, PoolManager dan pihak ketiga luaran, dan boleh dibahagikan terutamanya kepada dua kategori:

  • Isu kawalan akses: Kebimbangan utama ialah fungsi panggil balik dalam Uniswap V4 Fungsi ini hanya boleh dipanggil oleh PoolManager dan tidak boleh dipanggil oleh alamat lain (termasuk EOA dan kontrak). Contohnya, dalam kes di mana ganjaran diedarkan oleh kunci kumpulan, ganjaran boleh dituntut secara salah jika fungsi yang sepadan boleh dipanggil oleh mana-mana akaun. Oleh itu, adalah penting untuk mewujudkan mekanisme kawalan akses yang kukuh untuk Hooks, terutamanya kerana ia boleh dipanggil oleh pihak lain selain kumpulan itu sendiri
  • Isu pengesahan input: disebabkan oleh beberapa pelaksanaan Hook yang terdedah Pelbagai jenis serangan akibat daripada pengesahan input yang tidak betul; , termasuk serangan masuk semula yang terkenal. Situasi yang paling biasa ialah kontrak luar yang tidak dipercayai dipanggil dalam beberapa fungsi Hook utama Untuk menyerang Hooks yang terdedah ini, penyerang boleh mendaftarkan kumpulan dana berniat jahat untuk token palsunya sendiri, dan kemudian menghubungi Hook untuk menambah dana ke kumpulan. Pool menjalankan operasi. Apabila berinteraksi dengan kumpulan, logik token berniat jahat merampas aliran kawalan untuk terlibat dalam tingkah laku yang tidak diingini.

Walaupun jika perlu kawalan akses kepada fungsi luaran/awam yang sensitif dilaksanakan dengan betul dan parameter input disahkan, yang mengurangkan risiko keselamatan yang berkaitan dengan dua jenis Cangkuk di atas, kelemahan kontrak itu sendiri tidak dapat dielakkan sepenuhnya, terutamanya jika Cangkuk Jika dilaksanakan sebagai kontrak boleh naik taraf, anda juga mungkin menghadapi isu berkaitan yang serupa dengan kerentanan UUPSUpgradeable OpenZeppelin.

Alasannya ialah pengaturcaraan Hook akan meningkatkan kerumitan kontrak pintar, dengan itu meningkatkan vektor serangan. Untuk kontrak pintar biasa, OpenZeppelin akan mempunyai satu siri perpustakaan amalan terbaik untuk menjadikan kontrak dibangunkan berdasarkannya selamat, tetapi ia pada asasnya menambah "kekangan penggunaan selamat" kepada pembangun. Berbanding dengan kontrak biasa, kontrak Hook memerlukan "kekangan penggunaan keselamatan" yang lebih ketat. Oleh itu, untuk pengaturcaraan Hook digunakan secara meluas, rangka kerja yang komprehensif diperlukan: persekitaran pelaksanaan yang selamat, paradigma pengaturcaraan yang sesuai untuk Hook, dan kekangan penggunaan yang lebih ketat.

Aspek Artela: Sokongan pengaturcaraan di peringkat protokol

从Uniswap V4到Artela原生协议,DeFi Hooks 革命的进阶之旅

Uniswap V4 Hooks dilaksanakan melalui kontrak pintarnya juga disebabkan oleh pengehadan kontrak pintar Adakah terdapat sebarang sokongan daripada peringkat protokol Penyelesaian pengaturcaraan cangkuk? Artela Aspect memberi kita jawapannya!

Artela ialah rangkaian blockchain Layer 1 serasi EVM yang sangat berskala dan berprestasi tinggi yang direka untuk pembangun membina aplikasi modular, kaya dengan ciri, berskala dan boleh disesuaikan. Artela mentakrifkan modul boleh atur cara baharu sebagai sambungan asli yang dipanggil Aspect, yang secara inovatif memperkenalkan AOP ke dalam rangkaian blockchain. Aspect perlu menentukan titik sambungan, iaitu, lokasi di mana Aspect dilaksanakan dalam keseluruhan kitaran hayat pemprosesan transaksi, serupa dengan panggilan balik Hook Titik sambungan termasuk:

  • Block Init: pemulaan blok
  • Pengesahan Transaksi : pengesahan transaksi;
  • Pra Laksana: sebelum pelaksanaan;
  • Aspect pada masa ini hanya menyokong Typescripts, yang kodnya disusun ke dalam kod bait WebAssembly (WASM) dan digunakan ke rangkaian Artela. Selepas Aspect digunakan, pemilik kontrak pintar boleh mengikat kontrak kepada Aspect. Pemilik kontrak pintar bermaksud alamat akaun luarannya (EOA) boleh lulus semakan kontrak pintar isOwner(address) returns (bool).
  • Transaksi seterusnya yang memanggil kontrak pintar kemudiannya akan diproses oleh Aspect, seperti yang ditunjukkan dalam rajah di bawah:

Artela Aspects, sebagai pelaksanaan Hooks peringkat protokol, mempunyai kelebihan yang sangat besar berbanding Uniswap V4 Hooks:

从Uniswap V4到Artela原生协议,DeFi Hooks 革命的进阶之旅Pertama sekali, Artela Aspects Menggunakan WASM untuk melaksanakan kodnya, kecekapan pelaksanaan adalah beberapa urutan magnitud lebih tinggi daripada EVM

Kedua, Artela Aspects boleh mengaitkan keseluruhan kitaran hayat transaksi, bukan hanya logik teras DeFi, dan boleh; membina DApp dengan fungsi yang lebih kaya;

Akhirnya, Artela Aspects juga berfungsi secara bebas dalam persekitaran kotak pasir yang selamat. Pengasingan ini memastikan bahawa pelaksanaan Aspek tidak akan menjejaskan keselamatan pelaksanaan kontrak.

Pengasingan Artela Aspects mengehadkan panggilan bersama antara kontrak Hook sebagai kontrak biasa dan kontrak luaran lain, menyelesaikan masalah sakit kawalan akses Uniswap V4 Hooks dan pengesahan input. Untuk kontrak DeFi seperti Uniswap, anda boleh menikmati pengalaman Hook yang lebih pantas, kukuh dan selamat dengan menggunakan ia ke Artela.

Ringkasan

Sebagai peserta dan peneraju penting dalam industri DeFi, Uniswap telah memainkan peranan penting dalam mempromosikan kemajuan industri dan menambah baik fungsi The Hooks yang diperkenalkan dalam Uniswap V4 kali ini sudah pasti akan menerajui pembangunan DEX oleh pengganti.

Tetapi Uniswap V4 Hooks dihadkan oleh pengehadan kontrak pintar itu sendiri Tidak kira betapa kukuhnya reka bentuk protokol dan seberapa sempurna perpustakaan alat itu, ia tidak dapat menghalang panggilan bersama antara kontrak Hook dan kontrak luaran yang lain kelemahan.

Sebagai rangkaian blockchain Layer 1 yang serasi EVM berprestasi tinggi, Artela telah mereka bentuk Aspect untuk berjalan secara bebas dalam WASM dari awal protokol untuk menyokong pengaturcaraan Hooks secara asli, yang meningkatkan keselamatan dengan banyak. Ini menyediakan penyelesaian lanjutan untuk protokol DeFi yang menganggap keselamatan sebagai kehidupan.

Atas ialah kandungan terperinci Daripada Uniswap V4 kepada protokol asli Artela, perjalanan lanjutan revolusi DeFi Hooks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:panewslab.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan