Frá blockchain til DAG: losna við milliliði

Í þessari grein mun ég segja þér frá DAG (Directed Acyclic Graph) og notkun þess í dreifðum höfuðbókum og við munum bera það saman við blockchain.

Frá blockchain til DAG: losna við milliliði

DAG er ekkert nýtt í heimi dulritunargjaldmiðla. Þú gætir hafa heyrt um það sem lausn á vandamálum með sveigjanleika blockchain. En í dag munum við ekki tala um sveigjanleika, heldur um það sem gerir dulritunargjaldmiðla frábrugðna öllu öðru: valddreifingu, skort á milliliðum og ritskoðun viðnám.

Frá blockchain til DAG: losna við milliliði

Ég mun líka sýna þér að DAG er í raun ónæmari fyrir ritskoðun og það eru engir milliliðir til að fá aðgang að höfuðbókinni.

Frá blockchain til DAG: losna við milliliði

Í blockchains sem við þekkjum hafa notendur ekki beinan aðgang að höfuðbókinni sjálfri. Þegar þú vilt bæta viðskiptum við höfuðbókina þarftu að „spyrja“ blokkaframleiðandann (a.k.a. „miner“) að gera það. Það eru námumenn sem ákveða hvaða viðskiptum á að bæta við næstu blokk og hverjar ekki. Það eru námumenn sem hafa einkaaðgang að blokkum og rétt til að ákveða hver viðskiptin verða samþykkt til skráningar í höfuðbókina.

Námumenn eru milliliðir sem standa á milli þín og dreifðu höfuðbókarinnar.

Frá blockchain til DAG: losna við milliliði

Í reynd stjórnar yfirleitt lítill fjöldi námuverkasamtaka meira en helmingi af tölvuafli netsins sameiginlega. Fyrir Bitcoin eru þetta fjórar laugar, fyrir Ethereum - tvær. Ef þeir hafa samráð geta þeir lokað fyrir hvaða viðskipti sem þeir vilja.

Frá blockchain til DAG: losna við milliliði

Undanfarin ár hafa mörg afbrigði af blokkakeðjum verið lögð til, mismunandi í meginreglum um að velja blokkaframleiðendur. En blokkaframleiðendurnir sjálfir eru ekki að fara neitt, þeir „standa enn við hindrunina“: hver viðskipti verða að fara í gegnum blokkaframleiðandann og ef hann samþykkir það ekki, þá eru viðskiptin í raun ekki til.

Frá blockchain til DAG: losna við milliliði

Þetta er óumflýjanlegt vandamál með blockchain. Og ef við viljum leysa það verðum við að gjörbreyta hönnuninni og losa okkur algjörlega við blokka og blokkaframleiðendur. Og í stað þess að byggja upp keðju af blokkum, munum við tengja viðskiptin sjálf, þar á meðal kjötkássa nokkurra fyrri í hverri færslu. Fyrir vikið fáum við uppbyggingu sem er þekkt í stærðfræði sem stýrt óhringlaga línurit - DAG.

Nú hafa allir beinan aðgang að skránni, án milliliða. Þegar þú vilt bæta færslu við fjárhagsbókina bætirðu henni einfaldlega við. Þú velur nokkrar móðurfærslur, bætir við gögnum þínum, undirritar og sendir færsluna til jafningja á netinu. Tilbúið. Það er enginn sem hindrar þig í að gera þetta, þannig að viðskipti þín eru nú þegar á fjárhagsbókinni.

Þetta er dreifðasta, ritskoðunarþéttasta leiðin til að bæta viðskiptum við höfuðbókina án milliliða. Vegna þess að allir bæta einfaldlega viðskiptum sínum við skrána án þess að biðja um leyfi frá neinum.

Frá blockchain til DAG: losna við milliliði

DAGs geta talist þriðja stigið í þróun skráninga. Fyrst voru það miðlægar skrár, þar sem einn aðili stjórnaði aðgangi að þeim. Svo komu blockchains, sem þegar höfðu nokkra stjórnendur sem skráðu viðskipti í höfuðbókinni. Og að lokum eru engir stjórnendur í DAG; notendur bæta viðskiptum sínum beint við.

Frá blockchain til DAG: losna við milliliði

Nú þegar við höfum þetta frelsi ætti það ekki að leiða til glundroða. Við verðum að hafa samkomulag um stöðu skrárinnar. Og þetta samkomulag, eða samstaða, þýðir venjulega samkomulag um tvennt:

  1. Hvað gerðist?
  2. Í hvaða röð gerðist þetta?

Við getum auðveldlega svarað fyrstu spurningunni: Þegar rétt búin færslu hefur verið bætt við fjárhagsbókina hefur hún átt sér stað. Og punktur. Upplýsingar um þetta kunna að ná til allra þátttakenda á mismunandi tímum, en að lokum munu allir hnútar fá þessa færslu og vita að þau hafi gerst.

Ef það væri blockchain myndu námumenn ákveða hvað gerist. Hvað sem námumaðurinn ákveður að setja í blokk er það sem gerist. Allt sem hann hefur ekki í blokkinni gerist ekki.

Í blockchains leysa námumenn einnig annað samstöðuvandamál: röð. Þeim er heimilt að panta viðskiptin innan blokkarinnar að vild.

Hvernig á að ákvarða röð viðskipta í DAG?

Frá blockchain til DAG: losna við milliliði

Bara vegna þess að línuritinu okkar er beint, höfum við nú þegar einhverja röð. Hver viðskipti vísar til einnar eða fleiri fyrri, foreldris. Foreldrar vísa aftur á móti til foreldra sinna og svo framvegis. Foreldrar koma augljóslega á undan barnaviðskiptum. Ef hægt er að ná einhverjum af færslunum með umskiptum foreldra- og barntengla, vitum við nákvæmlega röðina á milli færslna í þeirri keðju færslunnar.

Frá blockchain til DAG: losna við milliliði

En röð milli viðskipta er ekki alltaf hægt að ákvarða út frá lögun línuritsins einni saman. Til dæmis, þegar tvær færslur liggja á hliðstæðum greinum línuritsins.

Frá blockchain til DAG: losna við milliliði

Til að leysa úr tvíræðni í slíkum tilfellum treystum við á svokallaða pantanaveitendur. Við köllum þá líka „vitni“. Þetta eru venjulegir notendur sem hafa það hlutverk að senda stöðugt færslur inn á netið á skipulegan hátt, þ.e. þannig að hægt sé að ná í hverja fyrri færslu þeirra með umbreytingum meðfram foreldra- og barntenglunum. Pantanaveitendur eru traustir notendur og allt netið treystir á að þeir brjóti ekki þessa reglu. Til þess að skynsamlega treystu þeim, við krefjumst þess að hver pöntunaraðili sé þekktur (ónafnlaus) einstaklingur eða stofnun og hafi einhverju að tapa ef það brýtur reglurnar, svo sem orðspor eða viðskipti byggð á trausti.

Frá blockchain til DAG: losna við milliliði

Pöntunarveitendur eru valdir af notendum og hver notandi inniheldur lista yfir trausta veitendur sína í hverri færslu sem hann sendir á netið. Þessi listi samanstendur af 12 veitendum. Þetta er nógu lítill fjöldi til að einstaklingur geti staðfest auðkenni og orðspor hvers og eins og nóg til að tryggja að netið haldi áfram að starfa ef óumflýjanleg vandamál koma upp hjá minnihluta pantanaveitenda.

Þessi listi yfir veitendur er mismunandi eftir notendum, en listar yfir nærliggjandi viðskipti geta verið mismunandi eftir allt að einum þjónustuaðila.

Frá blockchain til DAG: losna við milliliði

Nú þegar við höfum pantanaveitendur getum við einangrað viðskipti þeirra í DAG og pantað allar aðrar færslur í kringum pöntunina sem þeir hafa búið til. Það er hægt að búa til slíkt reiknirit (sjá. Obyte hvítbók fyrir tæknilegar upplýsingar).

En ekki er hægt að ákvarða röð alls netsins samstundis; við þurfum tíma fyrir pantanaveitendur til að senda nægjanlegan fjölda viðskipta sinna til að sannreyna endanlega röð fyrri viðskipta.

Og þar sem röðin er aðeins ákvörðuð af stöðu viðskipta veitenda í DAG, munu allir hnútar á netinu fyrr eða síðar fá öll viðskiptin og komast að sömu niðurstöðu varðandi röð viðskiptanna.

Frá blockchain til DAG: losna við milliliði

Þannig að við erum sammála um það sem við teljum hafa gerst: öll viðskipti sem endar í DAG áttu sér stað. Við höfum líka samkomulag um röð atburða: þetta er annaðhvort augljóst af tengslum viðskipta eða er ályktað af röð viðskipta sem sendar eru af pöntunum. Þannig að við erum sammála.

Frá blockchain til DAG: losna við milliliði

Við höfum þessa útgáfu af samstöðu í Obyte. Jafnvel þó aðgangur að Obyte-bókinni sé algjörlega dreifður, er samstaðan um röð viðskipta samt miðstýrð vegna þess að 10 af 12 veitendum er stjórnað af skaparanum (Anton Churyumov), og aðeins tveir þeirra eru óháðir. Við erum að leita að umsækjendum sem eru tilbúnir til að verða einn af óháðu pöntunarveitunum til að hjálpa okkur að dreifa pöntun á höfuðbókinni.

Nýlega hefur þriðji óháður frambjóðandi komið fram tilbúinn að setja upp og viðhalda hnút fyrir pöntunarþjónustu - Háskólinn í Nikósíu.

Frá blockchain til DAG: losna við milliliði

Nú hvernig stjórnum við tvöföldum eyðslu?

Samkvæmt reglunum, ef tvær færslur finnast eyða sömu myntinni, vinnur viðskiptin sem kemur fyrst í lokaröð allra viðskipta. Hið síðara er ógilt með samstöðu reikniritinu.

Frá blockchain til DAG: losna við milliliði
Ef hægt er að koma á röð á milli tveggja viðskipta sem eyða sömu mynt (með foreldra- og barnstengingum), þá hafna allir hnútar strax slíkri tilraun til að tvöfalda eyðslu.

Frá blockchain til DAG: losna við milliliði

Ef pöntunin er ekki sýnileg frá móðursamböndum milli tveggja slíkra viðskipta eru þær báðar samþykktar í höfuðbókina og við þurfum að bíða eftir samstöðu og staðfestingu á pöntuninni á milli þeirra með því að nota pöntunarveiturnar. Þá mun fyrri viðskiptin vinna og sú seinni verður ógild.

Frá blockchain til DAG: losna við milliliði

Jafnvel þó að önnur færslan verði ógild, er hún enn í skránni vegna þess að hún hefur þegar síðari færslur sem vísa til hennar, sem brutu ekki í bága við neitt og vissu ekki að þessi viðskipti yrðu ógild í framtíðinni. Annars þyrftum við að fjarlægja foreldri góðra síðari færslur, sem myndi brjóta í bága við meginreglu netsins - allar réttar færslur eru samþykktar í höfuðbókina.

Frá blockchain til DAG: losna við milliliði

Þetta er mjög mikilvæg regla sem gerir allt kerfið ónæmt fyrir tilraunum til ritskoðunar. 

Ímyndum okkur að allir pantanaveitendur hafi samráð í tilraun til að „ritskoða“ eina tiltekna færslu. Þeir geta hunsað það og aldrei valið það sem "foreldri" fyrir viðskipti sín, en það er ekki nóg, viðskiptin geta samt verið með óbeint sem foreldri einhverra annarra viðskipta sem gefin eru út af hvaða notanda á netinu sem er ekki í samráði. Með tímanum munu slík viðskipti fá fleiri og fleiri börn, barnabörn og barnabarnabörn frá venjulegum notendum, sem vaxa eins og snjóbolti, og allir samþykktir pantanir munu þurfa að hunsa þessi viðskipti líka. Að lokum verða þeir að ritskoða allt netið, sem jafngildir skemmdarverkum.

Frá blockchain til DAG: losna við milliliði

Þannig er DAG áfram ritskoðunarþolið, jafnvel þótt samráð sé á milli pantanaveitenda, og fer þar með fram úr ritskoðunarþolnu blokkkeðjunni þar sem við getum ekki gert neitt ef námuverkamennirnir ákveða að taka ekki með neinum af viðskiptunum. Og þetta leiðir af megineign DAG: þátttaka í skránni er algjörlega sjálfstæð og án milliliða og viðskipti eru óafturkræf.

Heimild: www.habr.com

Bæta við athugasemd