Sisällysluettelo
- Ymmärtäminen Blockchain
- Tuplamenojen käsittely
- Todiste työstä ja 'kaivostoiminnasta'
Yksi kaikkien salausvaluuttakehittäjien ensisijaisista huolenaiheista on kaksinkertaisen käytön kysymys. Tämä viittaa siihen tapaukseen, että henkilö kuluttaa kyseisen salausvaluutan tasapainon useammin kuin kerran, luomalla tosiasiallisesti eron kulutustietueen ja käytettävissä olevan salausvaluutan määrän välillä sekä tapaan, jolla se jaetaan.
Kaksinkertaisen käytön ongelma on ongelma, jolla käteisellä ei ole; Jos maksat voileipästä 10 dollarin laskulla kääntämällä laskun voileivän valmistajalle, et voi kääntyä ympäri ja käyttää samaa 10 dollaria muualle. Tapahtuma, joka käyttää digitaalista valuuttaa, kuten bitcoinia, tapahtuu kuitenkin täysin digitaalisesti. Tämä tarkoittaa, että on mahdollista kopioida tapahtuman yksityiskohdat ja lähettää se uudelleen siten, että sama omistaja voi käyttää useita BTC-kertoja useita kertoja. Jäljempänä tarkastelemme kuinka kryptovaluuttakehittäjät ovat vakuuttaneet, että kaksinkertaista käyttöä ei voi tapahtua.
Avainsanat
- Digitaalisen valuutan käsitteeseen liittyvä tekninen ongelma on jonkun kyky kopioida digitaalinen raha ja käyttää sitä samanaikaisesti kahdessa tai useammassa paikassa. Tämä "kaksinkertaisen kulumisen" ongelma on estetty blockchain-pohjaisissa kryptovaluutoissa, kuten Bitcoinissa. käyttämällä konsensusmekanismia, jota kutsutaan työn todisteeksi (PoW).Tämä työ on hajautettu ”kaivostyöntekijöiden” verkosto, joka ei vain varmista aikaisempien tapahtumien uskollisuutta blockchain-pääkirjassa, vaan myös havaitsee ja estää kaksinkertaiset menot.
Ymmärtäminen Blockchain
Bitcoin-kaltaisen digitaalisen valuutan alla oleva lohkoketju ei pysty yksinään estämään kaksinkertaista käyttöä. Pikemminkin kaikki eri tapahtumat, joihin liittyy asiaan liittyvä salausvaluutta, postitetaan lohkoketjuun, missä ne varmennetaan ja suojataan erikseen vahvistusprosessilla. Bitcoinien ja monien muiden kryptovaluuttojen tapauksessa tällä tavalla vahvistetuista liiketoimista tulee peruuttamattomia; ne julkaistaan julkisesti ja pidetään jatkuvasti.
Bitcoin oli ensimmäinen merkittävä digitaalinen valuutta, joka ratkaisi kaksinkertaisen käytön ongelman. Se teki niin toteuttamalla tämän vahvistusmekanismin ja ylläpitämällä yhteistä, yleistä pääkirjajärjestelmää. Tällä tavalla bitcoin-blockchain säilyttää tietueet aikaleimattuista liiketoimista, jotka palaavat salausvaluutan perustamiseen vuonna 2009.
Bitcoin-termillä "lohko" on tiedosto, joka sisältää pysyvästi tallennettua tietoa. Kaikki viimeaikaiset tapahtumat on kirjoitettu lohkoihin, aivan kuten pörssin osakekaupan pääkirja. Tietoja lohkoista lisätään pääkirjaan muutaman minuutin välein; kaikki verkon solmut ylläpitävät kappaleen ketjuluettelosta. Käyttäjät voivat selata bitcoin-ryhmää ja tarkastella tapahtumia vain määrän suhteen. Yksityiskohdat ostajan ja myyjän henkilöllisyydestä kaikissa kaupoissa on suojattu korkeatasoisella salauksella, joka myös suojaa pääkirjaa ulkopuolisilta lähteiltä peräisin olevilta väärinkäytöksiltä. Kun blockchain-pääkirja päivitetään, niin ovat myös kaikki bitcoin-lompakot.
Tuplamenojen käsittely
Kuvittele, että sinulla on 1 BTC ja yrität käyttää sen kahdesti kahdessa erillisessä tapahtumassa. Voit yrittää tehdä tämän lähettämällä saman BTC: n kahdelle erilliselle bitcoin-lompakon osoitteelle. Molemmat näistä tapahtumista siirretään sitten vahvistamatta jääneiden liiketoimien joukkoon. Ensimmäinen tapahtuma hyväksytään vahvistusmekanismin kautta ja varmennetaan sitten seuraavaan lohkoon. Toinen tapahtuma kuitenkin tunnustettaisiin kelpaamattomaksi vahvistusprosessin avulla, eikä sitä tarkisteta. Jos molemmat tapahtumat poistetaan poolista vahvistusta varten samanaikaisesti, tapahtuma, jolla on eniten vahvistuksia, sisällytetään lohkoketjuun, kun taas toinen hylätään.
Vaikka tämä käsittelee tehokkaasti kaksinkertaisen käytön kysymystä, se ei ole ilman kysymyksiä. Esimerkiksi toisen (epäonnistuneen) tapahtuman aiotulla vastaanottajalla ei olisi osa itse tapahtumaa epäonnistua, ja silti kyseinen henkilö ei saisi ennakoituaan bitcoinia. Monet kauppiaat odottavat vähintään kuutta vahvistusta tapahtumasta (tarkoittaen, että 6 seuraavaa tapahtumaryhmää lisättiin lohkoketjuun kyseisen tapahtuman jälkeen). Tässä vaiheessa kauppias voi turvallisesti olettaa tapahtuman olevan pätevä.
Järjestelmässä on edelleen muita haavoittuvuuksia, jotka voivat sallia kaksinkertaisen kulutushyökkäyksen tapahtuvan. Esimerkiksi, jos hyökkääjä pystyy jollain tavoin hallitsemaan vähintään 51%: lla verkon voimasta, hän voi sitoutua kaksinkertaiseen kulutukseen. Jos hyökkääjä jollakin tavoin pystyi hallitsemaan tämän suuren laskentatehon, hän voisi kääntää tapahtumia ja luoda erillisen, yksityisen lohkoketjun. Bitcoinin nopea kasvu on kuitenkin käytännössä taannut, että tällainen hyökkäys on mahdoton. (Lisätietoja on kohdassa Varo näitä viittä Bitcoin-huijausta)
Todiste työstä ja 'kaivostoiminnasta' selitetty
Otetaan nyt vähän teknistä. Tapa, jolla käyttäjät havaitsevat väärinkäytökset, kuten yrityksen kaksinkertaisen kulutuksen käytännössä, tapahtuu haaroilla, pitkillä numerosarjoilla, jotka toimivat työn todisteena (PoW). Laita tietty tietoryhmä hash-toiminnon kautta (bitcoin käyttää SHA-256), ja se tuottaa vain yhden hash. "Lumivyöryn" vuoksi jopa pieni muutos mihin tahansa alkuperäisen datan osaan johtaa täysin tunnistamattomaan räjähdykseen. Alkuperäisen tietojoukon koosta riippumatta tietyn toiminnon luoma hash on samanpituinen. Hajautus on yksisuuntainen toiminto: sitä ei voida käyttää alkuperäisen tiedon hankkimiseen, vaan vain sen tarkistamiseksi, että tiivisteen luoneet tiedot vastaavat alkuperäisiä tietoja.
Minkä tahansa hash: n luominen bitcoin-tapahtumien joukolle olisi triviaalia nykyaikaiselle tietokoneelle, joten prosessin muuttamiseksi "työksi" bitcoin-verkko asettaa tietyn "vaikeustason". Tätä asetusta säädetään siten, että uusi lohko "louhitaan" - lisätään lohkoketjuun luomalla kelvollinen hajautus - noin joka 10. minuutti. Asettamisvaikeudet saadaan aikaan asettamalla hashille "tavoite": mitä alempi kohde, sitä pienempi kelvollisten hash-joukkojen on, ja sitä vaikeampaa on luoda niitä. Käytännössä tämä tarkoittaa tiivistettä, joka alkaa pitkällä nollajonolla: esimerkiksi lohkon # 429818 tiiviste on 0000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Tämä lohko sisältää 2 022 tapahtumaa, joihin liittyy hieman yli 1000 bitcoinia, sekä edellisen lohkon otsikko. Jos käyttäjä muutti yhtä tapahtumamäärää 0, 0001 bitcoinilla, tuloksena oleva hash olisi tuntematon ja verkko hylkää petoksen.
Koska tietty tietosarja voi tuottaa vain yhden tiivisteen, kuinka kaivostyöntekijät varmistavat, että ne luovat hajasteen tavoitteen alapuolella? Ne muuttavat tuloa lisäämällä kokonaisluvun, nimeltään nonce ("numero kerran käytetty"). Kun kelvollinen hash on löydetty, se lähetetään verkkoon, ja lohko lisätään lohkoketjuun.
Kaivostoiminta on kilpailukykyinen prosessi, mutta se on enemmän arpajaisia kuin kilpailua. Keskimäärin joku tuottaa hyväksyttävän todistuksen työstä kymmenen minuutin välein, mutta kuka se on, on kenen tahansa arvaus. Kaivostyöläiset yhdistyvät yhdessä lisätäkseen mahdollisuuksiaan kaivoslohkoihin, mikä tuottaa transaktiomaksuja ja rajoitetun ajan palkkion vastikään perustetuista bitcoineista.
Työn osoittaminen tekee erittäin vaikeaksi muuttaa ketjun osaa, koska tällainen muutos vaatii kaikkien seuraavien lohkojen uudelleenkaivoksen. Se myös vaikeuttaa käyttäjän tai käyttäjäryhmän verkon laskentatehon monopolistamista, koska hajautustoimintojen suorittamiseen tarvittavat koneet ja teho ovat kalliita.
