Ako imalo pratite tehnološke trendove, sigurno ste u posljednje dvije godine puno puta čuli za blockchain. Blockchain se redovito predstavlja kao rješenje za sve tehnološke glavobolje u FinTech industriji, ali i puno šire. Veliki broj kompanija poput Microsofta, IBM-a i Amazona, kao i neke od najpoznatijih svjetskih banaka, rade na projektima temeljenim na blockchain tehnologiji. Postavlja se pitanje zašto se blockchain smatra idealnim rješenjem za niz različitih problema. Odgovor na pitanje zahtijeva razumijevanje same blockchain tehnologije.
Blockchain se prvi puta pojavljuje 2009. godine kao tehnologija na kojoj počiva Bitcoin, globalna digitalna valuta koja se izdaje i koristi isključivo na internetu. Zanimljivost Bitcoina je u tome što je potpuno decentraliziran, što znači da nije u ničijem vlasništvu, nema fizičku adresu, ne kontrolira ga niti jedna udruga, banka ili država, a istovremeno je potpuno slobodan za korištenje bilo kome na svijetu, anonimno, bez potrebe za registracijom ili otvaranjem računa – i bez traženja ičijeg odobrenja. Poput emaila, bitcoine je moguće poslati bilo kome na internetu, bez posrednika, u gotovo realnom vremenu, a sve izvršene transakcije bilježe se u Bitcoin blockchain. Iako su vlasnici bitcoina anonimni, sve financijske transakcije u bitcoinima su javne i vidljive svakome. Osim toga, kompletan razvojni kod Bitcoina je potpuno otvoren i dostupan svakome tko ga želi proučavati ili doprinijeti zajednici.
Ako sada prvi puta čitate o Bitcoinu, prethodni opis vam je vjerojatno teško razumljiv i nelogičan. Razlog tome je što Bitcoin uistinu predstavlja potpuno nov i drugačiji način obrade financijskih transakcija. Prije nego se upustimo u pojašnjenje Bitcoin tehnologije i valute, prisjetimo se što je to zapravo novac kakvog danas poznajemo.
Bitcoin mreža najsigurniji sustav na svijetu
Sve tradicionalne valute kontrolira neki oblik državne vlasti ili banka. Banka osigurava da su stanja na računima točna i da se plaćanja izvršavaju prema nalozima. Banke vam omogućuju da mirno spavate jer znate da će ujutro vaši novci i dalje biti na vašem računu. Niz sigurnosnih mjera postavljen je kako bi mehanizam što bolje funkcionirao: ograničen uvid i prava pristupa minimalnom broju ljudi, zatvoreni informatički sustavi, sefovi, zidovi od armiranog betona, osiguravajuće službe, zakoni, policija i zatvori. Drugim riječima, država garantira da će se zakonodavna i izvršna vlast u određenoj mjeri aktivirati u slučaju problema. I upravo tu leži povjerenje ljudi kad pričamo o klasičnim valutama. Vjera u vladu i državu nam garantira da će novac koji smo zaradili danas vrijediti i biti prihvaćen sutra od strane drugih ljudi. Sve dok svi vjerujemo u mehanizam i ljude koji ga održavaju, novac će imati vrijednost.
S druge strane, Bitcoin je decentraliziran, odnosno ne kontrolira ga niti jedna organizacija, financijska institucija ili državna vlast, nema centralno fizičko sjedište i adresu, nema vlasnika, upravni odbor, dioničare, direktora, šefa sigurnosti ni zaposlenih djelatnika. Bez obzira na sve nabrojeno, Bitcoin mreža se danas smatra najsigurnijim sustavom na svijetu i to sve zahvaljujući Bitcoin blockchainu.
Što je Bitcoin blockchain?
U svojoj srži, Bitcoin blockchain je baza podataka. Ona sadrži podatke o financijskim transakcijama između računa, slično kao i glavna knjiga u računovodstvu u kojoj stoje zapisi koliko novaca je prebačeno s jednog računa na drugi.
račun x => račun y = 10 bitcoina
račun y => račun z = 5 bitcoina
Sve validne transakcije od početka postojanja Bitcoina do danas zabilježene su u blockchainu, a stanje pojedinog računa izračunava se zbrajanjem i oduzimanjem primljenih i potrošenih bitcoina kroz ostvarene transakcije.
Postavlja se pitanje, kako se ovakav sustav održava sigurnim? Pogotovo sad kad znamo da nitko nije službeno odgovoran za sigurnost sustava? Sigurnost Bitcoin blockchaina garantiraju 3 temeljna faktora:
- Kriptografija
- Proof of work (dokaz rada)
- Distribuirani sustav
Kriptografija
Blockchain, u prijevodu lanac blokova, sastoji se od niza podatkovnih paketa, odnosno blokova, od kojih svaki sadržava skup transakcija ostvarenih u određenom periodu. Svaki podatkovni paket u lancu, logički je povezan s prethodnim paketom jednom vrstom kriptografskog potpisa pod koji još zovemo i – hash. Hash je broj ispisan u posebnom formatu i izgleda kao niz nasumično odabranih znakova:
7c96cf30947914ab1d9844d93707baf2435f9d9b290c8258622ab635054c8041
Hash je rezultat hash funkcije koja s jedne strane prima bilo koji digitalni sadržaj kao što je tekst, fotografija, video, pdf ili bilo koji drugi tip datoteke te nad njima izvršava niz matematičkih operacija, a kao rezultat vraća unikatan potpis u obliku niza znakova točno određene duljine.
Kroz hash funkciju možemo provući jedno slovo ili riječ, ali i kompletnu knjigu. Hash će u oba slučaja biti jednake duljine. Osim toga, ako sadržaj iste knjige provučemo više puta kroz hash funkciju, rezultat će biti uvijek isti. Međutim, ako bilo gdje u knjizi zamijenimo samo jedno slovo, zarez ili razmak, hash knjige će biti potpuno drugačiji. Različitim hashevima ne možemo ukazati gdje je u knjizi nastala promjena, ali ono što možemo dokazati bez trunke sumnje je da sadržaj knjige nije identičan zbog toga što se hashevi razlikuju.
U Bitcoin blockchainu svaki blok transakcija u lancu je potpisan na ovaj način, a svaki generirani potpis postaje dio sadržaja idućeg bloka u lancu. Ako netko zamijeni bilo koji podatak u nekom od blokova, to će automatski uzrokovati neispravnost potpisa tog bloka. Ponovno generiranje ispravnog potpisa poništit će ispravnost idućeg bloka jer idući blok sadrži stari potpis. Ukratko, ako bilo gdje u blockchainu napadač pokuša promijeniti bilo koji detalj, uzrokovat će lančanu reakciju koja ne može proći neprimijećeno.
Proof of work
Generiranje hasha je za računalo trivijalan zadatak. Onaj tko želi izmijeniti podatak u blockchainu bi mogao preračunati sve hasheve kompletnog lanca u vrlo kratko vrijeme, da nema jednog sitnog pravila u Bitcoin protokolu koji definira uvjet ispravnog hasha, a on kaže da hash mora započeti s određenim brojem nula.
00000000000000000d9844d93707baf2435f9d9b290c8258622ab635054c8041
Spomenuli smo da će svaki sadržaj koji ulazi u hash funkciju, ako je nepromijenjen, svaki puta vratiti isti hash. To znači da će isti skup transakcija svaki put vratiti isti hash, a ako taj hash ne počinje za određenim brojem nula, hash se smatra neispravnim. Kako bi dobili drugačiji hash, moramo nešto izmijeniti u sadržaju koji ulazi u hash funkciju. Same transakcije su također zaštićene malo drugačijom kriptografskom metodom pa nam ne preostaje ništa drugo nego da dodamo još jednu varijablu x koju proizvoljno možemo mijenjati. Rotacijom vrijednosti varijable, svaki put ćemo dobiti drugačiji ulaz u hash funkciju i samim time drugačiji hash kao izlaz. Hash je potpuno nepredvidiv pa zato računalu ne preostaje ništa drugo nego metodom pokušaja i pogodaka izračunavati hasheve sve dok ne pronađe pravi, odnosno onaj koji počinje sa zadanim brojem nula. Ovaj proces pogađanja nazivamo proof of work jer svaki ispravan hash je ujedno i dokaz da se računalo ‘naradilo’ dok ga nije pronašlo.
Jednom hashiran set transakcija na ovaj način postaje trajno zaključan jer bi svaka promjena zahtijevala ponavljanje procesa traženja ispravnog hasha za svaki blok u lancu kreiran od tog trenutka nadalje.
Distribuirani blockchain
U Bitcoin mreži, onoga tko pronađe ispravan hash, protokol nagrađuje – novim bitcoinima. Ljude koji traže hasheve nazivamo mineri (rudari) jer u opticaj unose nove bitcoine, jednako kao što rudari iskapaju novo zlato. Za pogađanje hasha potrebna je procesorska snaga računala i vrijeme. Što je brži procesor, brže će se pronaći ispravan hash. Brži procesor za rad zahtijeva i više električne energije pa rudari neprestano ulažu znatna financijska sredstva u procesorsku i električnu infrastrukturu jer su u konstantnoj utrci protiv drugih rudara koji također traže ispravan hash.
Jednom pronađeni hash znači da je blok podataka uspješno zatvoren i rudar objavljuje svoj pronalazak ostatku Bitcoin mreže. Svako računalo u mreži provjerava ispravnost hasha ponovnim potpisivanjem bloka s uključenom varijablom koju je rudar prezentirao kao rješenje. Ako dobiveni hash počinje s predefiniranim brojem nula, računalo dodaje novi blok na svoju kopiju blockchaina!
Ostali sudionici u mreži će također provjeriti i dodati novonastali blok na svoju kopiju blockchaina pa se tako ujedno ostvaruje i sinkronizacija blockchaina između računala. Nadalje, Bitcoin mreža je potpuno otvorena i slobodna za korištenje. Svatko može postati dio mreže i imati svoju kopiju blockchaina, čitati njegov sadržaj bez ograničenja, provjeravati točnost zapisa ili preuzeti ulogu rudara. Ovako decentraliziran sustav smatra se sigurnim jer ne postoji jedan centralni server koji se može napasti.
O razlikama privatnog i javnog blockchaina
Kriptografija, proof of work i javni otvoreni distribuirani sustav čine Bitcoin blockchain sigurnim. Podatak u blockchainu štite matematička pravila, ogromna količina procesorske snage i mnoge decentralizirane kopije istog sustava koji se moraju većinski složiti oko ispravnosti podataka. Privatni blockchain je po svojoj definiciji blockchain u vlasništvu neke tvrtke ili organizacije. Pristup takvom blockchainu može se ograničiti na samo odabrane članove. U takvim sustavima ispravnost podataka ne garantira proof of work algoritam nego sama organizacija. Privatni blockchain ima svojih prednosti nad klasičnim bazama podataka, ali samim time što ispravnost podataka ne garantira protokol nego povjerenje u uključne strane, primjene su ograničene.
Bitcoin blockchain se u ovom trenutku smatra najsigurnijom bazom podataka na svijetu u smislu da je gotovo nemoguće promijeniti jednom upisani podatak i uvjeriti ostatak sudionika u istinitost istog. Razlog tome je što zavarati sustav ujedno znači kontrolirati više od 50 posto ukupne globalne procesorske snage računala koja održavaju mrežu, a ona je trenutno 50 000 puta veća od top 500 super računala na svijetu. Čak i da se napad nekako izvede, šteta bi bila minimalna i potpuno neisplativa napadaču. Kako je Bitcoin blockchain po svojoj prirodi otvoren i svima dostupan sustav, izložen je svakodnevnim napadima već osmu godinu zaredom, bez vidljivih posljedica.
Blockchain za registar zemljišta, filmove, glazbu, glasačke listiće…
Ono što mnogi ne znaju je da Bitcoin ne predstavlja samo digitalnu valutu. Valuta je samo prva aplikacija implementirana na Bitcoin platformi koja omogućuje njenu samoodrživost. Mnoge druge aplikacije mogu se nasloniti na Bitcoin blockchain i iskoristiti njegov najvažniji sigurnosni element – nepromjenjivost podataka. Nedavno je započeo projekt koji se temelji na ideji da se vlasništvo nad zemljom upisuje u Bitcoin blockchain, poput onoga u Švedskoj. Bitcoin blockchain je dovoljno fleksibilan da podrži i širok spektar različitih primjena kao što su zapis o položenim stručnim ispitima, diplomama, razne sirovine i put prerade, certifikate, filmove, glazbu, pa i glasački listići bi se jednog dana mogli naći u blockchainu.
Što blockchain čini tako posebnim?
Blockchain je prvi sustav koji efikasno može zaštititi ljude od nas samih. Za razliku od ljudi, imun je na manipulaciju, korupciju, ego tripove i diktaturu. Povijest više neće pisati samo pobjednici, nego ona kroz blockchain postaje nepromjenjiva.
Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.
Pravila ponašanja
Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:
Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.
Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.
Komentari
vjeran
22. 02. 2017. u 1:32 pm
Sta je s bitcoinima i blockchaniovima u zadnje vrjeme svaki 3 post na netokraciji o tome, spomenite ethereum 🙂
Mia Biberović
22. 02. 2017. u 2:48 pm
To nam je bila tema (prošlog) tjedna. 🙂 No, ovaj je tekst stigao nešto kasnije pa smo ga danas objavili.
Ali hvala na ideji!
Boris
03. 03. 2017. u 2:33 pm
Super članak, hvala Leon!
Svašta se događa u svijetu kriptovaluta, blockchaina i kriptoekonomije. Slažem se Vjeran. Ethereum treba predstaviti, nije bitcoin jedini (ima ih oko 1000 “kriptosa”).
Ako je Bitcoin ( ne sama valuta već i bitcoin protocol i blockchain) “internet novca”, onda je Ethereum ukratko “internet prava”. Very interesting stuff! Take a look: https://ethereum.org/
Danilo
19. 01. 2018. u 3:12 pm
A sta je sa kvantnim računarima.Ako se ikada pojave kvantni računari svi blockchain ce postati bezvrijedni.