School of Information Systems

Fitur Terbaru Pada Decentralised Finance Protocol : Uniswap V2

Uniswap v1 yang merupakan versi pertama sistem smart contract blockchain Ethereum mengimplementasikan protokol likuiditas terautomatisasi berbasis constant product formula. Masing-masing kelompok Uniswap v1 menyimpan token pool dari kedua aset secara bolak balik, mensuport likuiditas dari kedua aset, serta memantau invarian agar produk tidak mengalami penurunan. Trader pada Uniswap v1 membayar biaya 30 basis poin pada saat trading dan sifat kontraknya non-upgradeable.  

Uniswap v2 yang merupakan versi kedua dari protokol ini menerapkan formula yang sama pada Uniswap v1 namun dengan beberapa fitur yang lebih baik dari sebelumnya. Secara signifikan, Uniswap v2 menyediakan fitur untuk membuat kelompok ERC 20/ERC 20 secara bebas sehingga tidak hanya mendukung pembentukan kelompok antara ERC 20 dan ETH seperti pada Uniswap 1. Fitur-fitur baru yang terdapat pada Uniswap v2 lebih lengkapnya adalah sebagai berikut :  

Pembentukan Kelompok ERC-20  

Jika pada Uniswap v1 digunakan ETH sebagai jembatan kripto dan ETH termasuk salah satu aset yang terlibat sehingga rute yang dilalui lebih simpel dan terjadi penurunan fragmentasi likuiditas. Namun hal tersebut menyebabkan adanya kebutuhan biaya yang signifikan pada provider likuiditas karena adanya paparan dari ETH. Dengan Uniswap v2, terdapat fitur bagi likuiditas provider untuk membentuk kontrak kelompok dari dua ERC-20. Poliferasi dari kelompok antara ERC-20 memang membentuk suatu rute yang rumit namun rute nya dapat dikontrol pada layer yang tinggi.  

Ramalan Harga  

Uniswap v1 tidak aman digunakan sebagai peramal harga on-chain, karena sangat mudah dimanipulasi. Misalkan beberapa kontrak lain menggunakan harga ETH-DAI saat ini untuk menyelesaikan turunannya. Penyerang yang ingin memanipulasi harga dapat membeli ETH dari pasangan ETH-DAI, hal memicu penyelesaian pada kontrak derivatif, kemudian ETH dijual kembali ke pasangan ETH-DAI untuk memperdagangkannya kembali ke harga yang sebenarnya. Uniswap v2 meningkatkan fungsi oracle ini dengan mengukur dan mencatat harga sebelum perdagangan pertama setiap blok. Harga ini lebih sulit dimanipulasi daripada harga selama blok. Jika penyerang mengajukan transaksi yang mencoba memanipulasi harga di akhir blok, beberapa arbiter lain mungkin dapat mengajukan transaksi lain untuk segera diperdagangkan kembali di blok yang sama.  

Pertukaran Kilat  

Di Uniswap v1, pengguna yang membeli kelompok ABC dengan XYZ perlu mengirim XYZ ke kontrak sebelum mereka menerima ABC. Hal ini tidak nyaman jika pengguna itu membutuhkan ABC yang mereka beli untuk mendapatkan XYZ yang mereka bayar. Uniswap v2 menambahkan fitur baru yang memungkinkan pengguna untuk menerima dan menggunakan aset sebelum membayarnya, selama mereka melakukan pembayaran dalam transaksi atom yang sama. Fungsi swap melakukan panggilan ke kontrak callback opsional yang ditentukan pengguna di antara mentransfer token yang diminta oleh pengguna dan menegakkan invariant. Setelah callback selesai, kontrak memeriksa saldo baru dan mengkonfirmasi bahwa invariant telah tepat. Jika kontrak tidak memiliki dana yang cukup, maka seluruh transaksi dapat dikembalikan. 

Bebas Biaya Protocol  

Uniswap v2 mencakup biaya protokol 0,05% yang dapat dihidupkan dan dimatikan. Jika dihidupkan, biaya ini akan dikirim ke feeTo pada alamat yang ditentukan dalam kontrak pabrik. Awalnya, feeTo tidak ditetapkan, dan tidak ada biaya yang dikenakan. Alamat yang telah ditentukan sebelumnya dapat memanggil fungsi setFeeTo pada kontrak pabrik Uniswap v2, menetapkan feeTo ke nilai yang berbeda. Jika alamat feeTo ditetapkan, protokol akan mulai mengenakan biaya 5 basis poin, yang diambil sebagai potongan 1/6 dari biaya 30 basis poin yang diperoleh oleh penyedia likuiditas. Artinya, trader akan terus membayar biaya 0,30% pada semua perdagangan; 83,3% dari biaya tersebut akan masuk ke penyedia likuiditas, dan 16,6% dari biaya tersebut (0,05% dari jumlah yang diperdagangkan) akan masuk ke alamat feeTo. 

Meta Transaksi untuk saham pool  

Saham pool yang dicetak oleh pasangan Uniswap v2 mendukung transaksi meta. Ini berarti pengguna dapat mengotorisasi transfer saham pool mereka dengan tanda tangan, bukan transaksi on-chain dari alamat mereka. Siapa pun dapat mengirimkan tanda tangan atas nama pengguna dengan menggunakan fungsi izin, membayar fee gas, dan melakukan tindakan lain dalam transaksi yang sama.

 

Referensi :

Adams, H., Zinsmeister, N. dan Robinson, D. 2020. Uniswap v2 Core. Whitepaper Uniswap  

Richard