Kako opaziti napol pripravljeno verigo blokov PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Kako opaziti napol zapečeno blokovno verigo

Kadar verige in bloki ne služijo uporabnemu namenu

Približno 18 mesecev je minilo, odkar se je finančni sektor na veliko prebudil nad možnostmi pooblaščenih blockchain ali z uporabo splošnejšega izraza "razdeljene knjige". V obdobju od takrat je prišlo do cunamija dejavnosti, ki vključuje poročila o raziskavah, strateške naložbe, pilotne projekte in oblikovanje številnih konzorcijev. Bančnega sveta nihče ne more obtožiti, da potenciala te tehnologije ne jemlje resno.

Seveda je eksplozivna rast blockchain projektov spodbudila razvoj dovoljenih blockchain platform, na katerih so ti projekti zgrajeni. Na primer, naš izdelek MultiChain se je v zadnjem letu potrojila, ne glede na to, ali merimo spletni promet, mesečne prenose ali komercialne poizvedbe. In seveda obstaja veliko drugih platform, kot so BigChainDB, Chain, Corda, krediti, Elementi, Eris, Fabric, Ethereum (nameščena v zaprtem omrežju), HydraChain in Odprta veriga. Da ne omenjam še več zagonskih podjetij, ki so razvili nekakšno platformo blockchain, a je niso dali na voljo javnosti.

Za podjetja, ki želijo raziskati in razumeti novo tehnologijo, je obilo izbire na splošno dobra stvar. Vendar pa v primeru blockchain, ki še vedno ostajajo slabo opredeljeni in slabo razumljeni, ima ta kornukopija pomembno pomanjkljivost: številne razpoložljive platforme »blockchain« dejansko ne obravnavajo temeljnega problema, ki naj bi ga rešili. In kaj je to problem? Dovolite mi, da navajam kratko video definicija avtor Richard Gendal Brown, CTO, R3, v celoti:

Razdeljena knjiga je sistem, ki strankam, ki si medsebojno ne zaupajo popolnoma, omogoča soglasje o obstoju, naravi in ​​razvoju niza deljenih dejstev, ne da bi se morali zanašati na popolnoma zaupanja vredno centralizirano tretjo stran.

Za skrajni primer si oglejmo kup Lego opek, povezanih z vrvico. Če za opis tega modnega predmeta uporabljamo izraz "veriga blokov", kdo bo rekel, da ga ne opisujemo natančno? In vendar določena veriga blokov ne bo pomagala več strankam pri varni in neposredni rabi baze podatkov brez osrednjega posrednika. Podobno številne platforme »blockchain« naredijo nekaj, kar je povezano z verigami blokov, vendar tudi nimajo potrebnih lastnosti, ki bi bile podlaga za bazo podatkov »enakovreden«.

Kako opaziti napol pripravljeno verigo blokov PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
Še ena veriga blokov, ki ne pomaga pri skupni rabi podatkov - vir.

Minimalno sposobna blockchain

Da bi razumeli osnovne zahteve porazdeljene knjige, pomaga razjasniti, kako se ti sistemi razlikujejo od običajnih baz podatkov, ki jih nadzoruje ena entiteta. Na primer, razmislimo o preprostem sistemu za sledenje, kdo je lastnik delnic določenega podjetja. Glavna knjiga, kakor je implementirana v zbirko podatkov, ima za vsakega lastnika eno vrstico, ki vsebuje dva stolpca: identifikator lastnika, kot je njihovo ime, in ustrezno količino delnic.

Tu je šest ključnih načinov, kako lahko ta sistem spodleti uporabnike:

  • Ponarejanje: Prenos delnic z ene osebe na drugo brez dovoljenja pošiljatelja.
  • cenzura: Zavračanje izpolnitve zahteve nekoga, da bi nekatere delnice prenesel drugam.
  • Razveljavitev: Razveljavi prenos, ki se je zgodil nekoč v preteklosti.
  • Nelegitimnost: Spreminjanje skupne količine delnic v sistemu brez ustreznega ukrepa s strani izdajatelja.
  • Neskladnost: Dajanje različnih odgovorov na poizvedbe različnih uporabnikov.
  • odmore: Sploh se ne odzivajo na dohodne zahteve po informacijah.

Zaradi vseh teh možnosti morajo delničarji ohraniti visoko raven zaupanja v to, kdo vodi to knjigo v njihovem imenu. Izgradnja in vodenje organizacije, vredne tega zaupanja, prinaša velike težave in stroške.

Blockchains ali distribuirane knjige odstranijo potrebo po tovrstnem centralnem operaterju baz podatkov, tako da uporabnikom baze podatkov omogočajo neposredno medsebojno interakcijo med seboj. V našem primeru bi delničarji lahko varno hranili svoje delnice na blokovni verigi, s katero kolektivno upravljajo, in v taki verigi medsebojno prenašali drug drugega. (Pomanjkljivost je velika izguba zaupnosti med uporabniki verige, ki je tu ne bomo obravnavali, vendar sem že prej podrobno razpravljali.)

Vse to nas vrača k vprašanju platform blockchain. Da bi služil kot osnova za skupno rabo podatkovnih baz, mora blockchain zaščititi svoje udeležence pred vsemi šestimi napakami baz podatkov - ponarejanjem, cenzuro, razveljavitvijo, nelegitimnimi transakcijami, neskladnostjo in izpadi. Čeprav številni izdelki na trgu izpolnjujejo te zahteve, jih je kar nekaj. Te blok verige pravim "napol zapečene", ker lahko nagovarjajo nekaj teh tveganj, vendar ne vseh. Vsaj v nekaterih pogledih uporabniki baze podatkov ostajajo odvisni od dobrega vedenja posameznega udeleženca, prav takšnemu scenariju se želimo izogniti.

Ti napol pečeni blokovci se pojavljajo v poljubnem številu sort, toda trije arhetipi izstopajo kot najpogostejši ali očitni. Ne bom imenoval posameznih izdelkov, ker nočem užaliti. Startup skupnost blockchain je dovolj majhna, da se večina nas pozna na konferencah in drugih sestankih, interakcije pa so ponavadi pozitivne. Če se bodo blockchains (v smislu uporabnih baz podatkov enakovrednih) kdaj oblikovale kot skladna kategorija izdelkov, je pomembno razlikovati med napol zapečenimi in resničnimi rešitvami.

Eden validacijski blok

En vzorec, ki smo ga videli že nekajkrat, je blockchain, v katerem lahko samo en udeleženec ustvari bloke, v katerih so transakcije potrjene. Transakcije se pošiljajo na to eno vozlišče, namesto da bi se predvajale v omrežje kot celoto, zato je njihovo sprejetje podvrženo hudomušnosti te stranke in ne nekakšnemu večinskemu soglasju. Ko enkrat osrednja stranka zgradi blok, se oddaja drugim vozliščem v omrežju, ki lahko neodvisno potrdijo veljavnost transakcij in novi blok posnamejo lokalno in trajno.

Če se vrnemo na šest oblik okvare baze podatkov, je ta vrsta blockchaina še zdaleč neuporabna. Transakcije mora digitalno podpisati podjetje, katerega sredstva se gibljejo, tako da jih centralna stranka ne sme ponarediti. Te ni mogoče razveljaviti, ker vsako vozlišče ohranja svojo kopijo verige. In transakcije ne morejo opravljati nezakonitih operacij, kot je ustvarjanje sredstev zunaj zraka, ker vsako vozlišče neodvisno potrdi vsako transakcijo za pravilnost. Končno vsako vozlišče vzdržuje svojo kopijo baze podatkov, tako da je njegova vsebina vedno na voljo za branje.

Žal štirje od šestih niso dovolj. Vozlišče za preverjanje lahko enostavno cenzurira posamezne transakcije, tako da jih zavrne v vključene bloke. Tudi če so operaterji tega vozlišča pošteni, lahko sistemska ali komunikacijska napaka postane nedosegljiva, zaradi česar se zaustavi vsa obdelava transakcij. Poleg tega bo odvisno od nastavitve vozlišče za preverjanje lahko prenašalo različne različice verige blokov na različne udeležence. Glede na cenzuro in doslednost baza podatkov še vedno vsebuje eno samo točko okvare, na katero se zanašajo vsa ostala vozlišča.

Ena platforma ponuja zasnovo te sheme, v kateri bloke centralno ustvari eno vozlišče, vendar jih sklene kvorum drugih določenih vozlišč, da nakažejo soglasje. V zvezi s tveganjem neskladnosti to zagotovo pomaga. Vozlišča v sklepčnosti bodo svoje podpise posodila le eni sami različici blockchaina, ki jo je zato mogoče šteti za verodostojno. Kljub temu vozlišča kvoruma ne morejo pomagati, če generator blokov cenzurira transakcije ali izgubi povezavo z internetom. Navsezadnje ta vrsta blockchaina še vedno uporablja arhitekturo vozlišča in govoril, ne pa omrežja enakovrednih.

Blok stanja v skupni rabi

Tehnično gledano obstaja veliko podobnosti med blockchaini in bolj tradicionalnimi razdeljenimi bazami podatkov, kot sta Cassandra in MongoDB. V obeh primerih lahko transakcije začne katero koli vozlišče v omrežju in mora doseči vsa druga vozlišča kot del soglasja o stanju v bazi podatkov. Tako blockchains kot porazdeljene baze podatkov se morajo spoprijeti z zakasnitvijo (zamude pri komunikaciji, ki izhajajo iz razdalje med vozlišči) in možnostjo, da nekatera vozlišča in / ali komunikacijske povezave občasno ne uspejo.

Razdeljene baze podatkov že nekaj časa obstajajo, zato bi kateri koli razvijalec platform blockchain dobro razumel svoje algoritme za soglasje in strategije, ki jih uporabljajo za globalno urejanje transakcij in reševanje sporov. Kljub temu je pomembno, da primerjave ne jemljemo predaleč, saj se morajo blockchains spoprijeti s ključnim dodatnim izzivom - odsotnostjo zaupate med vozlišči baze podatkov. Medtem ko se porazdeljene baze podatkov osredotočajo na zagotavljanje razširljivosti, robustnosti in visoke učinkovitosti znotraj meja ene organizacije, je treba blockchains preoblikovati, da se varno prečkanje te meje.

Če se želite vrniti na šest vrst tveganj baz podatkov, vozlišče v razdeljeni bazi podatkov skrbi samo zaradi izpadov, tj. O možnosti, da druga vozlišča postanejo nedosegljiva. Vozlišča lahko varno domnevajo, da je vsaka transakcija in sporočilo v omrežju veljavna in se ne nanašajo na ponarejanje, cenzuro, razveljavitev, nelegitimnost ali neskladnost. Njihov najhujši problem je obravnavanje dveh hkratnih, vendar veljavnih transakcij, začetih na različnih vozliščih, ki vplivata na isti podatek. Reševanje teh konfliktov nikakor ni nepomembno, vendar je še vedno veliko lažje kot skrb za "Bizantinske napake“, V katerem nekateri vozli namerno delujejo, da motijo ​​delovanje drugih.

Bazo podatkov lahko delite le varno čez Zaupne meje, če vozlišča z določeno mero sumnje obravnavajo vse dejavnosti v omrežju. Na primer, vsaka transakcija, ki spreminja bazo podatkov, mora biti posamično digitalno podpisana, saj v enakovredni arhitekturi ni drugega načina, da bi ugotovili njeno pravo izvorno točko. Prav tako je treba vsako dohodno sporočilo, na primer napoved novega bloka, kritično oceniti glede na njegovo vsebino in kontekst. Za razliko od porazdeljenih baz podatkov vozlišč ne sme biti sposobna takoj in neposredno spremeniti stanja drugega vozlišča.

Nekatere platforme »blockchain« so bile razvite tako, da začnete z porazdeljeno bazo podatkov in poškropite nekatere funkcije na vrhu, da postanejo bolj blokovske. Na primer, z združevanjem transakcij v bloke in shranjevanjem hešev (digitalnih prstnih odtisov) teh blokov v bazi podatkov želijo dodati obliko nespremenljivosti. Če pa vsako vozlišče ne more biti prepričano, da njegovega seznama heš ni mogoče spremeniti z drugim vozliščem, je to vrsto nespremenljivosti enostavno igrati. Standardni odgovor na te kritike je, da se lahko vsak varnostni problem reši z dovolj časa in kodiranjem. Ampak to je bolj kot zadrževanje nekaterih zapornikov na odprtem terenu in jim skušajo preprečiti pobeg s trikotnimi žicami in jarki. Veliko varneje je uporabljati namensko betonsko konstrukcijo, katere vrata so zaklenjena in katerih okna so pregrajena.

One blockchain v oblaku

Najbolj nenavaden pojav, ki sem ga zasledila, so platforme blockchain, do katerih lahko dostopate samo prek storitve v oblaku, ki temelji na njihovi platformi. Da bi bilo jasno, ne govorimo o nekaterih udeležencih blockchaina izbiri gostovati vozlišča na svojem izbranem ponudniku oblakov, kot je Microsoft Azure or Amazon Web Services. Namesto tega je blockchain, ki lahko samo do njega dostopati prek API-jev, ki jih izpostavijo strežniki podjetja, ki ga »gosti«.

Dovolite nam, da argumentiramo, da ima centralni ponudnik blokovnih verig resnično skupino vozlišč, ki deluje pod njegovim nadzorom. Kakšna razlika je to uporabnikom sistema, ki pošiljajo zahteve API-ja in prejemajo odgovore? Udeleženci ne morejo oceniti, ali so bile transakcije vseh obdelane brez opustitve ali napake. Morda centralna služba ne deluje, ali pa namerno cenzurira ali razveljavi nekatere transakcije. In če menite, da ponudnik blockchain nima razloga za to, zakaj jih ne uporabite za gostovanje običajne centralizirane baze podatkov? Dobili boste bolj zrel izdelek z boljšimi zmogljivostmi in ne boste imeli nobenega tveganja pri delu z novimi tehnologijami. Skratka, centralizirani blockchains so približno tako uporabni kot Lego na vrvici.

Reševanje skrivnosti

Zdaj smo videli tri vrste platform, ki se tržijo kot "blockchains" in dejansko uporabljajo verigo blokov, ki pa ne rešujejo temeljnega problema, za katerega so ti sistemi zasnovani. Če povzamemo, to pomeni, da lahko enotno zbirko podatkov varno in neposredno delimo prek meja zaupanja, brez osrednjega posrednika.

Poleg tega, da opozarjam na ta poseben pojav, menim, da je poučno razmisliti, kaj bi lahko bilo podlaga za to. Zakaj toliko blockchain zagonskih izdelkov gradi izdelke, ki ne izpolnjujejo obljub te tehnologije, pogosto ne dosegajo več kot tradicionalne centralizirane ali porazdeljene baze podatkov? Zakaj toliko nadarjenih ljudi zapravlja toliko svojega časa?

Vidim dva glavna razreda razlage - tehnično in komercialno. Za začetek s tehničnim, je precej težavno ustvariti porazdeljene sisteme soglasja, ki lahko prenašajo eno ali več vozlišč, ki se zlonamerno obnašajo na nepredvidljive načine. V primeru MultiChaina smo nekoliko prevarali, saj smo kot izhodišče uporabili referenčno implementacijo bitcoina, ki je bila utrjena z bitkami, in nato nadomestili dokazovanje dela s strukturno podobnim soglasnim algoritmom, imenovanim »rudarska raznolikost«. Ekipe, ki iz nič začnejo razvijati blokirno vozlišče, morajo globoko razmisliti o asinhronih in nasprotnih procesih - kombinaciji, ki jih ima malo programerjev. Zagotovo lahko razumem skušnjavo, da bi uporabil bližnjico, kot je uporaba enega vozlišča za ustvarjanje blokov ali kopiranje v obstoječi porazdeljeni bazi podatkov ali samo izvajanje vozlišč v zaupanja vrednem okolju. Izbira katerega koli od teh nedvomno olajša življenje razvijalcem, tudi če to spodkopava celoten namen.

Kar se tiče komercialnih razlogov, se zdi, da se vsak zagon približa možnosti blockchain iz drugega zornega kota. Tu smo v Coin Sciences osredotočeni na to, da postanemo prodajalec (baze podatkov) programske opreme, zato brezplačno distribuiramo MultiChain, hkrati pa razvijamo vrhunsko vozlišče z dodatnimi funkcijami. Drugi zagonski podjetji želijo prodati naročniške storitve, zato bodo seveda zgradili platformo, ki si je kupci ne morejo sami privoščiti. Nekateri upajo, da bodo centralno nadzirali blockchain ali pomagali svojim partnerjem, da to storijo (nenavadna ambicija za tehnologijo disintermediation!) In so seveda vpleteni v algoritme soglasja, ki temeljijo na enem vozlišču. In končno, obstajajo podjetja, katerih osnovni cilj je prodaja svetovalnih storitev, v tem primeru njihova platforma sploh ne potrebuje delovanja, če spletna stran prinaša nekaj večjih strank.

Mogoče je še eno vprašanje, da v nekaterih blockchain podjetjih vodijo ljudje, ki nedvomno burijo talente, a nimajo globljega razumevanja same tehnologije. Pri startupih, ki oblikujejo novo področje, je verjetno, da strateške odločitve sprejmejo ljudje, ki razumejo naravo tega področja in kako se razlikuje od tistega, kar je bilo prej. Zdi se, da se ni malo zagonskih zastopnikov blockchain, ki so se naslikali v kot, zasledili vizijo izdelka, ki je privlačna za njihove kupce, vendar je dejansko ni mogoče zgraditi.

Kot uporabnik blockchain se lahko izognete temu, da bi vas te napake ujele? Pri ocenjevanju določene platforme blockchain se prepričajte, da izpolnjuje šest zahtev varne delitve baze podatkov med seboj: preprečevanje izpadov in neskladnosti, pa tudi ponarejanje transakcij, cenzura, preusmeritev in nelegitimnost. In bodite pozorni na razlage, ki so sestavljene iz prevelikega mrmranja ali mahanja z roko - verjetno pomenijo, da je odgovor ne.

Prosimo, pošljite kakršne koli pripombe na LinkedIn.

Vir: https://www.multichain.com/blog/2016/12/spot-half-baked-blockchain/

Časovni žig:

Več od Večnamenska veriga