Lanjut ke konten utama
Change page

Kanal State

Terakhir diedit: @roifnaufal21(opens in a new tab), 15 Agustus 2023

Kanal state memungkinkan peserta untuk bertransaksi x beberapa kali secara off-chain sementara hanya mengirimkan dua transaksi on-chain ke jaringan Ethereum. Ini memungkinkan throughput yang sangat tinggi.

Prasyarat

Anda harus memiliki pemahaman yang baik tentang semua topik dasar dan pemahaman tingkat tinggi tentang penskalaan Ethereum. Menerapkan solusi penskalaan seperti kanal adalah topik lanjutan karena teknologinya kurang teruji, dan masih terus diteliti dan dikembangkan.

Kanal

Peserta harus mengunci sebagian dari state Ethereum, seperti deposito ETH, ke dalam kontrak multisig. Kontrak multisig adalah jenis kontrak yang memerlukan tanda tangan (dan dengan demikian persetujuan) dari beberapa kunci privat agar bisa dieksekusi.

Mengunci state dengan cara ini adalah transaksi pertama dan membuka kanal. Para peserta kemudian dapat bertransaksi dengan cepat dan bebas secara off-chain. Ketika interaksi selesai, transaksi on-chain terakhir dikirimkan, membuka kunci state.

Berguna untuk:

  • banyak pembaruan state
  • ketika jumlah peserta diketahui di muka
  • ketika peserta selalu tersedia

Ada dua jenis kanal saat ini: kanal state dan kanal pembayaran.

Kanal state

Kanal state mungkin paling baik dijelaskan melalui sebuah contoh, seperti permainan tic tac toe:

  1. Buat kontrak pintar multisig “Hakim” di rantai utama Ethereum yang memahami aturan tic-tac-toe, dan dapat mengidentifikasi Alice dan Bob sebagai dua pemain dalam game kami. Kontrak ini memegang hadiah 1ETH.

  2. Kemudian, Alice dan Bob mulai memainkan permainan, membuka kanal state. Setiap gerakan menciptakan transaksi off-chain yang berisi “nonce”, yang berarti bahwa kita selalu dapat mengetahui nanti dalam urutan apa gerakan itu terjadi.

  3. Ketika ada pemenang, mereka menutup kanal dengan mengirimkan state akhir (misalnya daftar transaksi) ke kontrak Hakim, hanya membayar satu biaya transaksi. Hakim memastikan bahwa “state akhir” ini ditandatangani oleh kedua belah pihak, dan menunggu selama satu periode waktu untuk memastikan bahwa tidak ada yang dapat secara sah menentang hasilnya, dan kemudian membayarkan hadiah 1ETH kepada Alice.

Kanal pembayaran

Kanal state yang disederhanakan yang hanya menangani pembayaran (misalnya transfer ETH). Mereka mengizinkan transfer off-chain antara dua peserta, selama jumlah bersih transfer mereka tidak melebihi token yang didepositokan.

Pro dan kontra

ProKontra
Penarikan/penyelesaian instan di Jaringan Utama (jika kedua pihak pada satu kanal bekerja sama)Waktu dan biaya untuk menyiapkan dan menyelesaikan satu kanal - tidak begitu baik untuk transaksi sesekali antara pengguna yang berwenang.
Throughput yang sangat tinggi dimungkinkanPerlu secara berkala mengawasi jaringan (persyaratan liveness) atau mendelegasikan tanggung jawab ini kepada orang lain untuk memastikan keamanan dana Anda.
Biaya per transaksi terendah - bagus untuk streaming pembayaran mikroHarus mengunci dana di kanal pembayaran terbuka
Tidak mendukung partisipasi terbuka

Gunakan kanal state

Beberapa proyek menyediakan implementasi kanal state yang dapat Anda integrasikan ke dalam dapp Anda:

Bacaan lebih lanjut

Kanal state

Kanal pembayaran

Tahu tentang sumber daya komunitas yang membantu Anda? Edit halaman ini dan tambahkan!

Apakah artikel ini membantu?