Nothing At Stake: kompromi dengan hati nurani

Sangat singkat tentang diri Anda.


Suatu ketika di Habré, mereka menulis tentang saya di artikel ini , namun, sebagian dari pemirsa yang tertarik dengan teknologi blockchain hampir pasti akrab dengan pekerjaan saya melalui proyek Monero, di mana basis kode asli (CryptoNote) dikembangkan terutama oleh upaya saya (ini dikonfirmasi khususnya nama belakang saya di sumber). 7 tahun terakhir bagi saya telah dikaitkan secara eksklusif dengan pengembangan di bidang ini, dan ada pemikiran yang ingin saya bagikan.

Ingin tahu mengapa proyek PoW akan padam?


Mungkin akan ada napas skeptis sekarang, dan seseorang akan memutar mata sama sekali. Tidak ada yang bisa dilakukan, di mana pun mereka menulis bahwa tajuk "dengan tantangan" akan membuat Anda membaca setidaknya awal artikel (yang menarik, apakah berhasil?).

Dalam percakapan baru-baru ini dengan redaksi media kripto Rusia, saya menemukan bahwa kritik terhadap PoW yang sudah ada di tingkat bawah sadar dianggap oleh banyak orang sebagai bid'ah. Dan ketika sampai pada kesulitan praktis, misalnya, untuk proyek blockchain pemula yang kecil dengan PoW murni, peluang untuk menolak serangan 51% agak lemah, saya mendengar bahwa PoW (perhatian) hanya untuk proyek besar!
Diskusi tanpa akhir (dan, seperti yang Anda tahu, Internet adalah tempat untuk komentar yang rasional dan bijaksana) tentang topik "PoW vs PoS" mengarah pada fakta bahwa polarisasi komunitas cryptocurrency hampir bersifat religius.
Dalam artikel ini, saya akan menjelaskan mengapa Tidak ada yang dipertaruhkan dianggap sebagai tumit Achilles dari PoS, dan kemudian saya akan menunjukkan mengapa hal ini tidak terjadi.

Munculnya PoS


Sejarah PoS kembali ke 2011, ketika bitcointalk tua yang baik mulai mengekspresikan ide-ide konsensus berdasarkan suara "pemegang" (bukan penambang), dan memicu minat pada mereka pada waktu itu pembakaran listrik yang tidak berguna selama penambangan PoW.
Implementasi pertama adalah PeerCoin [9], yang, ternyata kemudian, juga memiliki sejumlah kelemahan khas untuk PoS. Tetapi rubrik itu berlalu, dan pemahaman bertahap terhadap paradigma baru dimulai.
Saat ini ada sejumlah besar proyek yang satu atau lain cara menggunakan salah satu varietas model PoS (DPoS, LPOS, POI, PoA, dll.). Terlepas dari kenyataan bahwa semua algoritma ini memiliki nama mereka sendiri, dari sudut pandang penulis, ini terutama variasi pada topik PoS. Di akhir artikel kita akan melihat secara singkat pada beberapa contoh yang menarik justru dalam konteks masalah yang diangkat.

Tidak ada masalah yang dipertaruhkan dalam sistem PoS


Hampir setiap model PoS dikritik karena rentan terhadap apa yang disebut sebagai masalah “Nothing at stake”. Gagasan serangan ini terkait dengan fenomena yang dikenal sebagai "Tragedi bersama" [1]. Secara umum, "Tragedi sumber daya bersama" digambarkan sebagai serangkaian fenomena di mana kepentingan individu dapat bertentangan dengan kebaikan bersama, dan sebagai contoh paling sederhana diberikan oleh padang rumput umum, penggunaan yang tidak rasional yang oleh mayoritas menyebabkan penipisan sumber daya ini secara keseluruhan. Dengan cara yang sama, proyek blockchain yang sewenang-wenang dapat dipertimbangkan di mana kemungkinan menambang dan menerima hadiah tersirat sebagai manfaat bagi publik.
Tidak seperti PoW, di mana penambangan adalah proses yang mahal secara komputasi dan dapat dilakukan secara bersamaan dalam kaitannya dengan satu rantai saja, di penambangan PoS tidak ada biaya / upaya tambahan (signifikan) untuk memilih dalam rantai alternatif, dengan kata lain, tambang juga merupakan rantai kedua , Penambang PoS tidak kehilangan apapun (Tidak ada yang dipertaruhkan). Jelas, perangkat lunak proyek secara default tidak akan memfasilitasi serangan 51% dengan menambang rantai yang tersedia, tetapi teori permainan (dan ini bukan tentang Dota, tetapi tentang apa yang ditulis John Nash) menunjukkan bahwa jika minat individu akan menentukan strategi yang berbeda, penambang PoS teoritis memodifikasi kode sesuai, mengikuti strategi ini.
Misalnya, pertimbangkan proyek blockchain bersyarat dengan POS dan dengan sudah mengeluarkan 18 juta koin, di mana semua koin didistribusikan di antara 1800.000 pemegang di bagian yang sama (10 koin untuk masing-masing pemegang). Beberapa pemegang (mungkin semua) berpartisipasi dalam penambangan PoS, jadi setiap kali sebuah blok dibuat, salah satu dari 1800.000 pemilik melakukannya.
Misalkan seseorang memutuskan untuk memulai serangan 51% dan memutuskan untuk menyuap para penambang untuk mengambil bagian dalam menambang rantai jahat (misalnya, rantai yang melakukan pengeluaran ganda untuk kepentingan penyerang), memotivasi mereka bahwa orang yang menemukan blok menerima peningkatan upah (suap).
Klarifikasi *: Penting untuk ditekankan di sini bahwa bagi seorang penyerang, strategi suap yang paling menguntungkan secara ekonomi adalah suap dalam bentuk pemberian hadiah tambahan untuk blok di rantai altnya, sehingga ia tidak perlu menyuap setiap penambang secara individu, dan biaya serangan dikurangi menjadi jumlah hadiah untuk blok di rantai altnya (6 blok, misalnya).
Diyakini bahwa serangan itu akan berhasil jika penambang berhasil memotivasi 51% dari penambang PoS untuk berpartisipasi dalam serangan itu, dan karena penambang tidak secara komputasional menambang sejumlah rantai, dianggap bahwa mereka mudah (murah) untuk memotivasi untuk berpartisipasi dalam serangan itu.

Studi kasus


Tidak mungkin untuk menganggap teori permainan tidak ada yang dipertaruhkan, tanpa mempertimbangkan bahwa penambang PoS adalah pemegang, dan, dari sudut pandang kepentingan pribadi, juga tertarik untuk mempertahankan / meningkatkan harga koin. Biaya koin terdiri dari sejumlah besar faktor, tetapi kondisi langsung untuk keberadaan likuiditas adalah kemampuan aktual jaringan untuk melakukan fungsi langsungnya - untuk melakukan pembayaran dengan aman (di sini kita berbicara tentang proyek-proyek blockchain aktual, bukan token), dan jika jaringan dikompromikan oleh pengeluaran ganda melalui serangan 51 %, konsekuensinya bisa paling fatal - dimulai dengan jatuhnya nilai tukar yang serius dan berakhir dengan penghapusan dari bursa, yang terutama menderita dari serangan tersebut.
Dengan demikian, jika jaringan beralih ke rantai jahat, penambang PoS yang disuap hanya berisiko nilai setara koinnya. Mirip dengan "Tragedi Sumber Daya Bersama," rata-rata penambang PoS termotivasi oleh keuntungan pribadi lebih dari kepedulian terhadap keamanan jaringan. Jika keuntungannya sendiri (dalam kasus ketika ia memenangkan blok dalam rantai alternatif jahat) lebih besar daripada potensi kerugiannya (mis. Lebih dari 10 koin), maka penambang masih akan memiliki motivasi untuk bergabung dengan serangan.

Sekarang mari kita lihat keadaan praktis dan, yang paling penting, membandingkannya dengan sistem PoW klasik. Biarkan saya mengingatkan Anda bahwa contoh di atas menggambarkan mata uang yang tidak realistis dengan distribusi yang sepenuhnya seragam, yang tidak ditemukan dalam kehidupan nyata.
Beberapa kali saya mendengar pendapat yang menarik bahwa cryptocurrency, yang merupakan sistem keuangan tipikal, memiliki model yang sama dengan distribusi kekayaan global [2] (Gbr. Di Bawah), dan diduga perilaku pasar cryptocurrency menegaskan hal ini.

gambar


Untuk kira-kira mengevaluasi sifat distribusi koin, sebagai contoh, ambil proyek terbesar dengan ekosistem yang paling berkembang dan jumlah pemegang terbesar - Bitcoin. Untungnya, model privasi memungkinkan Anda melakukan ini tanpa banyak kesulitan. Tabel di bawah ini diambil dari [3] dan mencerminkan distribusi koin saat ini di alamat yang ada di blockchain.

gambar


*: Bitcoin , Bitcoin , - [4], , . , , , , « ».
**: , , PoS, , , .

Untuk menjaga ketidakberpihakan, kami tidak akan beroperasi dengan kata Bitcoin dalam analisis serangan 51%, yang akan dijelaskan di bawah. Ini akan salah karena sejumlah alasan obyektif: Bitcoin adalah proyek yang unik, dan ada dalam realitas teknologi yang sedikit berbeda (hampir tidak mungkin untuk menemukan hashrate tambahan untuk pemain sebesar itu, sulit untuk menyuap penambang ASIC karena kekhususan peralatan mereka, dll.). Kami akan menganalisis lebih lanjut aspek teknologi impersonal.
Sekarang mari kita kembali ke tabel 1 dan berasumsi bahwa kita memiliki dua proyek terpisah tetapi identik dengan distribusi koin yang sama persis - proyek PoS dan proyek PoW, yang akan kita coba serang.

PoS


Seperti yang kami temukan di atas, untuk memotivasi penambang PoS dengan suap, itu harus setidaknya setara dengan nilai koin yang dimiliki penambang. Jika kita menetapkan ukuran suap, misalnya, menjadi 0,01 koin, kami hanya mencakup pemilik dompet untuk baris pertama dan kedua (0,15% dari semua koin), untuk sisanya motivasi tidak akan cukup. Jika Anda bertambah menjadi 1 koin, maka kami sudah mencakup 4 baris, dan ini adalah 4,57% - itu masih sangat kecil. Untuk mendapatkan 51%, kita harus sampai ke garis dengan saldo 100-1000 koin. Suap 100 koin hanya akan mencakup 38,44% dari koin, dan 1000 koin akan mencakup sebanyak 58,29%, jadi kami percaya dengan mata - suap dari 750 koin dapat meyakinkan 51% penambang untuk mengambil bagian dalam serangan itu.

Pw


Katakanlah hadiah untuk blok saat ini adalah 12,5 koin, dan, secara kasar, ekstraksi 6 blok (jumlah konfirmasi secara default) tidak boleh lebih dari 75 koin (nilai setara koin ini, dalam hal nilai hashrate). Ini sangat penting - pada kenyataannya, biaya serangan 51% adalah 75 koin (76 jika penting bagi seseorang). Ini bukan masalah sebelumnya, pada hari-hari ketika para penambang sendiri mengatur rig mereka untuk menambang proyek tertentu, karena mereka menyukainya atau karena peralatan mereka bekerja paling efektif dengan hash ini. Tidak ada tempat untuk mengambil kapasitas bebas yang mampu menyalip rantai utama. Dan sekarang peralatan tersedia secara bebas untuk disewa di area terbuka (layanan seperti www.nicehash.com, sesuatu seperti uber di dunia pertambangan), dan ini membuat serangan 51% pada proyek PoW setidaknya 10, 10 kali lebih murah daripada serangan pada proyek serupa dengan PoS. Kamu bisa jadi gila!

Tapi kami belum selesai, ada beberapa poin lagi:
1. Dalam proyek PoS nyata, sebagai aturan, hanya sebagian dari koin yang diterbitkan terlibat dalam penambangan, dan merupakan karakteristik bahwa untuk pemegang minoritas, penambangan PoS tidak menguntungkan karena probabilitas rendah untuk menemukan blok terhadap biaya listrik, sehingga pada kenyataannya sebagian besar daya PoS dibuat pemegang sedang dan relatif besar, yang membuat serangan lebih sulit, seperti dijelaskan di atas. Selain itu, kami mengambil distribusi koin untuk proyek terbesar dan paling masif, dan untuk proyek tipikal di seratus pasar koin pertama, distribusi akan semakin mempersulit serangan penyuapan, belum lagi start-up blockchain awal, yang mungkin Anda rencanakan untuk dilakukan akhir pekan ini.
2. ASIC. Pendapat berpisah di kamp PoW: kebanyakan menganggapnya jahat dan menciptakan hash yang harus bekerja paling efisien pada peralatan massa (ProgPoW, RandomX). Lawan mereka tidak memaksakan dan menggunakan hash cepat-tahan kripto (sha256, sha3, blake), mengklaim bahwa ASIC, meskipun sentralisasi, tetapi pada kenyataannya - perlindungan dari 51%. Dan dengan latar belakang pertimbangan di atas, yang terakhir terlihat bahkan lebih layak, tetapi hanya sampai saat ketika perangkat ASIC tiba-tiba mendapatkan kemampuan untuk menambang bukan satu, tetapi beberapa hash terkait. Tapi tunggu, mereka sudah mendapatkan kemampuan ini (misalnya, Giant + A2000). Dan satu lagi nuansa penting harus diperhitungkan - dari saat proyek diluncurkan sampai ASIC pertama muncul di pasar untuk dijual, ini bisa memakan banyak waktu, dan selama ini proyek akan sangat rentan.
3. Serangan Nothing At Stake adalah serangan murni teoretis dengan banyak asumsi. Sebagai contoh, prasyarat adalah asumsi bahwa penyerang memiliki saluran komunikasi langsung dengan semua pemegang yang ia ingin suap untuk mengatur serangan ini. Ini agak realistis, pertama. Kedua, hampir tidak dapat dirahasiakan dari bursa itu sendiri, yang akan dapat mengambil langkah-langkah untuk melindungi diri dari hal ini (misalnya, untuk sementara menangguhkan deposito atau menambah jumlah konfirmasi ke jumlah yang tidak memadai). Ketika kita berbicara tentang serangan 51% terhadap PoW, ini adalah skenario praktis yang sangat linier, yang, secara kebetulan, telah dilakukan lebih dari sekali, baru-baru ini di sini, misalnya, pada Ethereum Classic [11] [12].

Cara Memperkuat Konsensus


Seperti disebutkan di atas, masalah Nothing at stake adalah murni teoretis, dan tidak menemukan konfirmasi mengenai serangan yang dilakukan berdasarkan kerentanan ini, namun, jika setelah membaca di atas tampaknya masalah tersebut sama sekali tidak relevan, maka ini tidak begitu. Masalahnya ada, meskipun pada tingkat yang berbeda sehubungan dengan PoW, dan upaya yang cukup besar dilakukan untuk menyelesaikannya. Di antara solusi yang ada, saya mengidentifikasi dua bidang utama, yang akan saya bicarakan secara singkat.

Solusi Toleransi Kesalahan Bizantium


Algoritma BFT telah dipelajari selama sekitar 30 tahun, dan ada dasar ilmiah yang baik yang membuktikan keandalan algoritma keluarga ini, termasuk pBFT (keandalan disediakan jika jumlah peserta konsensus yang tidak jujur ​​dalam sistem tidak melebihi sepertiga). Ada beberapa proyek yang menggunakan pendekatan ini untuk menerapkan atau memperkuat konsensus, dan sebagian besar dari mereka mengklaim bahwa dalam hubungan ini mereka mendapatkan properti yang disebut "finalitas", yang dapat diterjemahkan sebagai "finalitas". Dimengerti sebagai ketidakmungkinan untuk membangun kembali rantai (dan, karenanya, membatalkan transaksi) setelah sejumlah konfirmasi. Izinkan saya mengingatkan Anda bahwa dalam konsensus klasik Nakamoto, beralih ke sub-rantai lain dapat terjadi pada kedalaman apa pun (tetapi tidak lebih dalam dari pemeriksaan titik jelas), dan oleh karena itubahkan setelah beberapa kali konfirmasi, tidak ada jaminan 100% bahwa transaksi tidak akan dibatalkan.

Pertimbangkan esensi dari pendekatan ini menggunakan contoh teknologi Casper , yang sedang dikembangkan oleh tim Ethereum [5].
Klarifikasi ***: Faktanya, ada dua model PoS dalam ethereum - satu ditulis oleh Vlad Zamfir "Sebuah Templat untuk protokol konsensus yang dibangun dengan benar" dan yang kedua ditulis oleh Vitalik Buterin dan Virgil Griffith "Casper the Friendly Finality Gadget". Pada artikel ini kita akan mempertimbangkan opsi terakhir, karena kemungkinan besar akan digunakan dalam Ethereum.
Casper diposisikan sebagai peningkatan pada model konsensus, yang berpotensi berlaku untuk sistem PoW, dan secara arsitektur merupakan tambahan bagi PoW. Gagasan dasarnya adalah bahwa sekali setiap 100 blok, sekelompok validator PoS secara dinamis menghasilkan pos pemeriksaan. Untuk menjadi validator, Anda perlu membuat setoran khusus yang terkait dengan alamat validator, dan di masa depan setoran ini dapat digunakan untuk merangsang perilaku jujur ​​validator (lebih lanjut tentang ini di bawah ini). Algoritma ini aman selama ⅔ dari validator berperilaku jujur, sedangkan ⅔ ditentukan dengan tepat berdasarkan jumlah uang yang disimpan.
Untuk mendorong validator untuk melakukan perilaku yang jujur, digunakan mekanisme yang disebut "Slasher" - jika diketahui bahwa validator memberikan suara dalam rantai alternatif (alternatif yang dianggap sama tingginya), maka dia yang mencatat ini dapat melampirkan bukti pemungutan suara semacam itu di rantai, dan kemudian deposit validator tidak jujur ​​akan dihancurkan, komisi motivasi yang sesuai akan dibayarkan kepada mereka yang menemukan "pelanggaran". Selain itu, diasumsikan bahwa jika pengguna terdaftar sebagai validator PoS dengan melakukan setoran yang sesuai, tetapi tidak benar-benar berpartisipasi dalam validasi, maka setorannya secara bertahap berkurang.
Dengan demikian, dari sudut pandang protokol Casper, setelah dua pos pemeriksaan, blok memiliki properti "finalitas", mis. jika ⅔ validator dua kali dikonfirmasi oleh pos pemeriksaan dalam rantai, maka blok di bawah pos pemeriksaan tidak dapat dibatalkan.
Bagian yang meragukan dalam model semacam itu, dari sudut pandang penulis, adalah bahwa set validator PoS terbatas pada angka terbatas. Jelas, jumlah semacam itu akan menjadi semacam kompromi antara ukuran bukti (yaitu jumlah tanda tangan, jumlah validator yang lebih banyak - ukuran total bukti pemungutan suara) dan tingkat desentralisasi - semakin sedikit validator, semakin besar validasi, semakin besar sentralisasi. Itu semua tergantung pada parameter apa yang akhirnya akan dipilih dalam implementasi tertentu, tetapi secara umum, model dapat berubah menjadi jauh lebih tersentralisasi daripada tren umum yang dibahas pada bagian pertama.


Ada juga sejumlah proyek di mana keberlanjutan konsensus dicapai melalui hibridisasi PoW dan PoS. Paling sering, proyek Decred dikaitkan dengan hibrida PoW / PoS [6]. Mereka menggunakan sistem tiket yang dibeli untuk sejumlah koin tertentu, dan tiket ini mendapatkan hak untuk memilih satu blok setelah beberapa waktu, dan kemudian kemungkinan mengkonfirmasi blok untuk tiket meningkat seiring waktu - semakin besar usia, semakin besar peluang (dalam arti tertentu) ini juga merupakan sistem deposit). Bukti Jake Yocom-Piatt diberikan dalam [7], yang menyatakan bahwa pada jaringan Decred, biaya serangan 51% untuk seorang penyerang dengan jumlah PoS yang kecil akan 20 kali lebih tinggi daripada untuk Bitcoin. Namun, ketika menghitung untuk beberapa alasan, harga pembelian peralatan diindikasikan, meskipun faktanyabahwa dalam model seperti itu, sudah lazim untuk menghitung biaya menyewa hashrate selama durasi serangan.
Contoh lain yang menarik dari hybrid PoW / PoS adalah Zano [8], sebuah proyek yang didasarkan pada teknologi privasi (sekarang saya akan mengatakan dengan sangat rahasia bahwa ini adalah proyek kami - saya tahu, secara tak terduga). Pertama-tama, menurut teori Nothing at stake, penyerang harus dapat berkomunikasi dengan pemegang untuk meyakinkan mereka untuk mengambil bagian dalam serangan itu. Dalam kasus proyek privasi, di blockchain yang tidak ada informasi sama sekali tentang alamat atau saldo dompet, ini akan menjadi lebih sulit. Selain itu, untuk melindungi dirinya dari serangan Long Range, serta dari masalah Nothing at stake, Zano menggunakan aturan pilihan garpu khusus, yang tidak menganalisis kompleksitas total dari seluruh rantai (dari genesis), tetapi selalu membandingkan hanya dua subchains relatif ke titik cabang dan lebih suka cabang seperti itu,yang secara minimal mengubah rasio kompleksitas PoW ke kompleksitas PoS, sambil mempertahankan atau meningkatkan kompleksitas kumulatif. Jadi, untuk menerapkan serangan 51%, bahkan jika penyerang berhasil menyuap sejumlah penambang PoS, ia juga harus menginvestasikan sejumlah besar uang untuk memberikan bagian serangan pada PoW, yang pada akhirnya jauh lebih mahal daripada serangan pada PoW klasik atau PoS secara terpisah.

Ringkasan



Terlepas dari potensi konflik dengan ide desentralisasi, solusi berbasis pBFT saat ini yang memberikan "finalitas" terlihat lebih aman terhadap berbagai serangan, termasuk serangan Jangka Panjang dan Tidak Ada yang dipertaruhkan, dan juga memberikan kesempatan untuk menerapkan sistem PoS yang kuat dan bersih di masa depan. Tetapi pertanyaan tentang di mana keseimbangan yang tepat antara sentralisasi dan keandalan terletak tetap terbuka, yang memberikan peluang bagus untuk solusi hybrid.

Anda dapat mengklarifikasi keadaan contoh yang diberikan dan terjun ke dalam seluk-beluk seperti "berapa harga akan jatuh selama serangan, berapa banyak niat untuk menjual segera ke sejumlah besar pemegang menyadari serangan mempengaruhi likuiditas, apakah semua pemegang akan memiliki keinginan seperti itu", dll., Tetapi hal utama Konsep artikel ini adalah bahwa penambang PoS, karena "sumber daya penambangan" tidak terasing dari jaringan, tingkat kesetiaan alami terhadap jaringan lebih tinggi daripada penambang PoW, dan saya sangat yakin bahwa keadaan ini Roedel cakrawala pengembangan industri.
Tidak setuju? Tulis sudut pandang Anda di komentar!

Sumber:
  1. en.wikipedia.org/wiki/Tragedy_of_the_commons
  2. en.wikipedia.org/wiki/Distribution_of_wealth
  3. bitinfocharts.com/top-100-richest-bitcoin-addresses.html
  4. en.bitcoin.it/wiki/Deterministic_wallet
  5. arxiv.org/pdf/1710.09437.pdf
  6. docs.decred.org
  7. medium.com/decred/decreds-hybrid-protocol-a-superior-deterrent-to-majority-attacks-9421bf486292
  8. zano.org/downloads/zano_wp.pdf
  9. www.peercoin.net
  10. medium.com/@slowmist/the-analysis-of-etc-51-attack-from-slowmist-team-728596d76ead
  11. bravenewcoin.com/insights/more-51-blockchain-attacks- terduga

Source: https://habr.com/ru/post/undefined/


All Articles