Pensilvaniya shtatidagi Tunxannok Viaduk temir yo'l ko'prigi qurilishi (cc). Rim muhandislik tamoyillari yangi foydalanishga tatbiq etilmoqda.

Ethereumning qatlamini 2-masshtabni echishga ta'sir qiladigan echimlar: davlat kanallari, plazma va Truebit

Ethereum uchun 2018 yil infratuzilma yili. Bu yil erta qabul qilish tarmoq chegaralarini sinovdan o'tkazib, ethereumni kengaytirish uchun qurilgan texnologiyalarga e'tiborni yangilaydigan yil.

Ethereum hali ham go'dakligidadir. Bugungi kunda bu xavfli emas yoki kengaytirib bo'lmaydi. Buni texnologiya bilan yaqindan ishlaydigan har kim yaxshi tushunadi. Ammo so'nggi bir yil ichida ICO tomonidan boshqariladigan hiyla tarmoqning hozirgi imkoniyatlarini haddan tashqari oshirib yuborishni boshladi. Ethereum va web3-ning va'dasi - iqtisodiy protokollarning umumiy to'plami bilan bog'langan va milliardlab odamlar foydalanadigan xavfsiz, oson markazlashtirilmagan Internet - hali ham ufqda turibdi va muhim infratuzilma qurilmaguncha amalga oshmaydi.

Ushbu infratuzilmani qurish va ethereumning imkoniyatlarini kengaytirish bo'yicha ish olib boradigan loyihalar odatda miqyosli echimlar deb nomlanadi. Bular juda ko'p turli xil shakllarga ega va ko'pincha bir-biriga mos keladi yoki bepul.

Ushbu uzoq lavozimda men masshtablash echimining bitta toifasiga chuqurroq kirib borishni istayman: "off-zanjir" yoki "2-qavat" echimlari.

  • Birinchidan, biz ethereumning keng miqyosli muammolarini (va umuman, barcha jamoat taqiqlari) muhokama qilamiz.
  • Ikkinchidan, biz "1-qavat" va "2-qavat" echimlarini ajratib turuvchi miqyos masalasini hal qilishda turli xil yondashuvlarni ko'rib chiqamiz.
  • Uchinchidan, biz 2-chi yechimni ko'rib chiqamiz va ular qanday ishlashini tushuntiramiz - xususan, davlat kanallari, Plazma va Truebit haqida gaplashamiz.

Ushbu maqola o'quvchiga 2-sath echimlari qanday ishlashi haqida batafsil va batafsil kontseptual tushuncha berishga qaratilgan. Lekin biz kodni yoki biron-bir amaliy dasturni buzmaymiz. Aksincha, biz ushbu tizimlarni qurishda ishlatiladigan iqtisodiy mexanizmlarni va 2-sathning barcha texnologiyalari o'rtasida umumiy tushunchalarni tushunishga e'tibor qaratamiz.

1. Jamoat blokcheynining keng miqyosdagi muammolari

Birinchidan, "masshtablash" yagona, o'ziga xos muammo emasligini tushunish muhimdir. Bu milliardlab odamlardan iborat global foydalanuvchilar bazasi uchun ethereumni foydali qilish uchun hal qilinishi kerak bo'lgan muammolar to'plamiga tegishli.

Keng tarqalgan masala - bu tranzaktsiyalarni o'tkazish. Hozirgi vaqtda ethereum sekundiga 15 tranzaktsiyani amalga oshirishi mumkin, Visa taqqoslaganda esa taxminan 45,000 / sek. So'nggi yilda ba'zi dasturlar (masalan, Cryptokitties yoki vaqti-vaqti bilan ICO) tarmoqni "pasaytirish" va gaz narxini ko'tarish uchun juda mashhur edi.

Asosiy cheklash shundaki, ethereum kabi ommaviy blokchaynlar har bir tranzaktsiyani tarmoqdagi har bir tugun tomonidan qayta ishlashni talab qiladi. Ethereum blokchainida amalga oshiriladigan har qanday operatsiya - to'lov, Cryptokitty tug'ilishi, yangi ERC20 shartnomasini o'rnatish - tarmoqdagi har bir tugun parallel ravishda bajarilishi kerak. Bu dizayni bo'yicha - bu jamoat bloklarini obro'ga aylantiradigan narsalarning bir qismi. Tugunlar blockchainning hozirgi holati nima ekanligini ularga aytib berish uchun boshqa birovga umid qilishlari shart emas - ular buni o'zlari aniqlaydilar.

Bu ethereumning o'tkazuvchanlik qobiliyatini tubdan cheklaydi: u alohida tugun talab qiladigan narsadan yuqori bo'lishi mumkin emas.

Biz har bir alohida tugundan ko'proq ish qilishni so'rashimiz mumkin. Agar biz blokning hajmini ikki baravar oshirsak (ya'ni, gaz bloki chegarasi), bu har bir tugun har bir blokni qayta ishlash ishlarining miqdorini ikki baravar oshirishini anglatadi. Ammo bu markazlashtirmaslik evaziga amalga oshiriladi: tugunlardan ko'proq ishlashni talab qilish shunchaki kamroq kuchli kompyuterlar (iste'molchi qurilmalari kabi) tarmoqdan chiqib ketishi va qudratli tugun operatorlarida konchilik yanada markazlashgan bo'ladi.

Buning o'rniga, biz blokchainlarni alohida tugunlarga ish yukini oshirmasdan ko'proq foydali narsalarni qilish uchun yo'l kerak.

Ushbu muammoni hal qilishning ikkita usuli bor:

I. Agar har bir tugun barcha operatsiyalarni parallel ravishda bajarishga majbur bo'lmasa nima bo'ladi?

Birinchi yondashuv bizning xonamizni rad etadi - agar biz har bir tugun har bir operatsiyani bajarishi shart bo'lmagan blokchainni qursak nima bo'ladi? Buning o'rniga, tarmoq yarim mustaqil ravishda ishlay oladigan ikkita qismga bo'lingan bo'lsa-chi?

A bo'lim bitta tranzaktsiyani, B qismi esa boshqa partiyani qayta ishlashi mumkin. Bu blockchainni o‘tkazish qobiliyatini samarali ravishda ikki baravar oshiradi, chunki bizning chegaramiz hozirda bir vaqtning o‘zida ikkita tugun tomonidan qayta ishlanishi mumkin. Agar biz blockchainni har xil bo‘limlarga bo‘lishimiz mumkin bo‘lsa, u holda biz blockchainning o‘tkazuvchanligini ko‘paytirgichga ko‘paytiramiz.

Vitalikning Ethereum tadqiqot guruhi va boshqalar olib boradigan keng miqyosli echim "soqol olish" haqidagi tushuncha. Blokchain shards deb nomlangan turli qismlarga bo'linadi, ularning har biri operatsiyalarni mustaqil ravishda amalga oshirishi mumkin. Sharding ko'pincha Layer 1 miqyosli eritma deb ataladi, chunki u ethereumning asosiy darajadagi protokolida amalga oshiriladi. Agar siz soqol olish haqida ko'proq bilishni istasangiz, men keng qamrovli FAQ va ushbu blog postini tavsiya qilaman.

II. Ethereum mavjud imkoniyatlaridan foydaliroq operatsiyalarni siqib chiqarsak nima bo'ladi?

Ikkinchi variant qarama-qarshi yo'nalishda ketadi: ethereum blokchainining quvvatini oshirishning o'rniga, agar biz allaqachon mavjud quvvat bilan ko'proq ish qila olsak nima bo'ladi? Asosiy qavat ethereum blockchain-ning o‘tkazuvchanligi bir xil bo‘lardi, lekin amalda biz odamlar va ilovalar uchun foydali bo‘lgan ko‘plab operatsiyalarni bajarishimiz mumkin - masalan, tranzaktsiyalar, o‘yindagi holatni yangilash yoki oddiy hisoblashlar.

Bu davlat kanallari, Plazma va Truebit kabi "zanjirsiz" texnologiyalarning tushunchasi. Ularning har biri boshqa muammoni hal qilayotganda, ularning barchasi ethereum blokchainida emas, balki "off zanjir" operatsiyalarini bajarish bilan ishlaydi, shu bilan birga etarli darajada xavfsizlik va yakuniylikni kafolatlaydi.

Ular shuningdek Layer 2 echimlari sifatida ham tanilgan, chunki ular ethereum asosiy zanjirining "tepasida" qurilgan. Ular bazaviy darajadagi protokolga o'zgartirish kiritishni talab qilmaydilar - aksincha, ular oddiy zanjirli dasturiy ta'minot bilan o'zaro aloqada bo'lgan ethereumdagi aqlli shartnomalar kabi mavjud.

2. Layer 2 echimlari - bu kripto-iqtisodiy echimlar

Muayyan 2-chi qatlam echimlariga sho'ng'ishdan oldin, ularni amalga oshirishga imkon beradigan tushunchani tushunish kerak.

Jamoat blokchainining asosiy kuchi kripto-iqtisodiy konsensusda. Rag'batlarni sinchkovlik bilan uyg'unlashtirish va ularni dasturiy ta'minot va kriptografiya bilan ta'minlash orqali biz tizimning ichki holati to'g'risida ishonchli kelishuvga erishgan kompyuterlar tarmog'ini yaratishimiz mumkin. Bu Satoshi oq-qog'ozining asosiy tushunchasidir, hozirda u bitcoin va ethereumni o'z ichiga olgan ko'plab turli xil jamoat to'siqlarini loyihalashda qo'llanilgan.

Kriptoiqtisodiy konsensus bizga aniq bir yadroni beradi - agar 51% hujumga o'xshash ekstremal bir narsa ro'y bermasa, biz bilamizki, zanjir operatsiyalari - to'lovlar yoki smart-shartnomalar kabi yozilgan tarzda amalga oshiriladi.

2-qavat yechimlarining mohiyati shundan iboratki, biz ushbu aniq yadrodan langar sifatida foydalanishimiz mumkin - biz qo'shimcha iqtisodiy mexanizmlarni biriktirgan qat'iy nuqta. Iqtisodiy mexanizmlarning ushbu ikkinchi qatlami ommaviy blockchainlarning foydaliligini tashqi tomonga kengaytirishi mumkin, bu esa zarurat tug‘ilganda yadro yadrosiga ishonchli tarzda murojaat qilishi mumkin bo‘lgan blockchain aloqalarini uzishimizga imkon beradi.

Ethereumning "tepasida" qurilgan bu qatlamlar har doim ham zanjirli ishlash kabi kafolat berolmaydi. Ammo ular baribir etarlicha yakuniy va juda foydali bo'lishi uchun xavfsiz bo'lib qolishlari mumkin, ayniqsa, bu ozgina pasayish bizga operatsiyalarni tezroq yoki qo'shimcha xarajatlar bilan bajarishga imkon beradi.

Kriptoiqtisodiyot Satoshining oq qog'ozi bilan boshlanmagan va tugamagan - bu biz qo'llashni o'rganayotgan texnikalar to'plami. Faqat yadro protokollarini loyihalashda emas, balki asosiy blokchainning funktsional imkoniyatlarini kengaytiradigan ikkinchi darajali tizimlarni loyihalashda.

I. Davlat kanallari

Davlat kanallari bu tranzaktsiyalarni bajarish va boshqa "yangilanish" holatini yangilash uslubidir. Biroq, davlat kanalining "ichida" sodir bo'ladigan narsalar hali ham yuqori darajadagi xavfsizlik va yakuniylikni saqlaydi: agar biron bir narsa noto'g'ri bo'lsa, biz zanjir tranzaktsiyalarida aniqlangan "qattiq yadro" ga murojaat qilish imkoniyatiga egamiz. .

Ko'pgina o'quvchilar bir necha yillardan beri mavjud bo'lgan va yaqinda chaqmoq tarmog'i orqali bitcoin-da amalga oshirilgan to'lov kanali g'oyasi bilan tanishadilar. Davlat kanallari to'lov kanallarining eng umumiy shaklidir - ulardan nafaqat to'lovlarni amalga oshirish uchun, balki blokchaindagi har qanday o'zboshimchalik bilan "davlat yangilanishi" uchun foydalanish mumkin - masalan, aqlli shartnoma tarkibidagi o'zgarishlar. Davlat kanallari birinchi bo'lib Jeff Coleman tomonidan 2015 yilda batafsil tasvirlangan.

Davlat kanalining qanday ishlashini tushuntirishning eng yaxshi usuli - bu misolga qarash. Shuni yodda tutingki, bu kontseptual tushuntirish, ya'ni biz aniq amalga oshirishning texnik tafsilotlariga kirmaymiz.

Tasavvur qiling-a, Elis va Bob tic tos oyoq o'yinini o'ynashni xohlashadi, unda g'olib 1 etik oladi. Buning sodda yo'li, ethereumda aql bovar qilmaydigan shartnoma tuzish bo'lib, u tic tac qoidalariga amal qiladi va har bir o'yinchining harakatlarini kuzatib boradi. Har safar o'yinchi harakat qilishni xohlasa, ular shartnomaga bitim yuboradilar. Qoidalarga binoan bitta o'yinchi g'olib chiqqan taqdirda, shartnoma g'olibga 1 pog'onani to'laydi.

Bu ishlaydi, ammo samarasiz va sekin. Elis va Bob o'zlarining o'yinlarini ethereum tizimida o'tkazmoqdalar, bu ularga kerak bo'lgan narsalar uchun ortiqcha bo'lishi mumkin. Ular har safar o'yinchi harakat qilishni xohlasa, gaz narxini to'lashi kerak va keyingi harakatni amalga oshirishdan oldin bloklarni qazib olishni kutishlari kerak.

Buning o'rniga, biz Alice va Bob-ga imkon qadar kam zanjirli operatsiyalar bilan te-tac-to-oyoq o'ynashiga imkon beradigan tizimni yaratamiz. Elis va Bob o'yin zanjirini yangilash imkoniyatiga ega bo'ladilar, shu bilan birga agar kerak bo'lsa ethereum asosiy zanjiriga qaytishlari mumkinligiga to'liq ishonch hosil qilishadi. Biz ushbu tizimni "davlat kanali" deb ataymiz.

Birinchidan, biz tic-tac-toe qoidalarini tushunadigan va Alice va Bobni o'yinimizning ikki o'yinchisi sifatida aniqlay oladigan ethereum asosiy zanjirida "Hakam" aqlli shartnoma tuzamiz. Ushbu shartnoma 1 etik mukofotga ega.

Keyin, Elis va Bob o'yinni boshlashadi. Elis o'zining birinchi harakatini tavsiflovchi bitimni tuzadi va unga imzo qo'yadi va uni Bobga yuboradi, u ham imzolaydi, imzolangan versiyani qaytaradi va nusxasini o'zi uchun saqlab qo'yadi. Keyin Bob o'zining birinchi harakatini tavsiflovchi bitimni tuzadi va imzolaydi va uni Elisga yuboradi, u ham uni imzolaydi, qaytarib yuboradi va nusxasini saqlaydi. Har safar ular o'rtasidagi o'yinning hozirgi holatini yangilab turishadi. Har bir tranzaktsiyada "nonce" mavjud, bu shunchaki har doim qanday tartibda sodir bo'lganligini keyinroq aytib berishimiz mumkinligini anglatadi.

Hozircha bularning hech biri zanjirda emas. Elis va Bob shunchaki bir-birlariga internet orqali tranzaktsiyalar jo'natmoqdalar, ammo baribir blockchainga hech narsa tegmaydi. Biroq, barcha bitimlar Hakamlik shartnomasiga yuborilishi mumkin - boshqacha qilib aytganda, ular ethereum bitimlari hisoblanadi. Buni ikki kishi bir-biriga oldinga va orqaga qarab blockchain bilan tasdiqlangan bir qator cheklarni yozayotganlarida tasavvur qilishingiz mumkin. Hech qanday pul bankka qo'yilmagan yoki undan olinmagan, ammo ularning har biri istagan paytda depozit qilishlari mumkin bo'lgan cheklar to'plamiga ega.

Elisa va Bob o'yinni tugatgandan so'ng - ehtimol Elis yutganligi sababli - ular hakam shartnomasiga yakuniy holatni (masalan, bitimlar ro'yxatini) taqdim etish orqali kanalni yopishlari mumkin, faqat bitta tranzaktsiya to'lovini to'laydilar. Sudya ushbu "yakuniy holat" har ikki tomon tomonidan imzolanganligini ta'minlaydi va hech kim natijaga qonuniy ravishda qarshi chiqa olmasligini ta'minlash uchun vaqtni kutadi va keyin Elisga 1 ta mukofotni to'laydi.

Nega bizga hakamlik shartnomasini kutayotgan «sinov davri» kerak?

Tasavvur qiling, Hakamga haqiqiy yakuniy holatni yuborish o'rniga, u shtatning eski versiyasini yubordi - u Elisdan oldin yutgan. Hakam shunchaki soqov shartnoma - bu o'z-o'zidan, bu eng so'nggi holatmi yoki yo'qligini bilishning hech qanday usuli yo'q.

Sinov davri Elisga hakamning shartnomasiga Bobning o'yinning yakuniy holati haqida yolg'on gapirganligini isbotlash uchun imkoniyat beradi. Agar yaqinda sodir bo'lgan bo'lsa, unda u imzolangan bitimlarning nusxasini oladi va ularni sudyaga topshirishi mumkin. Hakam Elisning versiyasi so'nggi versiyani tekshirish orqali aytish mumkin va Bob g'alabani o'g'irlashga urinish rad etilgan.

Xususiyatlar va cheklovlar

Davlat kanallari ko'plab dasturlarda foydalidir, chunki ular zanjirli operatsiyalarni amalga oshirishda yaxshilanadi. Biroq, dasturni yo'naltirishga yaroqli yoki yo'qligini hal qilishda qilingan muayyan savdolarni yodda tutish kerak:

  • Davlat kanallari mavjudligiga tayanadi. Agar Elis qiyin paytlarda Internet aloqasini yo'qotgan bo'lsa (ehtimol sovrinni olishga intilgan Bob o'z uyining internet aloqasini to'xtatib qo'yganligi sababli), sinov davri tugamasdan javob bera olmasligi mumkin. Biroq, Elis uning holatini nusxasini saqlab qolish va uning nomidan foydalanish uchun boshqa birovga pul to'lashi mumkin.
  • Ular, ayniqsa ishtirokchilar uzoq vaqt davomida ko'plab davlat yangilanishlari bilan almashadigan joylarda foydalidir. Buning sababi, hakamlik shartnomasini tuzishda kanal yaratish uchun boshlang'ich xarajatlar mavjud. Ammo uni ishga tushirgandan so'ng, ushbu kanal ichidagi holatni yangilash narxi juda past bo'ladi.
  • Davlat kanallari aniq ishtirokchilar to'plamiga ega ilovalar uchun eng yaxshi ishlatiladi. Buning sababi shundaki, Sudyalar shartnomasi har doim ma'lum bir kanalning tarkibiy qismi bo'lgan ob'ektlarni (ya'ni manzillar) bilishi kerak. Biz odamlarni qo'shib olib tashlashimiz mumkin, ammo har safar shartnomaga o'zgartirish kiritishni talab qiladi.
  • Davlat kanallari kuchli maxfiylik xususiyatlariga ega, chunki hamma narsa ochiq efirga uzatilgan va zanjirda yozilgan emas, balki ishtirokchilar o'rtasida "kanal ichida" sodir bo'lmoqda. Faqat ochish va yopilish operatsiyalari ommaviy bo'lishi kerak.
  • Davlat kanallari tezda yakunlanadi, ya'ni har ikkala tomon ham davlat yangilanishiga imzo chekishi bilan uni yakuniy deb hisoblash mumkin. Ikkala tomon ham, agar kerak bo'lsa, ushbu zanjirni "amalga oshirishi" mumkinligi to'g'risida yuqori kafolatga ega.

L4-da, biz Counterfactual: ethereumda umumlashtirilgan davlat kanallari uchun asos yaratmoqdamiz. Bizning umumiy maqsadimiz, modulli ravishda amalga oshirish, ishlab chiqaruvchilarga o'zlarining dasturlarida davlat kanallaridan foydalanishga imkon beradi, davlat mutaxassislari bo'lishlari shart emas. Loyiha haqida ko'proq ma'lumotni bu erda o'qishingiz mumkin. Biz 2018 yil 1-chorakda texnikamizni tavsiflovchi qog'ozni chiqaramiz.

Ethereum uchun yana bir e'tiborga loyiq davlat kanallari loyihasi - Raiden, u hozirda chaqmoq tarmog'iga o'xshash paradigmadan foydalanib, to'lov kanallari tarmog'ini yaratishga qaratilgan. Bu shuni anglatadiki, siz aloqada bo'lishni istagan aniq bir kishi (lar) bilan kanal ochishning o'rniga, katta kanallar tarmog'iga ulangan tashkilot bilan bitta kanal ochishingiz mumkin, bu sizga hech kimga to'lovlarni amalga oshirish imkonini beradi. qo'shimcha to'lovlarsiz bir xil tarmoqqa ulangan boshqa.

Counterfactual va Raiden-dan tashqari, ethereumda bir nechta amaliy dasturlar mavjud. Masalan, Funfair markazsizlashtirilgan qimor maydonchasi uchun davlat kanallarini (ular "Taqdir kanallari" deb atashadi), Spankchain kattalar ijrochilari uchun bir tomonlama to'lov kanallarini qurgan (ular o'zlarining ICO uchun davlat kanallaridan foydalanishgan) va Horizon O'yinlari. o'zlarining birinchi ethereumga asoslangan o'yinida davlat kanallaridan foydalanish.

II. Plazma

2017 yil 11-avgust kuni Vitalik Buterin va Jozef Poon "Plazma: Avtonom aqlli kontraktlar" deb nomlangan qog'ozni chiqazdilar. Qog'oz ethereumga sekundiga ko'p sonli tranzaktsiyalarni amalga oshirishga imkon beradigan yangi texnikani taqdim etdi.

Davlat kanallari singari, Plazma ham uning xavfsizligini ta'minlash uchun asosiy ethereum blokchainiga tayanib, zanjirdan tashqari tranzaktsiyalarni o'tkazish usulidir. Ammo Plazma "asosiy" ethereum blokchainiga biriktirilgan "bolalarcha" blokchainlarni yaratishga imkon berib, g'oyani yangi yo'nalishda qabul qilmoqda. Ushbu bolalar zanjirlari, o'z navbatida, o'zlarining bolalar zanjirlarini ham, o'zlarining bolalar zanjirlarini ham aylantirishi mumkin va hokazo.

Natijada biz bolalar zanjiri darajasida ko'plab amaliy operatsiyalarni amalga oshira olamiz, barcha dasturlarni minglab foydalanuvchilar bilan ishlay olamiz va ethereum asosiy zanjiri bilan minimal darajada ta'sir o'tkazamiz. Plazma bolalar zanjiri tezroq harakat qilishi va tranzaktsion to'lovlarni kamaytirishi mumkin, chunki bu operatsiyalarni butun ethereum blokchainida ko'paytirish kerak emas.

plazma.io/plasma.pdf

Plazma qanday ishlashini tushunish uchun uni qanday ishlatishni misolini ko'rib chiqaylik.

Tasavvur qilaylik, siz ethereum-da karta o'yini yaratasiz. Kartalar ERC 721 qo'zg'almaydigan tokenlar (Cryptokitties kabi) bo'ladi, lekin foydalanuvchilarga bir-biriga qarshi o'ynashga imkon beradigan ma'lum xususiyatlar va xususiyatlarga ega - Hearthstone yoki Magic Gathering kabi. Ushbu turdagi murakkab operatsiyalar zanjirda ishlash uchun qimmatga tushadi, shuning uchun siz dastur uchun Plazma-dan foydalanishga qaror qilasiz.

Birinchidan, biz Plazma bolalar zanjirining "ildizi" bo'lib xizmat qiladigan ethereum asosiy zanjiri bo'yicha aqlli shartnomalar to'plamini yaratamiz. Plazma ildizida bolalar zanjirining asosiy "davlatga o'tish qoidalari" mavjud ("tranzaktsiyalar allaqachon sarf qilingan mablag'larni sarf qila olmaydi"), bolalar zanjiri holatining xeshlari yoziladi va o'ziga xos "ko'prik" bo'lib xizmat qiladi. foydalanuvchilarga aktivlarni ethereum asosiy zanjiri va bolalar zanjiri o'rtasida ko'chirishga imkon beradi.

Keyin, biz bolalar zanjirini yaratamiz. Bolalar zanjiri o'zining konsensus algoritmiga ega bo'lishi mumkin - bu misolda aytaylik, u ishonchli blok ishlab chiqaruvchilariga (ya'ni validatorlarga) ishonadigan oddiy konsensus mexanizmi bo'lgan Proof of Authority (PoA) dan foydalanadi. Blok ishlab chiqaruvchilari "Ishni isbotlash" tizimidagi konchilarga o'xshaydi - ular tranzaksiyalarni qabul qiladigan, bloklarni shakllantiradigan va tranzaktsion to'lovlarni to'playdigan tugunlardir. Bizning misolimizni sodda qilib aytaylik va siz (o'yinni yaratgan kompaniya) bloklarni yaratayotgan yagona subyekt - ya'ni sizning kompaniyangiz bizning bolalar zanjiri uchun blok ishlab chiqaruvchisi bo'lgan bir nechta tugunlarni boshqaradi.

Bolalar zanjiri yaratilib, faol bo'lgandan so'ng, blok ishlab chiqaruvchilari ildiz shartnomasi bo'yicha davriy majburiyatlarni bajaradilar. Bu shuni anglatadiki, ular samarali ravishda "bolalar zanjiridagi eng yangi blok bu Xdir" deb aytmoqdalar. Ushbu majburiyatlar bolalar zanjirida nima bo'lganligini isbotlash uchun plazma ildiziga zanjir orqali yozilgan.

Endi bolalar zanjiri tayyor bo'lgach, biz savdo kartamiz o'yinining asosiy tarkibiy qismlarini yaratishimiz mumkin. Ushbu kartalar ERC721-ning dastavval ethereum asosiy zanjirida yaratilgan, so'ngra plazma ildizi orqali bolalar zanjiriga o'tkaziladi. Bu juda muhim bir narsani ochib beradi: Plazma bizga blockchain-ga asoslangan raqamli aktivlar bilan o'zaro munosabatlarni kengaytirishga imkon beradi, ammo bu aktivlar avval ethereum-asosiy zanjirda yaratilishi kerak. Keyin, biz bolalar o'yinlari bo'yicha zanjirda haqiqiy o'yin ilovasi smart-shartnomalarini joylashtiramiz, unda barcha o'yin mantiqlari va qoidalari mavjud.

Agar foydalanuvchi bizning o'yinimizni o'ynashni xohlasa, ular faqat bolalar zanjiri bilan o'zaro aloqada bo'lishadi. Ular aktivlarni (ERC721 kartalari) ushlab turishlari, ularni efir uchun sotib olishlari va savdo qilishlari, boshqa foydalanuvchilarga qarshi o'yin turlarini o'ynashlari mumkin - bizning o'yinimiz nimaga yo'l qo'ymasin - hech qachon asosiy zanjir bilan bevosita aloqada bo'lmasdan. Faqatgina juda oz sonli tugunlar (ya'ni blok ishlab chiqaruvchilari) tranzaktsiyalarni qayta ishlashlari kerak bo'lganligi sababli, to'lovlar ancha past bo'lishi va operatsiyalar tezroq bajarilishi mumkin.

Ammo bu qanday xavfsiz bo'lishi mumkin?

Ko'proq operatsiyalarni asosiy zanjirdan va bolalar zanjiriga o'tkazish orqali biz ko'proq operatsiyalarni amalga oshirishimiz mumkinligi aniq. Ammo bu qanchalik xavfsiz? Bolalar zanjiri bo'yicha amalga oshirilgan bitimlar aslida yakuniy deb hisoblanadimi? Oxir oqibat, biz faqat bitta bola bizning bolalar zanjiri uchun blok ishlab chiqarishni boshqaradigan tizimni tasvirlab berdik. Bu markazlashtirilgan emasmi? Kompaniya sizning pulingizni o'g'irlaydimi yoki xohlagan paytda to'plash kartalaringizni olib keta oladimi?

Qisqacha javob shundan iboratki, hatto bitta tashkilot bolalar zanjirida 100% blok ishlab chiqarishni boshqaradigan stsenariyda ham, Plazma sizga har doim asosiy zanjirga o'z mablag'laringiz va aktivlaringizni qaytarib berishingiz uchun asosiy kafolat beradi. Agar blok ishlab chiqaruvchisi yomon ishlay boshlasa, eng yomoni, ular sizni bolalar zanjirini tark etishga majbur qilishadi.

Blok ishlab chiqaruvchilar o'zlarini yomon tutishlari mumkin bo'lgan turli xil usullarni ko'rib chiqaylik va Plazma ushbu stsenariylarga qanday munosabatda bo'lishini ko'rib chiqaylik.

Birinchidan, blok ishlab chiqaruvchisi sizni yolg'on bilan aldashga harakat qilmoqda - to'satdan sizning mablag'laringiz ular tomonidan boshqariladigan soxta yangi blokni yaratish orqali. Ular faqat blok ishlab chiqaruvchisi, shuning uchun ular bizning blockchain qoidalariga amal qilmaydigan yangi blokni taklif qilishlari mumkin. Boshqa bloklar singari, ular ham ushbu blokning dalillarini o'z ichiga olgan Plazma ildiz shartnomasi bo'yicha majburiyatlarini nashr etishlari kerak.

Yuqorida ta'kidlab o'tilganidek, foydalanuvchi doimo o'z aktivlarini asosiy zanjirga qaytarib berishlari mumkinligi to'g'risida to'liq kafolatga ega. Ushbu stsenariyda foydalanuvchi (aniqrog'i ularning nomidan ishlaydigan dastur) o'g'irlashga urinishni aniqlaydi va blok ishlab chiqaruvchisi "o'g'irlangan" aktivlarni sinab ko'rishi va undan foydalanishi uchun olib qo'yiladi.

Plazma, shuningdek, firibgarlikni asosiy zanjirga o'tmasdan oldini olish mexanizmini yaratadi. Plazma o'z ichiga har kim, shu jumladan siz ham, blok-ishlab chiqaruvchining firibgarligini sinab ko'rish va sinab ko'rish uchun ildiz kontraktidagi firibgarlikni tasdiqlovchi hujjatni nashr etadigan mexanizmni o'z ichiga oladi. Ushbu firibgarlikning isboti oldingi blok haqida ma'lumotni o'z ichiga oladi va bizga bolalar zanjirining o'tish davri qoidalariga ko'ra, soxta blok avvalgi holatdan to'g'ri kelmasligini ko'rsatishga imkon beradi. Agar firibgarlik isbotlansa, bolalar zanjiri oldingi blokga qaytariladi. Bundan ham yaxshisi, biz tizimni qurmoqdamiz, bu erda har qanday noto'g'ri ishlab chiqaruvchidan bloklangan prodyuser zanjirli depozitni yo'qotib jazolanadi.

plazma.io/plasma.pdf

Ammo firibgarlik dalilini taqdim etish asosiy ma'lumotlarga kirishni talab qiladi - ya'ni firibgarlikni isbotlash uchun ishlatiladigan bloklarning haqiqiy tarixi. Agar blok ishlab chiqaruvchilari oldingi bloklar haqida ma'lumot almashmasa, Elisning ildiz shartnomasiga firibgarlik dalilini taqdim etishiga yo'l qo'ymaslik uchun nima qilish kerak?

Bunday holda, Elis o'z mablag'larini olib qo'yishi va bolalar zanjirini tark etishi mumkin. Aslida Elis asosiy shartnomaga "Mablag 'isbotini" topshiradi. Kimdir uning isbotini e'tiroz qilishi mumkin bo'lgan kechikish davridan so'ng (masalan, u aslida ushbu mablag'ni keyinchalik haqiqiy blokda sarflaganligini ko'rsatish uchun), Elisning mablag'lari ethereum asosiy zanjiriga o'tkaziladi.

plazma.io/plasma.pdf

Va nihoyat, blok ishlab chiqaruvchilari bolalar zanjirining foydalanuvchilarini tsenzura qilishlari mumkin. Agar ular xohlasalar, blok ishlab chiqaruvchilari o'zlarining bloklariga biron-bir operatsiyani kiritishlari mumkin emas va bu foydalanuvchini bolalar zanjirida biron-bir operatsiyalarni amalga oshirishga imkon bermaydi. Yana bir bor, echim shunchaki yuqoridagi kabi barcha aktivlarimizni ethereum asosiy zanjiriga qaytarib olishdir.

Pulni olib qo'yishning o'zi xavf tug'diradi. Agar bolalar zanjiridan foydalanayotgan har bir kishi bir vaqtning o'zida orqaga chekinishga harakat qilsa nima bo'ladi, degan xavotir. Ommaviy ravishda olib chiqish holatlarida, ethereum asosiy zanjirida qiyinchilik davri mobaynida har kimning bitimlarini qayta ishlash uchun etarli imkoniyatlar bo'lmasligi mumkin, ya'ni foydalanuvchilar mablag'larini yo'qotishlari mumkin. Buning oldini olish uchun ko'plab usullar mavjud bo'lsa ham, masalan. chaqirish talablariga javob beradigan tarzda sinov muddatini uzaytirish orqali.

Shuni ta'kidlash kerakki, barcha blok ishlab chiqaruvchilar bitta sub'ekt tomonidan boshqarilishi kerak emas - bu bizning misolimizda shunchaki favqulodda holat. Blok ishlab chiqarish ko'plab turli xil sub'ektlar orasida tarqaladigan bolalar zanjirlarini yaratishimiz mumkin - ya'ni jamoat blokchalariga o'xshash tarzda markazlashtirilmagan. Bunday hollarda blok ishlab chiqaruvchilarning yuqorida tavsiflangan usulga aralashishi xavfi kamroq va foydalanuvchi o'z aktivlarini ethereum asosiy zanjiriga qaytarishi kerakligi ehtimoli kamroq.

Endi biz ham davlat kanallarini, ham Plazmani yoritib berdik, bir nechta taqqoslash mumkin.

Farq shundaki, davlat kanallari kanalning barcha tomonlarining chiqishdan rozi bo'lgan taqdirda darhol ularni olib qo'yishlari mumkin. Agar Elis va Bob kanalni yopishga va o'z mablag'larini qaytarib olishga rozi bo'lishsa, ikkalasi ham oxirgi holatga rozi bo'lishgan holda, darhol o'zlarining aktivlarini kanaldan olib qo'yishlari mumkin. Plazma-da bu mumkin emas, bu erda foydalanuvchilar har doim yuqorida aytib o'tilganidek, qiyinchilik davrini o'z ichiga olgan olib chiqish jarayonini o'tishi kerak.

Davlat kanallari, shuningdek, har bir tranzaksiya uchun Plazmaga qaraganda arzonroq va tezroq bo'lishi kerak. Bu degani, biz plazma bolalar zanjirida davlat kanallarini quramiz. Masalan, ikkita foydalanuvchi bir nechta kichik bitimlar almashadigan dasturda. Bolalar zanjiri darajasida davlat kanalini yaratish bolalar zanjiri bo'yicha har bir operatsiyani bajarishdan ko'ra arzonroq va tezroq bo'lishi kerak.

Va nihoyat, shuni ta'kidlash kerakki, bu ko'pgina tafsilotlarni qoldiradigan qisman tavsif. Plazmaning o'zi juda erta bosqichlarda. Agar siz Plazma ustida olib borilayotgan ishlar haqida ko'proq bilmoqchi bo'lsangiz, Vitalikning "Minimal o'zgaruvchan plazma" (ya'ni, plazmani olib tashlangan) bo'yicha taklifini ko'rib chiqing. Tayvanda joylashgan guruh ushbu ishlarni ushbu repoda topishingiz mumkin. OmiseGo markazlashtirilmagan almashinuvni amalga oshirish ustida ishlamoqda - ular bu erda o'z taraqqiyoti haqida so'nggi yangilikni joylashtirdilar.

III. Truebit

Truebit - bu ethereumga og'ir yoki murakkab hisob-kitoblarni zanjirdan tashqarida o'tkazishga yordam beradigan texnologiya. Bu uni davlat kanallari va plazma-dan farq qiladi, ular ethereum blokchainining umumiy o'tkazuvchanligini oshirish uchun foydalidir. Ochilish qismida muhokama qilganimizdek, masshtablash bu ko'p qirrali vazifadir, bu yuqori tranzaktsiyalarni talab qilmaydi. Truebit bizga ko'proq tranzaktsiyalarni amalga oshirishga imkon bermaydi, ammo bu ethereumga asoslangan dasturlar yanada murakkab ishlarni asosiy zanjir tomonidan tasdiqlanishi mumkin bo'lgan tarzda bajarishga imkon beradi.

Bu bizga zanjirda bajarish uchun juda qimmat bo'lgan ethereum dasturlar uchun foydali bo'lgan operatsiyalarni bajarishga imkon beradi. Masalan, oddiy to'lovlarni tasdiqlash (SPV) boshqa blokchainlar tomonidan tasdiqlangan bo'lib, ular boshqa bitimlar (bitcoin yoki dogecoin kabi) zanjirida tranzaktsiyalar sodir bo'lganligini "tekshirish" imkoniyatini beradi.

Bir misolni ko'rib chiqaylik. Tasavvur qiling-a, sizda ethereum dasturining bir qismi sifatida bajarilishi kerak bo'lgan SPV-dalil kabi qimmatbaho hisoblashingiz bor. Siz buni ethereum asosiy zanjiridagi aqlli shartnomaning bir qismi sifatida qila olmaysiz, chunki SPV-dalillar juda qimmatga tushadi. Esda tutingki, har qanday tugunni operatsiyani parallel ravishda bajarish kerak bo'lganligi sababli, har qanday hisob-kitobni bajarish juda qimmatga tushadi. Ethereum bloklarida ushbu blokda birlashtirilgan barcha tranzaktsiyalar bo'yicha qancha hisoblash mumkinligini belgilaydigan maksimal gaz chegarasi mavjud. Ammo SPV-dalil shunchalik qimmatga tushadiki, agar u faqat bitta tranzaktsiya bo'lsa ham, alohida blok uchun butun gaz limitining ko'paytmalarini talab qiladi.

Buning o'rniga, zanjirni o'chirish uchun siz boshqa birovga ozgina haq to'laysiz. Buni amalga oshirish uchun pul to'lagan odam hal qiluvchi deb ataladi.

Birinchidan, hal qiluvchi aqlli shartnomada saqlangan omonatni to'laydi. Keyin, siz solverga ular siz uchun bajarishi kerak bo'lgan hisoblash tavsifini berasiz. Ular hisoblash ishlarini olib boradilar va natijani qaytaradilar. Agar natija to'g'ri bo'lsa (bir soniyada bu ko'proq bo'lsa), ularning depoziti qaytariladi. Agar hal qiluvchi hisob-kitobni to'g'ri bajarmaganligi aniqlansa - ya'ni ular aldaydilar yoki xato qiladilar - ular omonatlarini yo'qotadilar.

Ammo natijaning to'g'ri yoki noto'g'ri ekanligini qanday aniqlay olamiz? Truebitda "tekshirish o'yini" deb nomlangan iqtisodiy mexanizm qo'llaniladi. Aslida, biz raqiblar deb nomlangan boshqa partiyalarning solverchilar ishini tekshirishlariga rag'batlantiramiz. Agar da'vogar tasdiqlash o'yini orqali hal qiluvchi soxta natijani taqdim etganligini isbotlay olsa, unda ular mukofot yig'ishadi, hal qiluvchi esa o'z depozitini yo'qotadi.

Tekshiruv o'yini zanjirda o'tkazilganligi sababli, u natijani shunchaki hisoblay olmaydi (natijada tizimning barcha maqsadlarini buzishi mumkin - agar biz hisob-kitoblarni zanjir orqali qila olsak, bizga Truebit kerak bo'lmaydi). Aksincha, biz hal qiluvchi va raqibni o'zaro kelishmovchilik bo'lgan aniq operatsiyani aniqlashga majbur qilamiz. Aslida, biz ikkala tomonni ham burchakka qo'llab-quvvatlamoqdamiz - ular natija to'g'risida kelishmovchilik bo'lgan kodning haqiqiy qatorini topish.

Truebit-ning soddalashtirilgan kontseptual diagrammasi

Muayyan operatsiya aniqlangandan so'ng, ethereum asosiy zanjiri tomonidan amalga oshirish uchun bu etarli emas. Keyin biz ushbu operatsiyani ethereumga asoslangan aqlli kontrakt orqali amalga oshiramiz, u har safar haqiqatni aytadigan va yolg'on gapirgan va yolg'on gapirgan tomonni barchasini hal qiladi.

Agar Truebit haqida ko'proq bilishni istasangiz, qog'ozni bu erda yoki Simon de la Rouviere tomonidan yozilgan ushbu blogda o'qishingiz mumkin.

Xulosa

2-qavat echimlari umumiy fikrga ega: agar biz ommaviy blockchain tomonidan ta'minlangan qat'iylik yadrosi mavjud bo'lsa, biz uni blockchain dasturlarining foydaliligini kengaytiradigan kriptoiqtisodiy tizimlar uchun langar sifatida foydalanishimiz mumkin.

Endi biz ba'zi misollarni ko'rib chiqqandan so'ng, 2-qavat echimlari ushbu tushunchani qanday qo'llashi haqida aniqroq ma'lumot olishimiz mumkin. 2-sath echimlarida foydalaniladigan iqtisodiy mexanizmlar odatda interfaol o'yinlardir: ular turli partiyalarning bir-biriga raqobat qilishi yoki bir-birlarini "tekshirishlari" uchun rag'batlantirish orqali ishlaydi. Blokchain ilovasi ushbu da'vo haqiqat deb taxmin qilishi mumkin, chunki biz boshqa tomonga uning yolg'onligini ko'rsatadigan ma'lumotni taqdim etish uchun kuchli rag'batlantiramiz.

Davlat kanallarida biz kanalning yakuniy holatini shunday tasdiqlaymiz - tomonlarga bir-birlariga "rad qilish" imkoniyatini berish orqali. Plazma-da, biz firibgarlikni tasdiqlash va pulni olib qo'yish usullarini boshqaramiz. Truebit-da, tekshiruvchilar haqiqatni gapirishiga ishonch hosil qilamiz - tekshiruvchilarni hal qiluvchi xatosini isbotlashga undash orqali.

Ushbu tizimlar ulkan global foydalanuvchilar bazasiga ethereumni kiritish bilan bog'liq ba'zi muammolarni hal qilishga yordam beradi. Ba'zilar, masalan, davlat kanallari va Plazma, platformaning o'tkazuvchanligini oshiradi. Boshqalar, Truebit singari, aqlli shartnomaning bir qismi sifatida yangi foydalanish holatlarini ochib, murakkabroq hisoblash ishlarini olib borish imkoniyatini yaratadi.

Ushbu uchta misol kripto-iqtisodiy miqyosdagi echimlar uchun mumkin bo'lgan dizayn maydonining ozgina qismini anglatadi. Biz Cosmos yoki Polkadot kabi "blokcheyn protokollar" da qilinayotgan ishlarni ham qamrab olmadik (garchi bu "qatlam 2" echimlari yoki umuman boshqa narsa boshqa mavzu uchun mavzu bo'lsa ham). Shuningdek, biz mavjud modellarda yaxshilanadigan yoki tezlik, yakuniy va qo'shimcha narx o'rtasidagi yangi savdoni taklif qiladigan yangi va kutilmagan 2-chi tizimlarni ixtiro qilishni kutishimiz kerak.

Har qanday maxsus 2-chi yechimga qaraganda muhimroq narsa birinchi navbatda ularni amalga oshirishga imkon beradigan asosiy texnika va mexanizmlarni yanada rivojlantirishdir: kriptoiqtisodiy dizayn.

Ushbu 2-qavat miqyosidagi echimlar ethereum kabi dasturlanadigan blokchainlarning uzoq muddatli qiymati uchun kuchli dalildir. 2-sath yechimlari ostidagi iqtisodiy mexanizmlarni qurish faqat blockchain dasturlashtirilgandagina mumkin: interfaol o'yinlarni qo'llab-quvvatlaydigan dasturlarni yozish uchun sizga skript tili kerak. Bitcoin kabi blokchainlarda bu cheklashsiz skriptlash imkoniyatlarini taklif qiladigan (yoki ba'zi holatlarda, masalan, Plazma kabi) ancha qiyinroq.

Ethereum bizga tezlik, yakuniy va qo'shimcha xarajatlar o'rtasidagi savdo matritsasida yangi nuqtalarni olish uchun 2-qavat echimlarini yaratishga imkon beradi. Bu asosiy blokchainni kengroq dasturlar uchun yanada foydaliroq qiladi, chunki turli xil tahdid modellariga ega bo'lgan har xil turdagi ilovalar turli xil savdo-sotiqlarga nisbatan tabiiy imtiyozlarga ega bo'ladi. Biz hatto hattoki davlatlardan himoya qilishni istagan yuqori qiymatli bitimlar uchun asosiy zanjirdan foydalanamiz. Tezlik muhimroq raqamli to'plamlarni sotish uchun biz Plazma-dan foydalanishimiz mumkin. 2-qavat bizga ushbu savdolarni asosiy blokchainni buzmasdan, markazsizlashtirish va yakuniylikni saqlab qolish imkonini beradi.

Bundan tashqari, ushbu masshtablash echimi uchun skript yozish imkoniyatlari qanday bo'lishini oldindan aniqlash juda qiyin. Ethereum ishlab chiqilganida, Plazma va Truebit hali ixtiro qilinmagan edi. Ammo ethereum to'liq dasturlashtirilganligi sababli, biz ixtiro qiladigan deyarli har qanday iqtisodiy mexanizmni amalga oshirishga qodir.

Blokchain texnologiyasining ahamiyatidan to'liq foydalanishning yagona yo'li - kriptoiqtisodiy konsensus tomonidan yaratilgan aniq aniqlikdagi yadro - bu ethereum kabi dasturlanadigan blokchain bilan.

Vitalik Buterin, Jon Choy, Mett Kondon, Kris Dikson, Xudson Jeymson, Denis Nazarov va Jessi Uoldenga ushbu maqolaning avvalgi loyihasi haqida bildirgan fikrlari uchun rahmat.