Kaj je blockchain oz veriga blokov po slovensko?
Zadnjih nekaj let se vsi pogovarjamo o tehnologiji blockchain oziroma po slovensko o tehnologiji verige blokov. Marsikdo ta izraz povezuje samo z kriptovalutami ter kriptovaluto BitCoin, kar pa seveda ni edino kar lahko “postavimo” na blockchain. Večina novih uporabnikov misli, da je blockchain nastal leta 2008, vendar je to zmotno razmišljanje. Deli Blockchain tehnologije so bili opisani že mnogo let pred letom 2008. “Merkle tree” je bil opisan že leta 1979, Dr.Chaum je leta 1989 opisal skupino “zaupanja vrednih računalnikov za potrjevanje dogodkov”, istega leta je ustanovil podjetje DigiCash, leta 1991 sta Stuart Haber in Scott Stornetta objavila članek o digitalnem potrjevanju dokumentov ter leta 1992 nadgradila idejo z uporabo Merklovega drevesa. To je vse dokaz, da je tehnologija obstajala že pred letom 2008, vendar pa je zagon za razvoj in množično uporabo dal ravno Bitcoin katerega je posameznik oziroma skupina posameznikov pod psevdonimom Satoshi Nakamoto (njegova oz njihova identiteta do danes še ni znana), predstavil njeno uporabno vrednost v t. i. beli knjigi Kriptovalute Bitcoin (Bitcoin whitepaper). V tem dokaj kratkem dokumentu, je opisan prvotni namen in protokol za delovanje omrežja Bitcoin.
“Ampak kaj dejansko je blokchain?”
Ker je članek namenjen spoznavanju z tehnologijo blockchain bomo vse skupaj opisali bolj prijazno začetnikom kot tehnološkim poznavalcem.
Tehnologija blockchain je digitalni zapis, nekateri jo imenujejo tudi glavna knjiga (ledger), ki vsebuje zapise transakcij iz različnih področij in ne služi zgolj za zapise finančnih transakcij. Že tukaj lahko vidimo, da so kriptovalute le mahen del uporabne vrednosti tehnologije veriženja blokov.
Blockchain predstavlja zaporedje podatkov o določeni transakciji. Ti zapisi se imenujejo podatkovni bloki, ki so zaščiteni s kriptografijo in so med seboj povezani, da tvorijo verige. Gre za podatke o različnih transakcijah, kot so recimo datum, čas, znesek transakcije, ipd. Teh podatkov se ne da popravljati oziroma brisati. Ko je podatek zapisan v blok in je ta potrjen, je vse skupaj doseljivo in preverljivo na blockchainu. Možnosti za manipulacije tako rekoč ni.
Blockchain tehnologija se je razvila vzporedno skupaj s kriptovaluto Bitcoin, kot rečeno, pa njeni začetki segajo že veliko bolj v preteklost. Z uporabo tehnologije za delovanje omrežja Bitcoin, pa je vse skupaj dobilo zalet, kateri je tehnologijo pripeljal tako daleč, da se danes pogovarjamo o tem, da je blockchain tehnologija tehnologija prihodnosti.
Njen avtor Satoshi Nakamoto, je imel v mislih verigo blokov, kamor bi se shranjevale vse potrjene transakcije in jih ne bi bilo mogoče spreminjati. Tehnologija veriženja blokov omogoča varnejše in hitrejše transakcije, ki ostanejo zapisane, ter jih je skorajda nemogoče spremeniti. Posamični bloki, ki skupaj tvorijo celoto, vsebujejo informacije o predhodnem bloku. Pri teh informacijah gre za čas transakcije in pa podatke o sami transakciji.
Kot že rečeno, podatkov v že potrjenih blokih, ni mogoče spreminjati in jih ponarejati. To pa nas pripelje do tega, da je največja vrednost Bitcoina ter same tehnologije, da ne potrebujeta vmesnega člena, zaupanja vrednega posrednika.
Kako blockchain deluje?
Izraz blockchain je sestavljen iz dveh angleških besed; block (blok) in chain (veriga). Osnovni gradniki te tehnologije so bloki, ki obstajajo zgolj v digitalni obliki, torej ‘v računalniku’. Bloki se zaporedno vežejo v verigo. Ko blok zapiše oziroma shrani nove podatke, je dodan v verigo blockchaina. Zato, da je blok dejansko dodan v verigo, se mora transakcija zgoditi, slediti mora potrditev transakcije. To je storjeno s pomočjo rudarjenja, torej računalnikov, ki rudarijo Bitcoin, hkrati pa zapisujejo transakcije v bloke, za kar so v zameno nagrajeni.
Za potrjevanje transakcij, so lastniki naprav za rudarjenje, s katerimi transakcije potrujejo, zapisujejo v bloke, plačani z Bitcoini oziroma drugimi kovanci. Te zapisi transakcij so nato v večini primerov javno vidni vsem v blockexplorerju, skupaj z datumom, zapisom naslova pošiljatelja ter drugimi informacijami.
Posamičen blok vsebuje informacijo predhodnega bloka, časovni žig ter podatke o prenosu ali transakciji.
Vrsta podatkov, shranjenih v bloku, je odvisna od tipa blockchaina. Bitcoin blockchain omrežje denimo shranjuje podrobnosti o določeni transakciji: podatke o pošiljatelju in prejemniku, ter količini kovancev, ki so udeleženi v transakcijo. Seveda pa se vsa omrežja nadgrajujejo in količina podatkov zapisanih v bloku se lahko močno razlikujejo. Tudi Bitcoin je že doživel nadgradnje in recimo z SegWit nadgradnjo je močno povečal število transakcij v bloku. Ko je iz bloka izvzel digitalne podpise, kateri so lahko zavzeli tudi do dve tretini velikosti bloka, je s tem močno povečal število transakcij v enem bloku.
Vsak blok ima tudi hash, ki identificira posamezen blok in njegovo vsebino (podatke) ter je vedno edinstven, kot prstni odtis. Hash je sicer matematična funkcija, ki vhod poljubne dolžine pretvori v šifriran in kriptografsko zaščiten izhod fiksne dolžine. Ko je blok s podatki enkrat ustvarjen, je izračunan tudi njegov unikatni hash. Če bi torej kdorkoli želel spremeniti podatke v bloku, bi se spremenil tudi njegov hash, in blok ne bil več isti. Tukaj je glavna varovalka, da se veriga za nazaj ne da spreminjati.
Naslednji del vsakega bloka bi lahko poimenovali ‘potrjevalni’ hash prejšnjega bloka. To je dejansko vezni del, ki ustvari verigo in zaradi tega je blockchain tehnologija tako varna. Hashi posameznih blokov in potrjevalni hashi se morajo namreč ujemati, točno tako kot so bili ustvarjeni.
Po strukturi so podatkovni bloki odporni na napade, ki bi lahko spremenili informacije v samem bloku. Distribuiranje blokov se vrši preko P2P mrežne povezave, ki obenem skrbi tudi za izdelavo novih blokov. Ko se v nov blok zapiše informacij je ta zapisana za vedno. Ko blok zapiše oziroma shrani nove podatke, je dodan v verigo blokov.
Da je blok dodan v verigo blokov, se mora transakcija zgoditi, slediti mora potrditev transakcije, za kar skrbijo rudarji, torej računalniki, ki rudarijo Bitcoin oziroma kovance, hkrati pa tudi potrjujejo različne transakcije.
Za ustvarjanje blokov in njihovega veriženja, tehnologija ne potrebuje upravitelja, saj vse skupaj poteka preko P2P omrežja. To omrežje je decentralizirano- razpršeno, kar pomeni, da lahko do zgodovine transakcij dostopajo vsi, prav tako pa lahko vsi potrjujejo nove transakcije.
Razlika med centraliziranim in decentraliziranim omrežjem je to, da ima centralizirano omrežje na vrhu neko vodilno institucijo (na primer: banka), decentralizirano pa je razdeljeno med večje število deležnikov, v tem primeru rudarjev oz. nodov.
Kaj je Proof-of-work (sl. dokazovanje dela)
Bitcoin omrežje deluje po modelu Proof-of-Work (PoW). To pomeni da morajo vsi, ki ustvarjajo bloke (t. i. rudarji), s pomočjo svojih računalnikov tekmovati pri reševanju zapletenih računskih enačb, da bi potrdili bloke in transakcije, ki se vršijo v omrežju.
Pri ustvarjanju blokov v Bitcoin omrežju je čas reševanja enačb nastavljen na približno 10 minut. To pomeni, da v teoriji rudar v sistemu najde en blok vsakih 10 minut. V blok lahko zapišemo točno 1Mb informacij. Če se v omrežju zgodi več kot 1Mb informacij potem je potrebno počakati naslednji prosti blok.
Kot smo že napisali verige blokov namesto osrednjega, centralnega sistema za upravljanje blockchaina uporabljajo peer-to-peer (P2P) omrežje. V tem decentraliziranem omrežju so uporabniki med sabo enakovredni, pridruži pa se mu lahko vsak, ki ob pridružitvi pridobi popolno kopijo podatkov verige blokov.
Ko nekdo ustvari nov blok, se ta pošlje vsem uporabnikom v omrežju. Vsak uporabnik (t. i. vozlišče) nato preveri blok (hash), da se prepriča, da ni bil spremenjen. Če je soglasno med vsemi vozlišči vse v redu, nato vsako vozlišče doda ta blok v svojo kopijo verige blokov.
Vsa vozlišča v določenem omrežju torej ustvarjajo soglasje (Consensus) ter določijo, kateri bloki so veljavni in kateri ne. Bloki, ki so prirejeni, bodo zavrnjeni s strani drugih vozlišč v omrežju. Da bi nekdo lahko torej uspešno spremenil verigo blokov bi moral prevzeti nadzor nad več kot 50 % celotnega omrežja. Šele nato bi lahko njegov spremenjen blok sprejeli vsi ostali, ko bi videli da je večina potrdila blok kot pravilen. Kar pa je skoraj nemogoče izvesti.
Javna blockchain omrežja, denimo Bitcoin ali Ethereum, za svoje delovanje sicer potrebujejo kriptovalute, medtem ko pri zasebnih omrežjih to ni nujno potrebno. Zasebna blockchain omrežja sicer ohranijo nekatere glavne lastnosti te tehnologije, vendar izgubijo eno ključno — decentralizacijo. Pravilno bi bilo torej, če bi rekli, da so zasebna blockchain omrežja centralizirana in uporabljajo zgolj t. i. ‘tehnologijo digitalno porazdeljene računovodske knjige’. Po strogi definiciji prav zaradi tega ne sodijo med prava blockchain omrežja, ki sicer iz igre izločajo posrednike.
Tako nekatera podjetja za uporabo tehnologije uporabljajo tako imenovani “side-chain”. Uporabljajo popolno kopijo tehnologije blockchain, vendar popolnoma upravljajo z omrežjem. In kot opisano zgoraj, glede na to da imajo v rokah več kot 50% omrežja, spreminjajo zapise v verigi. Kar pa izgubi glavno prednost blockchain tehnologije.
Kot smo že zapisali se blockchain lahko uporablja na veliko področjih, vendar je BitCoin in uporaba v finančnem svetu pripeljal tehnologijo na nivo kot je danes. Brez Bitcoina bi po vsej verjetnosti tehnologija ostala na nivoju kot je bila pred izdajo bele knjige. Ob tem dogodku pa so posamezniki videli veliko priloznosti z uporabo te tehnologije. V Bitcoinu veliko ali velika večina uporabnikov vidi prednost v tem, da lahko izloči posrednike pri izvajanju različnih finančnih transakcij. S tem pa bankam in finančnim institucijam onemogočimo, da kontrolirajo kam, s kom, koliko in komu bomo poslali naša sredstva. S tehnologijo blockchain je samo naša stvar kako bomo razpolagali s svojimi sredstvi. In to je vse kar je pomembno. Ne smemo pa pozabiti, da so vse transakcije zapisane in javno dostopne. Tako lahko vsak, ki ima dostop do interneta pogleda kdaj, od kje in kam je kaksna transakcija potovala. Vse kar je potrebno povezati je naslov ter osebo. Dandanes že obstajajo orodja in podjetja katera že kvalitetno sledijo transakcijam in tudi po več letih odkrijejo sumljive transakcije ter jih povežejo z določenimi posamezniki. Ta orodja se bodo v prihodnosti še razvijala in zapomniti si je treba, da bo vsaka transakcija ostala na blockchainu in se nikoli ne bo izbrisala.
Nekatere možnosti uporabe verige blokov
Računovodstvo
V računovodstvu bi tehnologijo uporabili za zapisovanje finančnih in blagovnih transakcij. S tem bi bile vse transakcije zapisane na verigi in bi jih bilo nemogoče spreminjati. Tako bi zelo otežili davčne utaje, spreminjanje finančnih podatkov podjetij ter raznih goljufij.
Internet stvari
Internet stvari (IOT- internet of things) je naslednja možna uporaba tehnologije blockchain. Največja težava pri internetu stvari je varnost in zasebnost podatkov, zato bi tehnologija Blockchain tukaj lahko skrbela za višjo varnost in onemogočila dostop do podatkov o kupcih.
Oskrbovalna veriga
Oskrbovalna veriga je proces dobave blaga in storitev od same proizvodnje pa do končnega uporabnika preko različnih virov.
Gre za zahteven proces vodenja oskrbe zu izdelki in pa tudi različnimi storitvami. Ko proces postane večstopenjski in so vanj vpleteni različni dobavitelji in proizvajalci, ki po možnosti prihajajo iz različnih delov sveta, postane celoten proces zelo zapleten in kompleksen.
Blockchain tehnologija lahko prikazuje tako izvor blaga kot dogovore med stranko in prodajalcem, različne pogodbe, ki so bile sklenjene, kot tudi prikazuje stanje pošiljke in podatke o plačilu.
Blockchain lahko vpliva na preglednost oskrbovalne verige, zaloge v skladiščih dejanske proizvodnje in vzreje in celoten proces od nakupa produkta do same dostave do končnega uporabnika.
Nepremičnine
Tehnologija veriženja blokov bi lahko v prihodnosti postala velika prednost nepremičninskega trga. Dandanes gre za industrijo, ki temelji na papirologiji, blockchain pa bi lahko vse skupaj razbremenil, saj bi bili vsi zapisi zbrani digitalni in zelo pregledni.
Preko blockchaina bi se lahko izvedlo plačilom zaznambe, beležile transakcije, zaradi uporabe te tehnologije, pa bi se strani lahko zavarovale pred morebitnimi prevarami, postopki bi bili hitrejši, vse skupaj pa bi lahko potekalo tudi mednarodno in ne zgolj v eni državi.
Denar
Namen kriptovalut bi lahko bil tudi plačevanje in izmenjava. Šlo bi za proces, ki bi nemoteno potekal po vsem svetu, postopek bi bil takojšen in varen. Postopek bi potekal brez vključevanja nadzornih teles (bank), saj bi sistem temeljil na tehnologiji blockchain, šlo pa bi za transakcije od ene osebe do druge (peer-to-peer).
Danes se plačevanje z kripto valutami že izvaja. Seveda ima večina prodajalcev, kateri sprejemajo kripto valute, vključenega posrednika, ki kripto valute spremeni v FIAT valute (EUR, USD,..) To sicer ni popolnoma decentralizirana rešitev, je pa pomemben korak v pravo smer. Z povečevanjem uporabe kripto valut se bo tudi ta miselnost spremenila in bodo trgovci začeli sprejemati valute P2P, torej vsak z vsakim in jih ne bodo več menjali v FIAT valute. Danes pa trgovec še vedno vse plača z EUR in volatílnost kripto valut mu predstavlja preveliko tveganje za poslovanje.
Zaključek
Blockchain tehnologija je tehnologija prihodnosti. Z uporabo na finančnih področjih (kot je Bitcoin) je dobila zagon in sredstva za razvoj. Seveda sedaj vsi pričakujejo, da se bodo stvari spremenile čez noč, da bomo v trenutku razvili tehnologijo in spremenili svoje navade. To je seveda utopija. Vsaka stvar potrebuje svoj čas. Seveda če želimo odpraviti nadzor velikih centralnih avtoritet pa bo to trajalo še malenkost dlje. Vsa ta leta je nadzor na vseh področjih zagotavljal udobno delovanje velikemu številu posameznikov in s tem, da jim sedaj sporočamo, da obstaja tehnologija s katero jih ne potrebujemo več, sigurno ne pomagamo k enostavni transformaciji družbe.
Dandanes se bodo še bolj kot kdaj koli borili proti temu, da ne izgubijo svoje moči. Konec koncev ne želijo izgubiti prihodkov kateri so omogočili, da so prišli tako daleč in jim omogočajo, da lahko poiskušajo nekako omejiti uporabo decentraliziranih omrežij in jih po možnosti zatreti.