Saat permainan sedang berlangsung: Mendesain permainan modular yang kontroversial untuk sistem anti kesalahan OP Stack

Lanjutan12/17/2023, 6:13:44 PM
Kertas ini menganalisis peran permainan sengketa dalam deteksi kesalahan terdesentralisasi dalam ekosistem superchain, dan membahas konstruksi dan potensi permainan sengketa anti-kesalahan. Artikel ini juga mengkaji pentingnya permainan ini dalam deteksi kesalahan dalam sistem anti-kesalahan pertama OP Stack.

Sebuah tinjauan mendalam tentang permainan kontroversial dan perannya dalam deteksi kesalahan pada sistem perbaikan kesalahan pertama OP Stack.

Bukan kebetulan bahwa salah satu komponen paling menarik dari Sistem Fault Proof (FPS) OP Stack adalah permainan kontroversialnya. Artikel sebelumnya tentang FPS menjelaskan bagaimana modularitas tumpukan OP memisahkan program bukti kesalahan (FPP) dari mesin virtual bukti kesalahan (FPVM), memungkinkan tingkat komposabilitas dan upgrade paralel yang efisien dari kedua komponen tersebut. Tidak berlebihan untuk mengatakan bahwa hal ini juga berlaku untuk permainan kontroversial.

Artikel ini mengeksplorasi peran permainan sengketa dalam deteksi kesalahan terdesentralisasi dalam ekosistem superchain, bagaimana membangun permainan sengketa yang bebas kesalahan di atas perjanjian sengketa, dan kemungkinan munculnya permainan semacam itu karena skalabilitas perjanjian sengketa.

Jika Anda ingin informasi lebih lanjut tentang permainan kontroversial ini, baca pos yang lebih detail yang saya bagikan di blog pribadi saya beberapa minggu yang lalu.

Apa itu permainan sengketa?

Permainan sengketa adalah dasar-dasar inti dari perjanjian sengketa. Ini mensimulasikan mesin keadaan yang sederhana, dan untuk setiap informasi yang validitasnya dipertikaikan, itu diinisialisasi dengan janji 32 byte. Informasi ini berisi fungsi untuk menyelesaikan kebenaran atau kebohongan dari janji ini, yang dibiarkan kepada implementasi primitif untuk menentukan. Implementasi permainan kontroversial pertama dari OP Stack, Permainan Kesalahan Defente, tidak dilisensikan karena fungsi resolusinya ditentukan oleh hasil dari program anti-error yang dijalankan di atas mesin virtual simulasi.

Mencari Permainan Penasaran tentang Dua Sifat String:

Permainan kontroversi itu sendiri bergantung pada dua atribut dasar:

  1. Mendorong kompatibilitas: Sistem menghukumklaim palsu dan hadiah klaim yang benar untuk memastikan partisipasi yang adil.
  2. Solusi:Setiap permainan memiliki mekanisme untuk secara eksplisit memvalidasi atau menginvalisasi klaim-klaim dasar.

Dalam perjanjian sengketa, berbagai jenis permainan sengketa dapat diciptakan, dikelola, dan ditingkatkan melalui DisputeGameFactory. Ini membuka pintu untuk fitur inovatif seperti sistem bukti yang terkumpul dan protokol yang diperluas untuk menangani masalah kontroversial di luar status protokol lapisan 2, seperti FaultDefenteGame, yang bertujuan pada verifikasi biner on-chain.

Permainan dua poin

Ini adalah permainan sengketa khusus genre, dan yang pertama dibangun pada perjanjian sengketa OP Stack. Dalam permainan ini, pemain membagi lintasan eksekusi bolak-balik sampai setiap langkah tercapai. Setelah perpecahan mencapai janji keadaan pada setiap instruksi pelacakan,FaultDefenteGamemenggunakan mesin virtual generik untuk menjalankan langkah instruksi tunggal pada rantai. Fungsi transisi state VM (mari kita sebutT ) bisa menjadi fungsi apa pun, selama mengikuti bentuk tersebutT (s, i) - > s',dimana s= keadaan pra-negara yang disepakati,saya = masukan transisi keadaan,s= pos-negara .

Untuk implementasi penuh pertama kami dari VM generik dalam permainan dua, kami mengimplementasikan konteks thread MIPS tunggal di atas EVM untuk menjalankan satu instruksi dalam jejak eksekusi yang dihasilkanolehMeriamdan program op.

pernyataan

Pernyataan menunjukkan komitmen terhadap keadaan komputer virtual backend di bawah instruksi yang diberikan. Ini mungkin asli atau palsu, dan keasliannya ditentukan setelah fase resolusi. Jika tidak ada serangan balik, pernyataan itu dianggap benar. ,

Lokasi

Menyatakan posisi yang ada di pohon biner. Posisi ini menunjukkan instruksi mana yang berkaitan dengan pernyataan tersebut.Posisi adalah indeks umum, yang dapat didefinisikan sebagai 2^ {kedalaman} + indeks_pada_kedalaman.

jam catur

Tindakan pemain terbatas dalam waktu. Permainan ini tidak memerlukan lisensi dan siapa pun dapat bergabung. Setiap sisi dimulai dengan 3,5 hari bermain, untuk total waktu bermain 7 hari. Jika Anda membuat jalur baru atau membuat pernyataan di tempat Anda sudah menerima pernyataan, itu adalah jam catur tingkat kakek.

tindakan

Pemain dibagi menjadi dua hingga keadaan pernyataan hanya untuk satu instruksi VM. Mereka kemudian menjalankan instruksi tersebut on-chain untuk memverifikasi atau memalsukan pernyataan. Tindakan dapat berupa serangan (menantang pernyataan induk) atau pertahanan (setuju dengan pernyataan induk). Setiap kali pemain setuju dengan hash pernyataan yang mereka amati (yang berarti bahwa kedua pihak berada dalam keadaan yang sama di bawah perintah yang diberikan) tetapi tidak setuju dengan hasil akhir yang mereka coba dorong berdasarkan kesepakatan relatif dari pernyataan yang diamati, pernyataan yang mendasarinya digunakan untuk bertahan.

Langkah-langkah perintah

Pada simpul daun dari pohon lokasi, setiap pernyataan mengirim status hanya pada satu instruksi VM. Satu-satunya langkah yang tersisa adalah mengeksekusi instruksi VM untuk membuktikan atau menentang klaim induk.

Jika langkah perintah mengkonfirmasi status posting yang diharapkan, maka pernyataan tersebut tidak berlaku. Jika ada status rilis atau kode keluar yang tidak terduga, klaim induk akan dibantah.

solusi

Jenis permainan ini kemungkinan akan diselesaikan setelah semua jam catur yang dinyatakan habis, dengan periode minimum 3,5 hari.Setiap pernyataan dalam permainan adalah akar dari permainan subnya sendiri (Sub Game).Subgame adalah DAG dengan kedalaman 1. Semua subgame yang menunjuk ke root (yang merupakan akar subgame) adalah penghitungnya, dan subgame hanya dapat dipecahkan jika semua subgame anaknya juga telah diselesaikan. Akar subgame hanya dapat dianggap diserang balik jika satu atau lebih subgame akar subgame telah diselesaikan dan tidak diserang balik, dan atribut ini terus meresap ke pernyataan root permainan.

Kehadiran pemain yang jujur (segera setelah semua tindakan mereka habis) juga selalu menyebabkan permainan berakhir lancar dalam pandangan lintasan, terlepas dari apakah pernyataan yang mendasarinya jujur atau tidak. Pernyataan yang tidak jujur selalu dapat dibantah oleh pihak manapun, meskipun selalu ada hanya satu pernyataan yang benar yang dapat dibuat, karena pengulangan hash deklarasi di tempat yang sama dalam subgame yang sama tidak diperbolehkan.

0:00

Mainkan permainan alfabet dua poin

Bagi siapa pun yang tertarik, ada juga alat visualisasi untuk FaultDefenteGame, yang menargetkan pelacakan eksekusi simulasi dengan hanya 16 instruksi dalam satu langkah. Simulasi ini menggunakan VM terpisah dengan konteks yang berbeda dari utas MIPS, yang disebut AlphabetVM, yang hanya mengembalikan huruf berikutnya dalam alfabet ketika huruf tertentu diberikan sebagai input.

Jika Anda tertarik untuk menjelajahi aturan permainan dengan backend yang lebih ringan, inilah cara bermain:

Kloning monorepo Optimism, menginstal dependensi, dan membuat distribusi devnet / cannon / op-program biner.

Ketergantungan yang diperlukan:

  1. Pabrik
  2. Golang toolchain
  3. Docker
git clone git@github.com: ethereum-optimism/optimism.git & &\\ cd optimism & &\\ pnpm i & &\\ (cd packages/contracts-bedrock & & forge install) & &\\ Make up cannon-prestate & &\\ Make up devnet-allocs

Jalankan permainan alfabet:

CD OP-CHALLENCHER & & MAKE ALPHABET
  1. Buka https://disputify.optimism.io/ atau melalui clone https://github.com/clabby/dispute-viz Jalankan visual front-end secara lokal dan masukkan alamat agen FaultDefenteGame yang dikerahkan ke jaringan pengembangan lokal di atas.

Perjanjian yang dipertikaikan untuk membantu melindungi OP Stack

Dalam permainan dua, semua mekanisme di atas bekerja sama untuk menciptakan sistem yang memberi imbalan pada perilaku jujur dan efektif menangkal klaim yang tidak jujur.

Ada begitu banyak cara untuk membangun permainan kontroversial yang mencapai tujuan yang sama. Kami berharap bahwa ketika FPS OP Stack diterapkan di OP Goerli, para pembangun dalam ekosistem kami akan bersenang-senang dan kreatif dalam membangun permainan kontroversial mereka sendiri. Setiap permainan kontroversial yang dibuat dapat memainkan peran dalam desentralisasi sosial dari OP Stack dan memberikan opsi kepada peserta ekosistem tentang bagaimana menyelesaikan perselisihan atas pernyataan tertentu tentang suatu informasi.

Pernyataan:

  1. Artikel ini telah dicetak ulang dari [oplabs], dan hak cipta dimiliki oleh penulis asli[clabby]. Jika Anda memiliki keberatan terhadap pencetakan ulang, silakan hubungi tim Gate Learn(gatelearn@gate.io),dan tim akan menanganinya sesegera mungkin sesuai dengan prosedur yang relevan.
  2. Penyangkalan: Pandangan dan pendapat yang terungkap dalam artikel ini hanya mewakili opini pribadi penulis dan tidak merupakan saran investasi apa pun.
  3. Artikel dalam bahasa lain diterjemahkan oleh tim Gate Learn, dan artikel yang diterjemahkan mungkin tidak boleh disalin, didistribusikan, atau disalin tanpa menyebutkan Gate.io.

Saat permainan sedang berlangsung: Mendesain permainan modular yang kontroversial untuk sistem anti kesalahan OP Stack

Lanjutan12/17/2023, 6:13:44 PM
Kertas ini menganalisis peran permainan sengketa dalam deteksi kesalahan terdesentralisasi dalam ekosistem superchain, dan membahas konstruksi dan potensi permainan sengketa anti-kesalahan. Artikel ini juga mengkaji pentingnya permainan ini dalam deteksi kesalahan dalam sistem anti-kesalahan pertama OP Stack.

Sebuah tinjauan mendalam tentang permainan kontroversial dan perannya dalam deteksi kesalahan pada sistem perbaikan kesalahan pertama OP Stack.

Bukan kebetulan bahwa salah satu komponen paling menarik dari Sistem Fault Proof (FPS) OP Stack adalah permainan kontroversialnya. Artikel sebelumnya tentang FPS menjelaskan bagaimana modularitas tumpukan OP memisahkan program bukti kesalahan (FPP) dari mesin virtual bukti kesalahan (FPVM), memungkinkan tingkat komposabilitas dan upgrade paralel yang efisien dari kedua komponen tersebut. Tidak berlebihan untuk mengatakan bahwa hal ini juga berlaku untuk permainan kontroversial.

Artikel ini mengeksplorasi peran permainan sengketa dalam deteksi kesalahan terdesentralisasi dalam ekosistem superchain, bagaimana membangun permainan sengketa yang bebas kesalahan di atas perjanjian sengketa, dan kemungkinan munculnya permainan semacam itu karena skalabilitas perjanjian sengketa.

Jika Anda ingin informasi lebih lanjut tentang permainan kontroversial ini, baca pos yang lebih detail yang saya bagikan di blog pribadi saya beberapa minggu yang lalu.

Apa itu permainan sengketa?

Permainan sengketa adalah dasar-dasar inti dari perjanjian sengketa. Ini mensimulasikan mesin keadaan yang sederhana, dan untuk setiap informasi yang validitasnya dipertikaikan, itu diinisialisasi dengan janji 32 byte. Informasi ini berisi fungsi untuk menyelesaikan kebenaran atau kebohongan dari janji ini, yang dibiarkan kepada implementasi primitif untuk menentukan. Implementasi permainan kontroversial pertama dari OP Stack, Permainan Kesalahan Defente, tidak dilisensikan karena fungsi resolusinya ditentukan oleh hasil dari program anti-error yang dijalankan di atas mesin virtual simulasi.

Mencari Permainan Penasaran tentang Dua Sifat String:

Permainan kontroversi itu sendiri bergantung pada dua atribut dasar:

  1. Mendorong kompatibilitas: Sistem menghukumklaim palsu dan hadiah klaim yang benar untuk memastikan partisipasi yang adil.
  2. Solusi:Setiap permainan memiliki mekanisme untuk secara eksplisit memvalidasi atau menginvalisasi klaim-klaim dasar.

Dalam perjanjian sengketa, berbagai jenis permainan sengketa dapat diciptakan, dikelola, dan ditingkatkan melalui DisputeGameFactory. Ini membuka pintu untuk fitur inovatif seperti sistem bukti yang terkumpul dan protokol yang diperluas untuk menangani masalah kontroversial di luar status protokol lapisan 2, seperti FaultDefenteGame, yang bertujuan pada verifikasi biner on-chain.

Permainan dua poin

Ini adalah permainan sengketa khusus genre, dan yang pertama dibangun pada perjanjian sengketa OP Stack. Dalam permainan ini, pemain membagi lintasan eksekusi bolak-balik sampai setiap langkah tercapai. Setelah perpecahan mencapai janji keadaan pada setiap instruksi pelacakan,FaultDefenteGamemenggunakan mesin virtual generik untuk menjalankan langkah instruksi tunggal pada rantai. Fungsi transisi state VM (mari kita sebutT ) bisa menjadi fungsi apa pun, selama mengikuti bentuk tersebutT (s, i) - > s',dimana s= keadaan pra-negara yang disepakati,saya = masukan transisi keadaan,s= pos-negara .

Untuk implementasi penuh pertama kami dari VM generik dalam permainan dua, kami mengimplementasikan konteks thread MIPS tunggal di atas EVM untuk menjalankan satu instruksi dalam jejak eksekusi yang dihasilkanolehMeriamdan program op.

pernyataan

Pernyataan menunjukkan komitmen terhadap keadaan komputer virtual backend di bawah instruksi yang diberikan. Ini mungkin asli atau palsu, dan keasliannya ditentukan setelah fase resolusi. Jika tidak ada serangan balik, pernyataan itu dianggap benar. ,

Lokasi

Menyatakan posisi yang ada di pohon biner. Posisi ini menunjukkan instruksi mana yang berkaitan dengan pernyataan tersebut.Posisi adalah indeks umum, yang dapat didefinisikan sebagai 2^ {kedalaman} + indeks_pada_kedalaman.

jam catur

Tindakan pemain terbatas dalam waktu. Permainan ini tidak memerlukan lisensi dan siapa pun dapat bergabung. Setiap sisi dimulai dengan 3,5 hari bermain, untuk total waktu bermain 7 hari. Jika Anda membuat jalur baru atau membuat pernyataan di tempat Anda sudah menerima pernyataan, itu adalah jam catur tingkat kakek.

tindakan

Pemain dibagi menjadi dua hingga keadaan pernyataan hanya untuk satu instruksi VM. Mereka kemudian menjalankan instruksi tersebut on-chain untuk memverifikasi atau memalsukan pernyataan. Tindakan dapat berupa serangan (menantang pernyataan induk) atau pertahanan (setuju dengan pernyataan induk). Setiap kali pemain setuju dengan hash pernyataan yang mereka amati (yang berarti bahwa kedua pihak berada dalam keadaan yang sama di bawah perintah yang diberikan) tetapi tidak setuju dengan hasil akhir yang mereka coba dorong berdasarkan kesepakatan relatif dari pernyataan yang diamati, pernyataan yang mendasarinya digunakan untuk bertahan.

Langkah-langkah perintah

Pada simpul daun dari pohon lokasi, setiap pernyataan mengirim status hanya pada satu instruksi VM. Satu-satunya langkah yang tersisa adalah mengeksekusi instruksi VM untuk membuktikan atau menentang klaim induk.

Jika langkah perintah mengkonfirmasi status posting yang diharapkan, maka pernyataan tersebut tidak berlaku. Jika ada status rilis atau kode keluar yang tidak terduga, klaim induk akan dibantah.

solusi

Jenis permainan ini kemungkinan akan diselesaikan setelah semua jam catur yang dinyatakan habis, dengan periode minimum 3,5 hari.Setiap pernyataan dalam permainan adalah akar dari permainan subnya sendiri (Sub Game).Subgame adalah DAG dengan kedalaman 1. Semua subgame yang menunjuk ke root (yang merupakan akar subgame) adalah penghitungnya, dan subgame hanya dapat dipecahkan jika semua subgame anaknya juga telah diselesaikan. Akar subgame hanya dapat dianggap diserang balik jika satu atau lebih subgame akar subgame telah diselesaikan dan tidak diserang balik, dan atribut ini terus meresap ke pernyataan root permainan.

Kehadiran pemain yang jujur (segera setelah semua tindakan mereka habis) juga selalu menyebabkan permainan berakhir lancar dalam pandangan lintasan, terlepas dari apakah pernyataan yang mendasarinya jujur atau tidak. Pernyataan yang tidak jujur selalu dapat dibantah oleh pihak manapun, meskipun selalu ada hanya satu pernyataan yang benar yang dapat dibuat, karena pengulangan hash deklarasi di tempat yang sama dalam subgame yang sama tidak diperbolehkan.

0:00

Mainkan permainan alfabet dua poin

Bagi siapa pun yang tertarik, ada juga alat visualisasi untuk FaultDefenteGame, yang menargetkan pelacakan eksekusi simulasi dengan hanya 16 instruksi dalam satu langkah. Simulasi ini menggunakan VM terpisah dengan konteks yang berbeda dari utas MIPS, yang disebut AlphabetVM, yang hanya mengembalikan huruf berikutnya dalam alfabet ketika huruf tertentu diberikan sebagai input.

Jika Anda tertarik untuk menjelajahi aturan permainan dengan backend yang lebih ringan, inilah cara bermain:

Kloning monorepo Optimism, menginstal dependensi, dan membuat distribusi devnet / cannon / op-program biner.

Ketergantungan yang diperlukan:

  1. Pabrik
  2. Golang toolchain
  3. Docker
git clone git@github.com: ethereum-optimism/optimism.git & &\\ cd optimism & &\\ pnpm i & &\\ (cd packages/contracts-bedrock & & forge install) & &\\ Make up cannon-prestate & &\\ Make up devnet-allocs

Jalankan permainan alfabet:

CD OP-CHALLENCHER & & MAKE ALPHABET
  1. Buka https://disputify.optimism.io/ atau melalui clone https://github.com/clabby/dispute-viz Jalankan visual front-end secara lokal dan masukkan alamat agen FaultDefenteGame yang dikerahkan ke jaringan pengembangan lokal di atas.

Perjanjian yang dipertikaikan untuk membantu melindungi OP Stack

Dalam permainan dua, semua mekanisme di atas bekerja sama untuk menciptakan sistem yang memberi imbalan pada perilaku jujur dan efektif menangkal klaim yang tidak jujur.

Ada begitu banyak cara untuk membangun permainan kontroversial yang mencapai tujuan yang sama. Kami berharap bahwa ketika FPS OP Stack diterapkan di OP Goerli, para pembangun dalam ekosistem kami akan bersenang-senang dan kreatif dalam membangun permainan kontroversial mereka sendiri. Setiap permainan kontroversial yang dibuat dapat memainkan peran dalam desentralisasi sosial dari OP Stack dan memberikan opsi kepada peserta ekosistem tentang bagaimana menyelesaikan perselisihan atas pernyataan tertentu tentang suatu informasi.

Pernyataan:

  1. Artikel ini telah dicetak ulang dari [oplabs], dan hak cipta dimiliki oleh penulis asli[clabby]. Jika Anda memiliki keberatan terhadap pencetakan ulang, silakan hubungi tim Gate Learn(gatelearn@gate.io),dan tim akan menanganinya sesegera mungkin sesuai dengan prosedur yang relevan.
  2. Penyangkalan: Pandangan dan pendapat yang terungkap dalam artikel ini hanya mewakili opini pribadi penulis dan tidak merupakan saran investasi apa pun.
  3. Artikel dalam bahasa lain diterjemahkan oleh tim Gate Learn, dan artikel yang diterjemahkan mungkin tidak boleh disalin, didistribusikan, atau disalin tanpa menyebutkan Gate.io.
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!