Kuinka havaita puolivalmis lohkoketju PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Kuinka huomata puoli leiponut ketju

Kun ketjut ja lohkot eivät ole hyödyllisiä

Noin 18 kuukautta on kulunut siitä, kun finanssisektori heräsi massiivisesti luvanvaraisten lohkoketjujen mahdollisuuksiin tai käyttää yleisempiä termiä, ”jaetut pääkirjat”. Tämän jälkeen on tapahtunut tsunamia, joka sisältää tutkimusraportteja, strategisia investointeja, pilottihankkeita ja monien yhteenliittymien muodostumista. Kukaan ei voi syyttää pankkimaailmaa siitä, ettei se ota vakavasti tämän tekniikan potentiaalia.

Tietenkin blockchain-projektien räjähdysmäinen kasvu on johtanut luvanvaraisten blockchain-alustojen kehittämiseen, joihin nämä projektit on rakennettu. Esimerkiksi tuotteemme moniketjuisille käyttö on kolminkertaistunut viime vuoden aikana riippumatta siitä, mitataanko verkkoliikennettä, kuukausittaisia ​​latauksia tai kaupallisia tutkimuksia. Ja tietysti on monia muita alustoja, kuten BigChainDB, Ketju, corda, Laajuus, elementit, Eris, Kangas, Ethereum (otettu käyttöön suljetussa verkossa), HydraKetju ja Avoin ketju. Puhumattakaan vielä useammista aloittelijoista, jotka ovat kehittäneet jonkinlaisen blockchain-alustan, mutta eivät ole asettaneet sitä julkisesti saataville.

Yrityksille, jotka haluavat tutkia ja ymmärtää uutta tekniikkaa, runsas valinta on yleensä hyvä asia. Kuitenkin lohkoketjuissa, jotka pysyvät edelleen löysästi määriteltyinä ja huonosti ymmärretyinä, tällä rukoskopialla on huomattava haittapuoli: monet käytettävissä olevista "blockchain" -alustoista eivät itse asiassa käsittele ydinongelmaa, jonka niiden on tarkoitus ratkaista. Ja mikä tuo ongelma on? Sallikaa minun lainata lyhyt videomääritys kirjoittanut Richard Gendal Brown, CTO R3, kokonaan:

Hajautettu pääkirja on järjestelmä, jonka avulla osapuolet, jotka eivät täysin luota toisiinsa, pääsevät yksimielisyyteen yhteisten tosiasioiden joukon olemassaolosta, luonteesta ja kehityksestä ilman, että heidän tarvitsee luottaa täysin luotettuun keskitettyyn kolmanteen osapuoleen.

Otetaanksesi äärimmäinen esimerkki, harkitse joukko Lego-tiilet, jotka on sidottu narulla. Jos käytämme termiä "lohkoketju" kuvaamaan tätä muotituotetta, kuka sanoa, että emme kuvaa sitä oikein? Ja vielä, kyseinen lohkoketju ei auta useita osapuolia turvallisesti ja suoraan jakamaan tietokantaa ilman keskitettyä välittäjää. Samoin monet ”blockchain” -alustat tekevät jotain lohkoketjuihin liittyvää, mutta myös puuttuvat tarvittavat ominaisuudet peer-to-peer-tietokannan perustaksi.

Kuinka havaita puolivalmis lohkoketju PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.
Toinen lohkoketju, joka ei auta tietokannan jakamisessa - lähde.

Pienin elinkelpoinen lohkoketju

Hajautetun pääkirjan perusvaatimusten ymmärtämiseksi se auttaa selventämään, miten nämä järjestelmät eroavat tavallisista tietokannoista, joita yksi kokonaisuus hallitsee. Tarkastellaan esimerkiksi yksinkertaista järjestelmää jäljittää, kuka omistaa tietyn yrityksen osakkeet. Pääkirjakirjassa, sellaisena kuin se on toteutettu tietokantaan, on yksi rivi jokaiselle omistajalle, joka sisältää kaksi saraketta: omistajan tunniste, kuten heidän nimi, ja vastaava määrä osakkeita.

Tässä on kuusi tärkeätä tapaa, joilla tämä järjestelmä voi epäonnistua käyttäjillään:

  • väärentäminen: Osakkeiden siirtäminen henkilöltä toiselle ilman lähettäjän lupaa.
  • Sensuuri: Kieltäytyminen täyttämästä jonkun pyyntöä siirtää joitakin osakkeita muualle.
  • Muutos: Kumoaman jossain vaiheessa aikaisemmin tapahtuneen siirron.
  • avioton syntyperä: Järjestelmän osakkeiden kokonaismäärän muuttaminen ilman liikkeeseenlaskijan vastaavaa toimenpidettä.
  • Epäjohdonmukaisuus: Eri vastausten antaminen eri käyttäjien tiedusteluille.
  • Seisokkeja: Ei reagoi saapuviin tietopyyntöihin ollenkaan.

Kaikkien näiden mahdollisuuksien takia osakkeenomistajien on ylläpidettävä suurta luottamusta siihen, kuka johtaa tätä pääkirjaa heidän puolestaan. Tämän luottamuksen arvoisen organisaation rakentaminen ja johtaminen aiheuttaa vaivaa ja kustannuksia.

Lohkoketjut tai hajautetut pääkirjat poistavat tarpeen tällaiselta keskustietokannan operaattorilta, antamalla tietokannan käyttäjille mahdollisuuden olla vuorovaikutuksessa suoraan toistensa kanssa. Esimerkissämme osakkeenomistajat voivat turvallisesti pitää osakkeitaan ryhmäketjussa, jota he yhdessä hallinnoivat, ja siirtää toisiaan heti kyseisen ketjun kautta. (Haittana on ketjun käyttäjien välinen merkittävä luottamuksellisuuden menetys, jota emme käsittele tässä, mutta olen aiemmin keskusteltiin pitkään.)

Kaikki tämä palauttaa meidät takaisin kyselyyn blockchain-alustoista. Toimistotietokannan jakamiseksi toimivana perustana ketju on suojattava osallistujiaan kaikilta kuudesta tietokantavirheestä - väärentämiseltä, sensuurilta, kääntämiseltä, laittomilta tapahtumilta, epäjohdonmukaisuuksilta ja seisokkeilta. Vaikka monet markkinoilla olevat tuotteet täyttävät nämä vaatimukset, niin monet niistä ovat puutteita. Kutsun näitä lohkoketjuja "puolivalmiiksi", koska ne saattavat osoittaa jonkin verran näistä riskeistä, mutta ei kaikkia. Ainakin joissain suhteissa tietokannan käyttäjät ovat riippuvaisia ​​yksittäisen osallistujan hyvästä käytöksestä, mikä on juuri tilanne, jonka haluamme välttää.

Näitä puolivalmiita lohkoketjuja on monen tyyppisiä, mutta kolme arkkityyppiä erottuu yleisimmistä tai ilmeisimmistä. En aio nimetä yksittäisiä tuotteita, koska en halua loukata. Blockchain-aloitusyhteisö on riittävän pieni, että suurin osa meistä tuntee toisensa konferenssien ja muiden kokousten kautta, ja vuorovaikutus on yleensä positiivista. Siitä huolimatta, jos lohkoketjut (hyödyllisten vertaisverkkojen tietokantojen merkityksessä) nousevat yhä johdonmukaiseksi tuoteryhmäksi, on tärkeää erottaa puoli leipotut ja todelliset ratkaisut.

Yksi validointi lohkoketju

Yksi malli, jonka olemme nähneet muutaman kerran, on lohkoketju, jossa vain yksi osallistuja voi luoda lohkot, joissa tapahtumat vahvistetaan. Tapahtumat lähetetään tälle yhdelle solmulle sen sijaan, että niitä lähetettäisiin koko verkkoon, joten niiden hyväksyminen edellyttää pikemminkin puolueen kappeleita kuin jonkinlaista enemmistön konsensusta. Silti kun tämä keskuspuolue on rakentanut lohkon, se lähetetään verkon muille solmuille, jotka voivat itsenäisesti vahvistaa sisäisten tapahtumien pätevyyden ja tallentaa uuden lohkon paikallisesti ja pysyvästi.

Palataksesi tietokannan kuuden toimintamuodon muotoon, tämäntyyppinen blockchain ei ole kaukana hyödytöntä. Tapahtumat on allekirjoitettava digitaalisesti sen yksikön kanssa, jonka varat siirretään, joten keskuspuolue ei voi väärentää niitä. Niitä ei voida peruuttaa, koska jokainen solmu ylläpitää omaa ketjun kopiota. Ja transaktiot eivät voi suorittaa laittomia toimintoja, kuten luoda omaisuutta tyhjästä, koska jokainen solmu vahvistaa itsenäisesti jokaisen tapahtuman oikeellisuuden. Lopuksi, jokainen solmu ylläpitää omaa kopiotaan tietokannasta, joten sen sisältö on aina luettavissa.

Valitettavasti neljä kuudesta ei riitä. Validoiva solmu voi helposti sensuroida yksittäisiä tapahtumia kieltäytymällä sisällyttämästä niitä luomiinsa lohkoihin. Vaikka tämän solmun operaattorit ovat rehellisiä, järjestelmä- tai tietoliikennevirhe voi tehdä siitä poissa käytöstä, mikä aiheuttaa kaiken tapahtumien käsittelyn pysähtymisen. Lisäksi asennuksesta riippuen validointisolmu voi pystyä lähettämään lohkon ketjun eri versiot eri osallistujille. Tsensuurin ja johdonmukaisuuden kannalta tietokanta sisältää edelleen yhden vikakohdan, johon kaikki muut solmut luottavat.

Yksi alusta tarjoaa käännöksen tästä järjestelmästä, jossa lohkot generoidaan keskitetysti yhden solmun avulla, mutta muiden nimettyjen solmujen koorumi allekirjoittaa ne konsensuksen osoittamiseksi. Epäjohdonmukaisuuden riskissä tämä varmasti auttaa. Kvoorumin solmut lainaavat allekirjoituksensa vain yhdelle lohkotunnuksen versiolle, jota voidaan sen vuoksi pitää arvovaltaisena. Siitä huolimatta koorumin solmut eivät voi auttaa, jos lohkogeneraattori sensuroi tapahtumia tai kadottaa yhteyden Internetiin. Viime kädessä tämäntyyppinen ryhmäketju käyttää silti keskittimen arkkitehtuuria pikemminkin kuin vertaisverkkoa.

Jaettu tilaketju

Teknisesti ottaen lohkoketjujen ja perinteisempien hajautettujen tietokantojen, kuten Cassandra ja MongoDB, välillä on monia samankaltaisuuksia. Molemmissa tapauksissa transaktiot voi aloittaa mikä tahansa verkon solmu, ja niiden on saavutettava kaikki muut solmut osana yhteisymmärrystä tietokannan kehitystilasta. Sekä lohkoketjut että hajautetut tietokannat joutuvat selviytymään latenssista (tiedonsiirtoviiveistä, jotka johtuvat solmujen välisestä etäisyydestä) ja mahdollisuuteen, että jotkut solmut ja / tai tietoliikenneyhteydet epäonnistuvat.

Hajautetut tietokannat ovat olleet olemassa jo jonkin aikaa, joten kaikilla blockchain-alustan kehittäjillä olisi hyvä ymmärtää niiden konsensusalgoritmit ja strategiat, joita he käyttävät tapahtumien globaaliin tilaamiseen ja konfliktien ratkaisemiseen. Siitä huolimatta on tärkeää, ettei vertaa vertailua liian pitkälle, koska lohkoketjujen on vastattava ratkaisevaan lisähaasteeseen - luota tietokannan solmujen välillä. Kun hajautetut tietokannat keskittyvät skaalautuvuuden, kestävyyden ja korkean suorituskyvyn tarjoamiseen yhden organisaation rajoissa, lohkoketjut on suunniteltava uudelleen turvallisuuden varmistamiseksi ylitys nuo rajat.

Palataksesi kuuteen tietokantatyyppityyppimme hajautetun tietokannan solmu tarvitsee pelätä vain seisokkeja, ts. Mahdollisuutta, että muut solmut eivät ole käytettävissä. Solmut voivat turvallisesti olettaa, että jokainen verkossa tapahtuva tapahtuma ja viesti on pätevä, eivätkä ne koske väärentämistä, sensuuria, peruuttamista, lainvastaisuutta tai epäjohdonmukaisuutta. Heidän pahin ongelma on kahden samanaikaisen, mutta voimassa olevan tapahtuman käsitteleminen, jotka on aloitettu eri solmuilla ja jotka vaikuttavat samaan tietokappaleeseen. Näiden konfliktien ratkaiseminen ei ole mitenkään triviaalia, mutta se on silti paljon helpompaa kuin huolehtia "Bysantin viat”, Jossa jotkut solmut tahallaan häiritsevät toisten toimintaa.

Tietokantaa voidaan jakaa vain turvallisesti poikki luota rajoihin, jos solmut käsittelevät kaiken verkon toimintaa tietyllä epäilyllä. Esimerkiksi jokainen tietokantaa modifioiva tapahtuma on allekirjoitettava erikseen digitaalisesti, koska vertaisarkkitehtuurissa ei ole muuta tapaa tietää sen todellinen lähtökohta. Samoin jokainen saapuva viesti, kuten uuden lohkon ilmoittaminen, on arvioitava kriittisesti sen sisällön ja kontekstin suhteen. Toisin kuin hajautetuissa tietokannoissa, solmut eivät saa pystyä muuttamaan toisen solmun tilaa välittömästi ja suoraan.

Joitakin ”blockchain” -alustoja on kehitetty aloittamalla hajautetulla tietokannalla ja ripottelemalla joitain ominaisuuksia päälle, jotta ne olisivat blockchainisia. Esimerkiksi ryhmittelemällä tapahtumia lohkoihin ja tallentamalla näiden lohkojen tiivistelmiä (digitaalisia sormenjälkiä) tietokantaan, niiden tarkoituksena on lisätä muoto muuttumattomuudelle. Mutta ellei kukin solmu voi olla varma, että toista solmua ei voida muuttaa sen hajautusluetteloa, tämä tyyppinen muuttumattomuus pelataan helposti. Tavanomainen vastaus näihin kritiikoihin on, että jokainen turvallisuusongelma voidaan ratkaista riittävällä ajalla ja koodauksella. Mutta tämä on pikemminkin kuin joidenkin vankien pitäminen avoimella kentällä ja yrittäminen estää heitä pakenemasta kolmilankoilla ja ojilla. On paljon turvallisempaa käyttää tarkoitukseen rakennettua betonirakennetta, jonka ovet ovat lukittu ja jonka ikkunat ovat estetty.

Yksi pilvi lohkoketju

Ylivoimaisimpana ilmiönä, jonka olen nähnyt, on blockchain-alustoja, joihin pääsee vain heidän kehittäjänsä pilvipohjaisen alusta-palveluna -palvelun kautta. Selvyyden vuoksi emme puhu joistakin blockchain-osallistujista valita isännöidä solmuja valitsemillaan pilvipalveluntarjoajilla, kuten Microsoft Azure or Amazon Web Services. Pikemminkin tämä on lohkoketju, joka voi vain pääsyä sovellusliittymien kautta, jotka paljastavat sitä palvelevan yrityksen palvelimet.

Myönnettäkäämme argumentin vuoksi, että keskitetyllä lohkotarjoajan toimittajalla on todella ryhmä solmuja, jotka toimivat sen valvonnassa. Mitä eroa tällä on järjestelmän käyttäjille, jotka lähettävät API-pyyntöjä ja vastaanottavat vastauksia? Osallistujilla ei ole tapaa arvioida, onko kaikkien tapahtumia käsitelty ilman puutteita tai virheitä. Ehkä keskuspalvelussa on toimintahäiriö tai ehkä sensuroidaan tai peruutetaan joitain tapahtumia tarkoituksella. Ja jos uskot, että blockchain-palveluntarjoajalla ei ole mitään syytä siihen, miksi et käytä niitä sen sijaan tavallisen keskitetyn tietokannan isännöintiin? Saat kypsemmän tuotteen, jolla on parempi suorituskyky, etkä kärsi mistään uusien tekniikoiden kanssa työskentelemisen riskeistä. Lyhyesti sanottuna keskitetyt lohkoketjut ovat suunnilleen yhtä hyödyllisiä kuin Lego merkkijonossa.

Salaperäisen ratkaisu

Olemme nyt nähneet kolme tyyppiä alustoja, jotka markkinoivat itseään "blockchainsina" ja todellakin käyttävät jonkin verran lohkoketjua, mutta jotka eivät ratkaise perusongelmaa, johon nämä järjestelmät on suunniteltu. Yhteenvetona voidaan todeta, että yhden tietokannan voi jakaa turvallisesti ja suoraan luottamusrajojen yli ilman keskitettyä välittäjää.

Sen lisäksi, että huomautan tälle erikoiselle ilmiölle, uskon, että on opettavaista pohtia sitä, mikä sen taustalla voisi olla. Miksi niin monet blockchain-aloittelijat rakentavat tuotteita, jotka eivät täytä tämän tekniikan lupauksia ja saavat usein aikaan vain perinteisiä keskitettyjä tai hajautettuja tietokantoja? Miksi niin monet lahjakkaat ihmiset tuhlaavat niin paljon aikaa?

Näen kaksi selitysryhmää - teknisen ja kaupallisen. Aluksi teknisestä on melko hankala luoda hajautettuja konsensusjärjestelmiä, jotka sietävät yhtä tai useampaa solmua, jotka käyttäytyvät haitallisesti ennakoimattomilla tavoilla. MultiChainin tapauksessa pelasimme jonkin verran käyttämällä bitcoinin taisteluvaikutteista referenssitekniikkaa lähtökohtana ja korvaamalla sitten työn todisteet rakenteellisesti samanlaisella konsensusalgoritmilla, jota kutsutaan ”kaivosdiversiteetti”. Joukkueen, joka kehittää blockchain-solmua tyhjästä, on mietittävä syvästi asynkronisia ja vastustavia prosesseja - yhdistelmää, josta harvoilla ohjelmoijilla on kokemusta. Ymmärrän varmasti houkutuksen ottaa pikakuvakkeita, kuten käyttää yhtä solmua lohkojen luomiseen tai piggybacking olemassa olevaan hajautettuun tietokantaan tai käyttää vain solmuja luotetussa ympäristössä. Jokin näistä valitseminen helpottaa kehittäjien elämää epäilemättä, vaikka tämä heikentäisi koko asiaa.

Kuten kaupallisista syistä, jokainen käynnistys näyttää lähestyvän blockchain-tilaisuutta eri näkökulmasta. Täällä, Coin Sciences, olemme keskittyneet tulemaan (tietokanta) ohjelmistotoimittajaksi, joten levitämme MultiChain-palveluita ilmaiseksi kehittäessämme premium-solmua, jossa on lisäominaisuuksia. Muut startupit haluavat myydä liittymäpalveluita, joten ne luonnollisesti rakentavat alustan, jota asiakkaat eivät voi isännöidä. Jotkut toivovat hallitsevansa keskusketjua keskipisteessä tai auttamalla kumppaneitaan tekemään niin (outo kunnianhimo disintermediaatioteknologialle!) Ja ovat luonnollisesti vetoavat yksimielisyysalgoritmeihin, jotka tukeutuvat yhteen solmuun. Ja lopuksi, on yrityksiä, joiden päätavoitteena on myydä konsultointipalveluita, jolloin niiden alustan ei tarvitse toimia ollenkaan, kunhan sen verkkosivusto tuo mukanaan joitain suuria asiakkaita.

Toinen ongelma on ehkä se, että jotkut ryhmäketjuyritykset johtavat ihmisiä, jotka ovat epäilemättä purskahtaneet kykyjä, mutta joilla ei ole syvää ymmärrystä itse tekniikasta. Uudessa kentässä poistuvissa startup-yrityksissä on todennäköisesti välttämätöntä, että strategiset päätökset tehdään ihmisille, jotka ymmärtävät kentän luonteen ja miten se eroaa aikaisemmasta. Vain harvat blockchain-aloittelijat näyttävät olevan maalanneet itsensä nurkkaan pyrkiessään tuotevisioon, joka on asiakkaiden kannalta houkutteleva, mutta jota ei voida rakentaa.

Kuinka voit estää lohkoketjujen käyttäjää näiden väärinkäytösten kimppuun? Arvioidessasi tiettyä blockchain-alustaa, muista kysyä, täyttääkö se turvallisen vertaistietokannan jakamisen kuusi vaatimusta: seisokkien ja epäjohdonmukaisuuksien estäminen sekä tapahtumien väärentäminen, sensuuri, peruuttaminen ja laittomuus. Varo selityksiä, jotka koostuvat liiallisesta murista tai käden heiluttamisesta - ne todennäköisesti tarkoittavat, että vastaus on kieltävä.

Ole hyvä ja lähetä kommentit LinkedIn.

Lähde: https://www.multichain.com/blog/2016/12/spot-half-baked-blockchain/

Aikaleima:

Lisää aiheesta moniketjuisille