Penulis: Jaringan Sui

 

Tujuan utama SUI

  • PoS: digunakan untuk berpartisipasi dalam mekanisme bukti kepemilikan yang didelegasikan

  • Mekanisme gas: digunakan untuk membayar transaksi jaringan dan biaya penyimpanan

  • Likuiditas: Menyediakan likuiditas asli on-chain dalam perekonomian Sui

  • Tata Kelola Komunitas: Tata Kelola yang mungkin mempengaruhi masa depan Sui

Proses janji

Q1: Apa yang dimaksud dengan pemangku kepentingan?

Siapa pun yang memiliki alamat Sui dapat melakukan staking dengan melakukan staking SUI ke satu atau lebih node validator pilihan mereka, termasuk validator yang melakukan staking pada SUI atau pemegang SUI pihak ketiga.

Q2: Kemana perginya SUI yang dijanjikan?

Yakinlah mereka terkunci dengan aman di alamat Anda! Tidak seperti solusi staking likuiditas yang ada di jaringan lain, di mana para pemangku kepentingan diharuskan untuk menyerahkan kendali atas token yang mereka pertaruhkan kepada kontrak cerdas staking likuiditas pihak ketiga. Sui mengizinkan pemegang SUI untuk mempertaruhkan SUI mereka langsung ke node verifikasi pilihan sambil tetap mempertahankan kendali penuh atas token yang dijanjikan. Token staking dilindungi oleh lapisan protokol Sui dan tidak terpengaruh oleh kerentanan dalam kontrak pintar pihak ketiga.

Q3: Apa yang dimaksud dengan kumpulan janji?

Setiap node validator Sui memiliki kumpulan stakingnya sendiri untuk melacak jumlah staking dan mengumpulkan hadiah staking. Kumpulan validator beroperasi dengan serangkaian nilai tukar waktu yang dihitung pada setiap batas zaman. Nilai tukar ini menentukan jumlah SUI yang dapat ditarik oleh setiap pemegang SUI di masa depan. Yang penting, semakin banyak hadiah yang disimpan ke dalam kumpulan taruhan, nilai tukar meningkat, dan semakin lama SUI disimpan ke dalam kumpulan taruhan, semakin banyak hadiah yang terakumulasi.

Setiap node validator memiliki rangkaian waktu nilai tukar yang sesuai dengan staking pool spesifiknya, yang disimpan secara on-chain dalam objek staking pool. Dari sudut pandang seorang pemangku kepentingan SUI, nilai kepemilikan mereka dapat dilacak melalui konsensus berikut.

SUI di E’ = (SUI disetorkan di E) * (Nilai tukar di E’ / Nilai tukar di E)

Secara konseptual, staking pool beroperasi persis seperti pool likuiditas. Ketika SUI disimpan ke dalam kumpulan janji pada epoch E, SUI akan diubah menjadi token likuiditas berdasarkan nilai tukar pada epoch E. Saat staking pool menerima hadiah, nilai tukar meningkat. Pada epoch E', token likuiditas ini memiliki nilai lebih tinggi dan dapat dikonversi menjadi lebih banyak SUI.

Satu-satunya perbedaan antara staking pool Sui dan pool likuiditas pada umumnya adalah di Sui, token likuiditas tidak ada. Sebaliknya, tabel nilai tukar global digunakan untuk melacak penghitungan. Salah satu keuntungan dari desain ini adalah karena semua SUI di staking pool adalah identik, terlepas dari apakah SUI tersebut awalnya disimpan sebagai janji baru atau sebagai hadiah staking, semua SUI segera dianggap dijanjikan dan oleh karena itu hadiahnya segera digabungkan.

Staking pool adalah kontrak pintar tingkat sistem (staking_pool.move) dan merupakan bagian dari kerangka Sui.

Q4: Tahapan apa saja yang telah dilalui dalam pengembangan staking SUI?

Staking v1: [desain asli, tidak digunakan lagi]

Desain ini digunakan pada fase kedua testnet, namun kini sudah tidak digunakan lagi, sehingga menghapus dua implementasi utama:

  • Sebelumnya, proses staking dibagi menjadi dua tahap. Pertama, setelah staker menyetorkan SUI, ia segera mendapatkan objek StakedSUI yang berisi SUI yang terkunci. Kedua, di akhir zaman, setelah nilai tukar kumpulan janji diperbarui, pengguna mendapatkan objek Delegasi yang berisi token kumpulan pengguna. Objek Delegasi harus menunggu hingga epoch ditutup karena rate redemption di akhir epoch tidak dapat diketahui sebelumnya dan bergantung pada besaran gas fee yang dikumpulkan sepanjang epoch. Pendekatan ini memerlukan konfigurasi ulang sangat banyak transaksi pada batas zaman, sehingga objek Delegasi telah dihapus di Staking v2 (lihat di bawah).

  • Sebelumnya, ketika penarikan janji dilakukan, janji yang ditarik masuk ke status janji tertunda dan diproses setelah batas epoch ditutup. Alasannya adalah karena hadiah staking untuk epoch saat ini ditentukan sepanjang epoch, tingkat penukaran di akhir epoch tidak dapat diprediksi sepenuhnya saat epoch masih aktif. Oleh karena itu, desain ini perlu menunggu hingga epoch ditutup sebelum memproses pengambilan dengan nilai tukar yang diperbarui. Hal ini tidak lagi terjadi dan pengambilan akan segera diproses berdasarkan nilai tukar periode sebelumnya.

Staking v2: [Desain Mainnet Saat Ini]

Dua perubahan utama adalah:

  • Akuntansi untuk staking pool telah disederhanakan. Seperti sebelumnya, saat pengguna melakukan staking SUI, objek ini digabungkan menjadi objek StakedSUI. Namun, staking pool tidak lagi menerapkan kepemilikan relatif setiap pengguna atas staking pool melalui objek Delegasi. Sebaliknya, akuntansi dilakukan secara langsung melalui stempel waktu objek StakedSUI (yang menentukan titik waktu terjadinya penyetoran) dan perubahan nilai tukar antara masa penyetoran dan masa penarikan. Struktur data setiap staking pool berisi deret waktu nilai tukar untuk pool tersebut. Nilai tukar ini dapat digunakan untuk menentukan penarikan bagi setiap pemangku kepentingan di pool.

  • Penarikan staking akan segera diproses berdasarkan nilai tukar epoch sebelumnya, tanpa menunggu epoch saat ini ditutup. Penarikan mencakup taruhan asli yang disetorkan oleh pengguna dan semua hadiah taruhan yang terakumulasi pada periode sebelumnya. Kerugian dari pendekatan ini adalah bahwa para pemangku kepentingan tidak akan menerima imbalan taruhan mereka dalam periode penarikan. Hingga epoch ditutup, karena tidak ada cara untuk mengetahui sebelumnya berapa banyak hadiah staking yang akan diperoleh selama epoch saat ini, maka hadiah tersebut tidak dapat dimasukkan dalam penarikan. Oleh karena itu, setiap pengguna dapat langsung menarik taruhannya dan menerima:

SUI yang ditarik di E’ = (SUI disetorkan di E) * (Nilai tukar E’-1/Nilai tukar di E)

Staking v3: [Pembaruan Mendatang]

Ini adalah solusi jangka panjang yang pada akhirnya akan diterapkan ke mainnet.

Tantangan utama dengan desain Staking v2 adalah ketidakmampuan untuk menangani periode unbonding (atau cool-down), yang sangat penting untuk keamanan jaringan. Hal ini dicapai dengan memodifikasi cara Sui menangani permintaan pengambilan menjadi dua langkah:

  • Pada transaksi pertama, pemangku kepentingan akan mengajukan permintaan penarikan dan menerima Tanda Terima Penarikan. Saat ini, pemangku kepentingan tidak akan menerima SUI apa pun.

  • Pada transaksi kedua, setelah periode pelepasan ikatan yang dijadwalkan telah berlalu, pemegang saham dapat mengirimkan Tanda Terima Penarikan dan menerima pokok SUI serta akumulasi hadiahnya.

Yang penting, selain mengaktifkan periode tidak mengikat, desain ini juga memungkinkan pengguna untuk menerima hadiah penuh yang menjadi hak mereka setelah mengambil Tanda Terima Penarikan, karena penarikan harus terjadi pada akhir periode saat permintaan pengambilan diajukan. Desain ini tidak mengalami tantangan staking v1 yang menyebabkan transaksi konfigurasi ulang yang sangat besar, karena objek WithdrawalReceipt dapat ditebus kapan saja (setelah periode pelepasan ikatan selesai) dan tidak bergantung pada batasan zaman.

Q5: Kapan permintaan setoran jaminan saya akan berlaku?

Setelah permintaan deposit staking dikirimkan, permintaan tersebut segera memasuki status tertunda di staking pool. Dompet Sui akan mencerminkan permintaan deposit staking yang tertunda ke akun pengguna. Namun, permintaan deposit staking yang tertunda tidak akan berlaku hingga akhir periode saat permintaan dibuat.

Q6: Kapan permintaan unstaking saya akan berlaku?

Setelah diterima, permintaan unstaking atau penarikan akan segera diproses. Staker akan menerima SUI yang awalnya disetorkan ditambah semua hadiah staking yang terakumulasi hingga batas epoch sebelumnya. Dengan kata lain, mereka tidak menyertakan hadiah staking untuk periode saat ini. Lihat Staking v2 untuk detail selengkapnya tentang implementasi ini. Harap diperhatikan bahwa di masa mendatang, setelah staking v3 diterapkan, permintaan unstaking tidak akan langsung diproses.

Q7: Bagaimana cara menghitung nilai tukar setiap kumpulan validator?

Nilai tukar untuk setiap kumpulan validator dihitung pada setiap batas periode sebagai berikut:

Nilai tukar di E+1 = (1 + (Hadiah staking di E/Jumlah taruhan di E)) * (Nilai tukar di E)

Yang penting, imbalan staking yang diperoleh pemangku kepentingan selama epoch E adalah bagian dari total imbalan staking yang diperoleh kumpulan validator dalam epoch tersebut. Dengan kata lain, total imbalan staking yang diperoleh kumpulan validator dapat dibagi menjadi tiga bagian terpisah, bergantung pada siapa yang memperolehnya:

Hadiah staking = hadiah staking + komisi node verifikasi + hadiah dana penyimpanan

Staker SUI reguler hanya menerima hadiah staker. Pada saat yang sama, validator menerima komisi atas imbalan ini (komisi validator) serta imbalan yang dikaitkan dengan dana penyimpanan.

Nilai tukar kumpulan validator hanya diperbarui berdasarkan jumlah hadiah pemangku kepentingan untuk melacak sepenuhnya hadiah yang diperoleh oleh pemegang saham SUI. Namun, metode perhitungan ini juga memungkinkan Sui untuk melacak imbalan yang diperoleh validator dengan memberi mereka komisi validator dan imbalan dana staking dalam bentuk objek StakedSUI tambahan melalui nilai tukar yang diperbarui.

Q8: Apa perbedaan proses staking untuk node validator dibandingkan dengan pemegang SUI pihak ketiga?

Prosesnya sama. Validator yang melakukan staking SUI akan mengikuti proses yang sama seperti pemegang SUI pihak ketiga mana pun yang melakukan staking dengan validator tersebut.

Q9: Apa perbedaan penghitungan hadiah staking untuk node validator dibandingkan dengan staker SUI?

Dalam kumpulan staking validator tertentu, semua pemangku kepentingan menerima proporsi hadiah yang sama melalui apresiasi nilai tukar kumpulan tersebut. Selain itu, karena validator mendapatkan komisi dan imbalan dana staking pada staking yang dikelola, validator menerima objek StakedSUI tambahan di akhir setiap periode sebanding dengan jumlah tersebut.

Mempertaruhkan hadiah

Q1: Dari mana imbalan staking berasal?

Imbalan staking berasal dari biaya gas transaksi yang diperoleh selama epoch saat ini dan tunjangan staking yang dikeluarkan pada akhir epoch.

Hadiah staking = tunjangan staking + biaya bahan bakar

Subsidi staking dirancang untuk mensubsidi tahap awal jaringan dan didanai oleh SUI 10%. Setelah alokasi ini habis, keseluruhan imbalan staking akan terdiri dari biaya gas yang dikumpulkan melalui operasi jaringan reguler.

Q2: Apakah staking akan memberikan bunga majemuk secara otomatis?

Ya! Silakan lihat jawaban "Q3: Apa yang dimaksud dengan kumpulan janji" di atas.

Q3: Berapa banyak hadiah staking yang akan ada di mainnet?

Hadiah staking terdiri dari biaya bahan bakar dan tunjangan staking. Jumlah total yang didistribusikan pada setiap epoch ditentukan sebagai berikut:

  • Staking Allowance: Jumlah yang didistribusikan untuk setiap epoch ditentukan berdasarkan jadwal yang telah ditentukan sebelum epoch dimulai.

  • Biaya bahan bakar: Jumlah setiap epoch bergantung pada total biaya bahan bakar yang diperoleh selama keseluruhan epoch. Setiap transaksi Sui membayar biaya bahan bakar berdasarkan dua variabel, unit bahan bakar yang dieksekusi dan harga bahan bakar:

biaya bahan bakar = harga bahan bakar * satuan bahan bakar

Total biaya bahan bakar yang dikumpulkan sesuai dengan jumlah biaya bahan bakar untuk semua transaksi yang diproses dalam periode tersebut. Dalam kondisi pasar normal, kami memperkirakan harga gas untuk sebagian besar transaksi akan sama dengan harga referensi gas. Di masa depan, Sui akan memperkenalkan mekanisme penetapan harga kemacetan sehingga ketika jaringan sedang padat, harga bahan bakar akan lebih tinggi dari harga bahan bakar referensi karena pengguna akan memberi tip kepada validator sebagai imbalan atas prioritas.

Batas taruhan

Q1: Dapatkah saya membatalkan taruhan sebagian dari taruhan node validator aktif saya?

Ini tidak didukung. Setiap objek StakedSUI sepenuhnya tidak dipertaruhkan atau tidak dipertaruhkan.

Namun, pengguna dapat mempertaruhkan sejumlah objek SUI ke node validator mana pun. Jadi jika mereka melepas sebagian objek SUI dari validator, mereka sebenarnya dapat membatalkan sebagian objek SUI dari validator. Karena objek StakedSUI dapat dipecah menjadi beberapa objek, jika pemegang saham terlebih dahulu membagi objek StakedSUI menjadi beberapa objek dan kemudian membatalkan taruhan beberapa objek, maka pemegang saham selalu dapat secara efektif membatalkan taruhan sebagian objek.

Q2: Berapa jumlah kontribusi minimum untuk satu node verifikasi?

Jumlah taruhan minimum adalah 1 SUI.

Q3: Apa hubungan antara janji simpul verifikasi dan hak suara dalam konsensus?

Berdasarkan konvensi, total hak suara selalu 10.000 berapa pun jumlah yang dipertaruhkan, sehingga ambang batas legalnya adalah 6.667 (rasio 2/3). Hak suara konsensus setiap validator sebanding dengan kepemilikannya, dengan satu pengecualian: hak suara satu validator dibatasi hingga 1.000 (10% dari total hak suara).

Q4: Berapa jumlah kontribusi maksimum untuk satu node verifikasi?

tidak ada batas. Namun, secara konsensus, hak suara dari satu node validator dibatasi hingga 10%. Jika seorang validator mengumpulkan lebih dari 10% total saham, maka hak suara validator tersebut akan tetap sebesar 10% dan sisa hak suara akan disebarkan ke set validator lainnya.

Demikian pula, bagian validator dari hadiah staking akan dihitung menggunakan batas 10% yang sama untuk mengatur jumlah taruhan (lihat Perhitungan Hadiah Staking). Dengan kata lain, setelah validator mengumpulkan lebih dari 10% total staking, imbalan SUI per staking akan mulai berkurang karena staking pool tidak lagi meningkatkan jumlah staking reward yang diterimanya.

Perhitungan hadiah staking

Pengingat hangat: Rumusnya terlalu banyak, jadi bagi yang berminat disarankan untuk membacanya dengan cermat.

Node verifikasi

Q1: Berapa harga referensi gas, dan kapan node verifikasi perlu berpartisipasi?

Sui dirancang agar pengguna akhir dapat mengharapkan harga gas tetap stabil dan dapat diprediksi selama pengoperasian jaringan reguler. Hal ini dicapai dengan memvalidasi node yang menetapkan harga referensi gas jaringan pada awal setiap epoch.

Secara operasional hal ini dilakukan melalui “survei harga gas”.

  • Pada setiap epoch E, setiap validator mengirimkan apa yang mereka yakini sebagai harga referensi bahan bakar terbaik untuk epoch E+1 berikutnya.

  • Pada batas epoch, ketika Sui bertransisi dari epoch E ke epoch E+1, jaringan akan mengamati harga gas di kumpulan node validasi dan akan memberi bobot pada 2/3 sebagai harga referensi gas untuk epoch berikutnya. Oleh karena itu, harga gas referensi untuk setiap epoch adalah konstan sepanjang epoch dan hanya diperbarui ketika epoch berubah.

Proses pengajuan penawaran survei harga gas sangat sederhana. Setiap node validator memiliki objek yang berisi referensi harga bahan bakarnya. Jika node yang memvalidasi ingin mengubah tanda kutipnya, maka mereka cukup memperbarui nilai pada objek ini. Node yang memvalidasi dapat mendelegasikan kemampuan untuk menetapkan penawaran harga gas ke akun lain dengan mentransfer objek kemampuan operasionalnya.

Q2: Seperti apa aturan statistiknya, dan kapan node verifikasi perlu berpartisipasi?

Sui dirancang untuk mendorong dan menegakkan pemantauan komunitas terhadap set validator. Hal ini dicapai melalui aturan statistik, dengan masing-masing validator memantau dan menilai setiap validator lainnya untuk memastikan semua orang beroperasi secara efisien dan dengan mempertimbangkan kepentingan terbaik jaringan. Validator yang tidak patuh akan didenda dan imbalan staking mereka akan dikurangi.

Protokol ini mengatur skor aturan statistik global untuk dihitung hanya pada batas waktu dan oleh karena itu bergantung pada pemantauan aktif oleh validator, mengubah skor mereka ketika perubahan perilaku validator lain terdeteksi. Secara umum, opsi default untuk aturan statistik harus selalu berupa skor 1 untuk semua node yang memvalidasi, dan hanya berubah menjadi 0 jika pengoperasian yang tidak tepat ditentukan. Dalam praktiknya, aturan statistik terdiri dari sekumpulan objek yang dimiliki oleh masing-masing validator yang memiliki skor default 1, sehingga validator biasanya secara pasif hanya memperbarui objek yang sesuai dengan skor validator lain bila diperlukan. Mirip dengan mengirimkan penawaran harga gas, node yang memvalidasi juga dapat mendelegasikan kekuasaannya untuk berpartisipasi dalam aturan statistik ke akun lain dengan mentransfer objek kemampuan operasionalnya.

Q3: Atas dasar apa node verifikasi diberi 0 poin dalam aturan statistik?

Aturan statistik harus dilaksanakan melalui keseimbangan sosial. Kumpulan validator harus secara aktif memantau diri mereka sendiri, dan jika validator jelas-jelas berkinerja buruk, validator lain harus memberikan skor 0 kepada validator tersebut dan memotong imbalannya. Di masa depan, seiring dengan semakin matangnya jaringan Sui, kami mengantisipasi bahwa komunitas akan meluncurkan dasbor publik untuk melacak kinerja node validator dan dapat digunakan sebagai sinyal untuk lebih memahami pengoperasian node validator.

Q4: Bisakah beberapa node verifikasi diberikan 0 poin?

Bisa. Melalui aturan statistik, setiap validator memberikan skor kepada validator lainnya, dan tidak ada batasan berapa banyak 0 atau 1 poin yang dapat diserahkan oleh setiap validator.