Cointerra paskelbia goldstrike1 asic

CoinTerra Engineering Update: TerraMiner IV Hashing Live (Gegužė 2019).

Anonim

šio straipsnio autorius yra Ethereum projekto steigėjas ir vyriausiasis mokslininkas

Praėjusią savaitę Adam Back ir Austin Hill paskelbė pranešimą "Let's talk Bitcoin", kuriame paskelbė savo naujausią projektą "sidechains". Jų apibūdinta idėja leistų alternatyvių blokų egzistavimą, galbūt taikant skirtingas taisykles, leidžiančias įvairias papildomas funkcijas ar sandorių tipus, bet su valiutos vienetu, kurio vertė yra susieta su bitcoino verte. Siekiama leisti eksperimentuoti su skirtingais "Bitcoin" protokolo plėtiniais, naudojant atskirus tinklus, kad būtų išvengta bet kokios rizikos Bitcoin'ui, tačiau vis tiek naudojamas tas pats pagrindinis valiutos vienetas. Vos tik minėta idėja buvo paskelbta, viešoji šio koncepcijos idėja buvo didelė ir atnešė viltį, kad Bitcoin protokolas gali tapti daug galingesnis nei šiandien.

Under the Hood

Šoninių grandinių idėja nėra nauja; koncepcija buvo maždaug maždaug praėjusiais metais gruodžio mėnesį, ir šios idėjos pirmtakė buvo maždaug kelerius metus iki to laiko. Pirmininkas, protokolas, vadinamas vienpusiu susiejimu, buvo mechanizmas, kuris teoriškai būtų naudojamas perėjimui nuo "Bitcoin 1. 0" į "Bitcoin 2. 0" tvarkyti ir veikė taip. Tarkime, kad "Bitcoin" 1.00 mln. Valiutos vienetų jau buvo išleista per kasybą, o dar 8 mln. Palikta. BTC2 paskirstymo modelis. 0 bus išleisti 8 milijonai vienetų per kasybą, pagal tą patį grafiką, kaip ir BTC1. 0 po šio taško, bet kiti 13 milijonų būtų paskirstyti per mechanizmą, vadinamą "įrodymų apie nudegimą".

Iš esmės būtų galima paimti vieną BTC1 vienetą. 0, nusiųskite jį į neperskaitomą adresą (pvz., 1111111111111111111114oLvT2 ) ir pateikite kriptografinį įrodymą, kad šis sandoris įvyko, pasirašytas tuo pačiu privačiu raktu, kuris atsiuntė operaciją, kaip sandorį į Bitcoin 2. 0 Pagal Bitcoin 2. 0 protokolą, tai suteiktų vartotojui teisę gauti vieną vienetą 2 0. Tai vadinama "vienos krypties ryšiu", nes vienos BTC2 vertė. 0 gali būti daugiausiai lygus vienam BTC1. 0; priešingu atveju žmonės galėtų atsverti skirtumą keičiančius bitino kainas 1: 1 lygiu. Tačiau, be BTC2 pardavimo. 0 už BTC1. 0 rinkoje, nėra galimybės grįžti atgal, taigi, jei eksperimentas neatitinka BTC2 vertės. 0 gali nukristi iki nulio.

Bitcoin sidechains naudoja patobulintą šios sistemos versiją, vadinamą "dvipusis susiejimas", kuri veikia taip. Norint gauti vieną BTC2 vienetą. 0, reikės paimti vieną BTC1 vienetą. 0 ir nusiųskite jį į "scenarijų", kurį mes vadinsime X ir paliksime nenurodytus. "Bitcoin" scenarijus yra adresas, kuris, užuot priklausęs privačiam raktui, iš esmės veikia kaip "lockbox", kuris atjungia bitukinus tik tada, kai tam tikromis sąlygomis įvykdomas sandoris.Pavyzdžiui, galima turėti scenarijų, kuris atveria lėšas pirmam asmeniui, kuris pateikia penkiasdešimt skaitmenų pirminį skaičių, kuris visiškai susideda iš 3 ir 5 skaitmenų. Operacijos atlikimas ir kriptografinio įrodymo, kad toks sandoris buvo paskelbtas, paskelbimas į "Bitcoin 2. 0 blockchain" suteikia vartotojui teisę į vieną BTC2 vienetą. 0.

Dabar X apibrėžimas yra paprastas: X atrakina lėšas (nepamirškite, tai yra vienas BTC1. 0 vienetas), jei pateiktas galiojantis kriptografinis įrodymas, kad siuntėjas sunaikino vieną BTC2 vienetą. 0. Taigi, egzistuoja BTC 1. 0 į BTC2 konvertavimo mechanizmas. 0, ir tas pats mechanizmas sukuria dar vieną mechanizmą, kurio vertė yra ribota iš viso BTC2 skaičiaus. 0 sukurta, kuri gali būti naudojama BTC2 konvertavimui. 0 atgal į BTC1. 0. Taigi, dvipusis ryšys.

Mechanizmas, kurį naudoja šie "kriptografiniai įrodymai", priklauso nuo kriptografinės konstrukcijos, naudojamos Bitcoin, vadinamos "Merkle" medžiu. Bitcoin blokas, o ne tiesiog kiekvieno sandorio blokas tiesiogiai, tik vienas 32 bitų maišas tikrai įtrauktas į bloko antraštę. Šis 32-bitų maišas pats apskaičiuojamas iš dviejų kitų 32-bitų maišų, kurių kiekvienas gaunamas iš dviejų kitų 32-bitų maišų ir tt, kol galiausiai verčių apačioje yra pačios operacijos. Būtent šio mechanizmo tikslas yra leisti egzistuoti kompaktiškus įrodymus, kad konkretus sandoris yra konkretaus bloko; viskas, ko reikia, yra viena iš hešų šakos, išaugo iš šio sandorio į šakninį mazgą arba iš viso 10 maišų už 1000 sandorių arba 20 maišų už vieną milijoną operacijų. Tai neįmanoma suklastoti; jei bandote keisti net vieną sandorį medyje, pakeitimai skleidžiami aukštyn per maišus, kol galiausiai šakninis mazgas pasidaro visiškai kitoks.

Tačiau tai visiškai neišsprendžia problemos; viskas, kas jums sako, yra tai, kad kai kuriuose blokuose yra tam tikras sandoris. Tai nepaaiškina, kad sandoris yra pagrindinėje grandinėje; iš tikrųjų tokie pat bitkinai, kurie buvo naudojami operacijoje, galėjo būti jau išsiųsti į kitą šaltinį, todėl sandoris buvo negaliojantis. Yra du būdai tai išspręsti. Vienas iš būdų ir, be abejo, paprastesnio, yra "Bitcoin 2. 0" įrodymo mechanizmas, reikalaujantis ne tik "Merkle" medžio šakos, bet ir "blockchain", grįžtant prie šešių blokų, panašiai kaip prekybininkas, prašydamas šešių patvirtinimų, naudojant kalnakasybos galia kaip galiojimo įgaliojimas. Dėl didesnio saugumo gali prireikti žymiai didesnio skaičiaus blokų, pavyzdžiui, šešiasdešimt. Šis metodas yra paprastas ir atrodo, kad jis atitinka visus reikiamus parametrus.

Iššūkiai

Tačiau minėtas mechanizmas, kaip aprašyta, yra labai netobulas. Kai paprastas prekybininkas prašo šešių patvirtinimų, ištraukdamas dvigubo išleidimo ataką prieš šį pardavėją, reikia pagaminti šešis blokus greičiau nei likusio tinklo dalis, įjungta realiuoju laiku, užduotis, kuri reikalauja, kad bent 30% viso tinklo pajėgumų turėtų dirbti bet koks nežymus sėkmės rodiklis. Tačiau aukščiau aprašytu dvipusio susiejimo mechanizmu piktybinis mineratorius, kurio netgi 1% maišos galia gali pagaminti šešis blokus ar net šešiasdešimt blokų, galų gale, ir tada naudoti šiuos blokus apgaulingai reikalauti visų BTC1.0, kurie buvo įtraukti į BTC2. 0 lockboxes (arba, kita kryptimi, apgaulingai reikalauti neriboto skaičiaus BTC2. 0). Vienas iš galimų pataisų, galinčių prisiminti, reikalauja, kad tas pats asmuo, kuris sukūrė spintelę, jį atidarė, taip apribojant žalos dydį, kuris gali būti padarytas vienam asmeniui, tačiau tai neišspręs problemos, nes piktybinis kaltininkas gali lengvai sutaikinti su kuo nors Kitas. Esminė problema, kad nėra galimybės sugalvoti laiko blokavimo laiko patvirtinimo mechanizmo, kuris laikui bėgant neatnaujinamas, arba labai sunku išspręsti, arba, tikėtina, negali būti išspręstas išlikdamas tik Bitcoin "statinio bloknoto" scenarijų paradigmoje.

Kitas požiūris, tas, kuris gali išspręsti šią problemą be pernelyg sudėtingo, yra sudėtingesnis ir intrucuojantis. Iš esmės tai apima tai, kas Bitcoin 1. 0 vadinama "lengvu klientu", į "Bitcoin 2". "Light client" yra lengviau apibūdinama kaip ilgalaikė "sutartis", programa, skirta blokų grandinei su dideliu vidaus kuriame veikia kiekvieną kartą, kai jam siunčiamas sandoris, priima blokus ir tikrina bloko antraštes tiksliai taip pat, kaip ir "Bitcoin" klientas jūsų mobiliajame telefone. Tada ši sutartis saugotų visų blokinių antraščių, nurodytų Bitcoin 1. 0, sąrašą ir kad gautų vieną BTC2. 0 reikės pateikti kriptografinį įrodymą, kad atlikote reikiamą sandorį BTC1. 0 į sutartį, kartu su užstatu 0. 1 BTC2. 0.

Sutartis patikrintų, ar įrodymas galioja, baigiasi bloku, esančiu sutarties vidiniame mini blokiniame serije, ir palaukite, kad įvykis įvyko du dalykai. Pirma, kai dar bus įtraukta dar šešiasdešimt Bitcoin 1. 0 blokų, bus išleistas vienas BTC2 vienetas. 0 siuntėjui plius saugojimo indėlis. Arba, jei kas nors kitas pateikia kriptografinį įrodymą, kad sandoris yra negaliojantis dėl kokios nors priežasties (pvz., Jis praleidžia bitkinus, kurių nėra) per tą laiką, tada jie gautų užstatą.

Tai išspręstų saugumo problemą, tačiau turi vieną svarbų trūkumą: tai negali būti padaryta pagal Bitcoin protokolą, kaip jis yra. Tai yra gana lengva įgyvendinti tokiu protokolu kaip Ethereum, nes jis yra specialiai suprojektuotas sutartims, tačiau "Bitcoin" scenarijų funkcija neleidžia sudaryti sutarčių, turinčių vidinę būseną, todėl, atlikus tokius veiksmus, "Bitcoin" viduje reikėtų labai pakeisti Bitcoin 1. 0 protokolas. Galiausiai Austin Hill ir Adam Back metodas gali atrodyti ne taip, kaip bet kuri iš šių strategijų; Vis dėlto problemos sudėtingumas rodo, kad vis dar yra daug iššūkių.

Kasyba

Dar vienas svarbus klausimas: kaip bus užtikrintos šios šoninės grandinės? Standartinis blokavimo grandinės užtikrinimo mechanizmas yra kasyba, tačiau kasybai reikalingas mechanizmas, skirtas atlyginti kalnakasybes šioje grandinėje. Šoninės grandinės atveju kiekvieną šoninės grandinės valiutos vienetą turi palaikyti scenarijų užrakto juosta, kurioje yra Bitėno blokinio bloko BTC vienetas, todėl nėra paprastos galimybės išleisti šalutinės grandies valiutos vienetus iš niekur.Yra dvi galimybės šiam tikslui: dvejopas (pvz., Procentas už kiekvieną metinį mokestį visam BTC šoninės grandinės) ir sandorio mokesčius. Tačiau abu šie yra pakankamai mažų įplaukų, taigi visiškai neabejotina, kad problema išspręs paprastą seną nepriklausomą kasybą.

Yra du būdai išspręsti šią problemą. Vienas iš būdų yra užtikrinti, kad šoninė grandinė būtų apsaugota įrodant akcijų paketą, naudojant mažas pajamas iš sandorių mokesčių, kad kompensuotų dalyvaujantiems suinteresuotiesiems asmenims palūkanų normą. Tačiau šį metodą būtų labai sunku įgyvendinti į šoninę grandinę, nes skaičiavimai, susiję su akcijų tikrinimo patikimumu, greičiausiai yra pernelyg sudėtingi, kad juos būtų galima veiksmingai įgyvendinti tiesiai į blokų grandinę. Kitas požiūris, kurį reklamuoja Adomas Back ir Austin Hill, vadinamas "susijungimo-gavybos"; iš esmės miners Bitcoin blokuoja duomenis iš Bitcoin bloko ir "Namecoin" bloko, leidžiant kalnakasybes tuo pačiu metu užtikrinti abiejų grandinių apsaugą, naudojant tas pačias skaičiavimo pastangas.

Tačiau, kaip tvirtina Bitcoin kūrėjas Peteris Toddas, "susijungimo" sąvoka turi vieną labai svarbų saugumo trūkumą: nebent dauguma Bitcoin miners sutinka sujungti konkrečią grandinę, ta grandinė, be abejo, nėra saugi . Norėdami suprasti, kodėl pirmiausia apsvarstykite tradicinio altcoino atvejį, mūsų pavyzdyje paleidžiant SHA256 paprastumui (jei altokinas naudoja pasirinktinį algoritmą, vietoj to Litecoin miners gali užstrigti ataką). Jei altokinas turi 5% "Bitcoin" maišavimo galios, tada, norint užpulti grandinę dvigubai išleisti bent 5% Bitcoin tinklo energijos, reikės laikinai nukreipti save į kasyklą altcoin. Tai yra potencialiai įmanoma, tačiau tai yra brangus žingsnis: kol auka bus vykdoma, Bitcoin kalnakasiai praranda pajamas iš kasybos Bitcoin. Tačiau sujungtoje šoninės grandinės atveju kalnakasybos iš šoninės grandinės pagrindinės linijos ar jos ataka yra tiek nemokama, taigi nebūtų ekonomiškai kliūčių puola alternatyviai grandinei. Tai nėra paprasta hipotezė; egzistuoja faktiniai kasybos baseinų pavyzdžiai, kurie iš tiesų atakuoja sujungimo grandines.

Nepaisant saugumo, ši priklausomybė nuo sujungimo proceso taip pat kelia dar vieną nerimą keliančių šoninių grandynų idėjos ribojimą: nors kriptūvuliuotės dvasia, be abejo, yra susijusi su neįgaliotomis naujovėmis, šoninės grandinės sukūrimui reikalingas leidimas ir aktyvi 50 % visų Bitcoin kasybos baseinų operatorių. Šie apribojimai kartu rodo, kad šoninių grandinių protokolas, nors ir puikus daugeliui atvejų, tikrai nebus idealus visiems.

Pažadas

Jei gali būti sprendžiamos techninės problemos aplink šonines grandines, koks yra jų pažadas? Šiuo metu kriptūpiuvoros plėtra iš esmės gali būti suskirstyta į keturis kvadrantus. Pirmasis kvadrantas susideda iš projektų, kuriuose naudojama Bitcoin valiuta ir Bitcoin blokinis šifras - iš esmės pats Bitcoinas. Antrasis kvadrantas yra protokolai, kuriuose naudojama Bitcoin blockchain, bet ne Bitcoin valiuta; "Mastercoin", spalvoti monetos ir kitos sandorio šalys yra puikus pavyzdys.Trečiasis kvadrantas naudoja nepriklausomą valiutą ir nepriklausomą blokavimo grandinę; tai apima tokias programas kaip (dažnai skirtingų pavyzdžių) "Ripple", "Litecoin" ir "NXT". Dabar su šaligatviais taip pat buvo užpildytas paskutinis kvadrantas: naudojamas nepriklausomas tinklas, tačiau naudojant bazinę valiutą - "Bitcoin".

Įdomu pamatyti, kokios šios nišos programos geriausiai veikia. Visoms naujoms ekosistemoms gali būti ne tinkamas požiūris; nėra jokio prasmės visiškai nepriklausomam tinklui, pavyzdžiui, "Ripple" arba "Ethereum", finansiškai susieti savo pagrindinį vidinį žetoną su "Bitcoin" ir turėti galimybę vieni kitiems daryti įtaką kainų pokyčiams. Tokių didelių pastangų atveju taip pat dažnai prasminga eksperimentuoti su skirtingomis pinigų politikos priemonėmis; Ethereum eteris turi linijinį emisijos modelį, kuris kasmet išleidžia tam tikrą fiksuotą valiutų vienetų skaičių, tuo tarpu "Ripple" iš karto išleido visus 100 mlrd. XRP vienetų "Ripple" organizacijai, o organizacija laikui bėgant jas atidavė kūrėjams, investuotojams ir žmonės, dalyvaujantys paskirstytųjų skaičiavimo projektuose. Dėl šakės, kuri turi būti pagrindinis protokolo pakeitimas, pvz., Atnaujinimas iš SHA256 į SHA3 arba, jei kalbama apie ECDSA, į Lamport parašus arba NTRU, kvantuose kompiuteriuose, tai tikrai yra visiškai prasmingas. Už viską, kas yra viduryje, išsiaiškinsime kiekvieną atvejį.

Ethereum atveju ypatingas dėmesys turi būti atkreiptas į tai: "Ethereum" yra bendrojo pobūdžio kriptografijos sutarimo platforma, o ne konkreti "altoquin". Taigi, remiantis sutartimis, Ethereum platformoje egzistuoja daug skirtingų valiutų; gali būti nuobodžios senos fiksuoto tiekimo valiutos, valiutos su pinigų politika, valdoma decentralizuotos autonominės organizacijos, valiutos, kuriomis subsidijuojami moksliniai tyrimai arba teikiamos pagrindinės pajamos, ir net valiutos su integruotu dvipusio keitimosi mechanizmu veikti kaip šoninės grandinės. Taigi, Ethereum negalima tiksliai būti pigeonholed į šoninių grandinių kvadrantą arba Ripple / Litecoin / NXT kvadrantą; tai egzistuoja abiejose.

Iš tikrųjų labai tikėtina, kad iškart po Ethereum genezės bloko paleidimo bus sudarytos sutartys per tris mėnesius, skirtos Bitcoin, Litecoin ir Dogecoin. Jei šoninės grandinės gali būti sėkmingai ir saugiai įdiegtos, tai reiškia, kad "Ethereum" netgi gali tapti pageidaujama BTC, LTC ar DOGE saugojimo priemone, naudojant galingas daugiaformatės saugojimo sutartis su tokiomis savybėmis kaip pašalinimo apribojimai. Tarp sutarčių bendrosios paskirties grandinės, aukštos kokybės specialios paskirties altokinai, kvazikcentalizuoti "OpenTransactions" serveriai, šoninės grandinės ir pats Bitcoinas tampa vis akivaizdu: kriptokursai gali sąveikauti, kaip niekada anksčiau.