Šta je bitkoin? (I)
Priča o kripto-valutama nastavak je sage o ekonomiji i razmeni dobara u ljudskom društvu. Razvoj interneta omugućio je novo poglavlje u ovoj epskoj priči. Mogućnost decentralizovane valute koju pokreću pojedinci.
Broj uređaja “okačenih” na globalnu mrežu eksponencijalno raste. Osećaj da smo povezaniji više nego ikada takođe raste. Ipak, nismo svi povezani na isti način. Naša pristupna tehnologija se razlikuje, a brzina naše mreže još više. Za ogromnu internet-populaciju u Africi npr. mobilni telefon jedini je način komunikacije s komšijama i celim svetom. Uz ovo treba dodati da trenutno na planeti postoji mnogo više ljudi s pristupom internetu nego onih koji u svojoj blizini imaju bilo kakvo fer sredstvo plaćanja ili slanja novca. Do skora je tako bilo i u našoj zemlji.
Priču o bitkoinu kao jedinstvenoj vrsti digitalne valute treba početi pominjanjem nekolicine imena, a jedno od njih se direktno povezuje s nastankom prve ideje o bitkoinu.
Počećemo od Satoši Nakamotoa. Ovaj, kako se tada predstavio, 37-godišnji Japanac prvi je razvio ideju o bitkoinu opisujući ga kao peer-to-peer (pir- tu- pir) elektronski novčani sistem i decentralizovano sredstvo plaćanja. Tu svoju ideju prosledio je inicijalno putem mejling liste na sajtu metzdowd.com, 2008. godine. Nešto kasnije, 3. januara 2009. prva verzija softvera bitkoina “open source" puštena je u rad. Mediji su i posle višegodišnjeg istraživanja ostali uskraćeni za odgovor na pitanje ko je anonimni Satoši Nakamoto. Naime, tokom proteklih godina mnogi entiteti predstavljali su se kao Satoši, pa je najverovatnije reč o grupi ljudi. Bitkoin verovatno nije ideja jedne osobe, već većeg “internet kolektiva”.
Međutim, da bismo zaista razlučili koja ideja stoji iza predloga o bitkoinu, moramo se vratiti još malo unazad, u 1998. godinu, kada je drugi čovek po imenu Wei Dai objavio svoj rad ‘predlog za formiranje b-novca’ koji je distribuiran prvi put na ‘Cypherpunks’ mejling listi; otvorenom forumu koji okuplja zaljubljenike u kriptografiju, eksperte iz ove oblasti, matematičare, statističare, programere.
Ovo je važno zbog toga što osnovna ideja o decentralizovanim valutama leži u kripto-anarhističkom pokretu odnosno ideji Kripto-panka (CypherPunk). Ne mešati sa CyberPunk – Sajber-pank.
Osnovne ideje CypherPanka, kojim je Wei bio inspirisan, propagirali su Tim Mej (Tim May - Intelov glavni inženjer i pronalazač do 2003.) Erik Hjuz ( Eric Hughes -profesor matematike na univerzitetu Berkli) i Džona Gilmora (John Gilmore - osnivač EFF-a, Electronic Frontier Fodacije). “Želim garanciju da je naša komunikacija privatna, garanciju zasnovanu ne u zakonima, već u matematici I fizici”, pisao je Hjuz.
Osnovni postulati kripto-pank manifesta (nastalog 1993. godine) mogu se sagledati u par rečenica:
Privatnost je neophodna za razvoj otvorenog društva u elektronskom dobu.
Ne možemo očekivati od vlade, korporacija ili drugih ogranizacija da garantuju našu privatnost.
Mi sami moramo odbraniti našu privatnost ukoliko želimo da je imamo.
“Kriptopankeri pišu kod. Znamo da neko treba da napiše programe kojima ćemo se zaštititi… i mi ćemo to uraditi.”
Neki od osnivača kripto-pank pokreta su prilično vremešni ljudi, direktori kompanija naprednih tehnologija, univerzitetski profesori, ili istrazivači u oblasti matematike i kriptografije. Sintagma “pank” u imenu pokreta jasno sugeriše da je ovo svojevrsna ‘matematika sa stavom’. ‘Nama nije važno ako se ljudi ne slažu sa programima koje pišemo. Mi znamo da program (software) ne može da bude uništen i znamo da široko rasprostranjeni sistemi ne mogu biti ugašeni.’ pisali su u svom manifestu.
Oduševljen idejom Tima Meja o kriptoanarhiji, Wei u svom radu opisuje osnove kripto-valuta. Protokol u kojem osnovni delovi koij prave zajednicu, mogu da anonimno komuniciraju gotovo u istom trenutku a da ih pritom ne nadgleda ili ne kontroliše neka ‘treća strana’ u procesu, najčešće država ili centralna ekonomska institucija.
“Kreiranje novca; Svako može kreirati novac ukoliko javno emituje rešenje za predhodno nerešeni matematičko-kompjuterski problem. “ (Dai Wei ‘proposal for b-money)
I najznačajnije, predstavljen je ‘dokaz o kompjuterskom radu’ (proof -of -work) kao legitimno srestvo za ‘stvaranje’ novca.
Šta je to dokaz-o-radu?
Proof of work system. Izmišljen je u svrhu kontrole da li je informacija došla od korisnika ili od spamera –(botnet-a). Glavna karakteristika sistema je da on traži od onoga koji je poslao zahtev, da uzvrati radom ili akcijom. Najšešće je to procesorski rad. U prvim aplikacijama ovog sistema Majkrosoft ga je ugrađivao u uzglavlje elektronske pošte. To je u suštini jednačina koji se relativno brzo izračunava koristeći sirovu snagu procesora. Za to je međutim, potreban određeni procesorski rad. Jako kratak (trajanja par milisekundi) ali ipak ukoliko se koristi za slanje ogromnog broja e-mailova, po nekoliko miliona kao što to spambotnet-i rade, to procesorsko vreme se umnožava do granica ispod isplatljivosti.
Takođe, u Wei-evom predlogu, novac se šalje tako što se javno objavi anonimna transakcija svim učesnicima u monetarnom sistemu.
Ovo su i osnovni posltulati Bitkoina, koji je kasnije otklonio sve moguće prepreke (kao i mogućnosti hakerskih napada) i usavršio ovu ideju anonimnog novčanog sistema kojeg kontrolišu svi učesnici u sistemu a ne centralna institucija (bila to kovnica novca, centralna banka ili neka druga državna institucija.)
Da bi razumeli kako je ovo moguće, moramo pokušati da objasnimo smisao trgovine i novca kakvog ga danas poznajemo.
Tokom istorije, svašta se nazivalo novcem. U ranom 17 veku britanska kraljevska kovnica nalazila se pred velikim problemima. Nove kolonijalne teritorije preko Atlantika nisu dobijale dovoljne količine novčića. Jednostavno, “Royal Mint” nije imao dovoljno materijala ni vremena za njihovu proizvodnju. Međutim na teritoriji Severne Amerike novac i trgovina za ‘predmete koji se sakupljaju’ bila je u razvoju već vekovima. Tako su mnoga plemena američkih starosedelaca usavršila izradu i upotrebu školjki kao sredstva plaćanja, tzv “Wampum”. Vampum su obilato koristili i američki naseljenici u razmeni sa autohtonim plemenima. Posle određenog vremena, britanske vlasti su morale da popuste tako da je između 1637 i 1661 godine Wampum je postao zvanična valuta u Nju Inglandu (New England). Kolonisti su dobili likvidno sredstvo plaćanja i trgovina u novim kolonijama je procvetala. Tek kada je “Kruna” iskovala dovoljno novčića sa ‘realnom dodatnom vrednošću’ i poslala ih u Ameriku, školjke su zabranjene kao sredstvo plaćanja.
Ako školjke mogu da budu novac, krzno može da bude novac, lale, zlato takođe, ako novac nisu samo banknote izdate od strane centralne vlasti; šta u stvari jeste novac?
‘Merenje vrednosti’ široko je polje na kojem odgovore daju zajedno antropolozi, istoričari, ekonomisti. Pojednostavljeno, za ljude je ovo veoma važan koncept koji primenjujemo svaki put kada nešto menjamo, uzvraćamo uslugu; primenjujemo ga u trampi, kreiranju cena, važan je za kredit, zaposlenje ili u kupovini, naplati poreza ili nagrada. U svim tim situacijama merimo koliko je nešto vredno.
Trampa je jednostavni način prenošenja dobara i ne zahteva posrednika, kao takva ustanovila se kao prvi osnovni oblik trgovine među ljudima. Npr. Milan prozvodi kruške, a Bojan gaji grožđe, ako se Milanu jede grožđe, a Bojanu kruške, oni će doći do dogovora i obaviti trampu. Problem nastaje kada oni sade kulture u različitim godišnjim dobima, ili na različitim mestim. Kada jedan uzme grozđe na jesen, on će morati drugom da obeća da če uzvratiti recipročnom merom, kada dođe vreme za trešnje na proleće, npr. U tom slučaju u obzir se mora uzeti i iskrenost učesnika u trampi. Još gore što se u ‘jednačinu’ ubacuju i neželjeni događjaji, suše, poplave, loša godina za grožđe… Postavlja se pitanje da li je ovaj recipročni altruizam zaista recipročan i u kojoj meri.
Još jedan problem u trampi je što vam je za jedan proizod potrebno mnogo “cena”. Na primer: kilogram jabuka za pet jaja, kilogram jabuka za pola kg. grožđa, kilogam jabuka za jedan batak….To je izodljivo kada nudite mali broj proizvoda ali kada razmenu uvaćate na 500 prizvoda, tu se potencijal trampe jako sužava (čak zaustavlja).
Sa novcem to nije slučaj. Za 500 prizvoda imate 500 cena. Novac u ovom slučaju služi kao sredstvo kojim ćemo odrediti koliko ‘obećanja o odložonom reciprocitetu’ vredi vaš proizvod. Vi to obećanje (u obliku novca) možete odneti drugome i od njega uzeti šta vam je potrebno. U ovom slučaju novac je medijum za razmenu ili uslužni novac. Ljudi su ova sredstvo plaćanja odnosno sistem ‘recipročnog uzvraćanja uslugom’ koristili prilično dugo.
Da bi eliminisali špekulacije i proizvoljna merenja vrednosti datog obećanja, države (zajednice) su uvele centralnu ekonomsku vlast. Ona bi određjivala koliko to dato obećanje vredi u nekom drugom zajednički važnom elementu. U tom istorijskom period, svi su se složili da su zlato i srebro stvari koje nešto vrede i koje je moguće u svakom trenutku zameniti. Ne postoji primer plastične upotrebe zlata ili srebra za nečiju dobrobit ili bolji život. Zlato samo “izgleda lepo”. Od njega se ne mogu praviti sekire ni mačevi. Ono na nas utiče samo kroz vrednost koju smo mi dodali ‘transferom’ kroz istoriju (transfer je pojam koji se najbolje objašnjava u antropološkim studijama). Na istorijsku scenu je stupio novac ustanovljen u vrednosti zlata ili srebra. Ta vrsta određivanja vrednosti obećanja, u odnosu na nešto drugo (konkretno zlatu) naziva se “Zlatni Standard”. Slika tog sistema nam je u glavama i danas kada razmišljamo o novcu. Volimo da verujemo da svaka novčanica od papira (dato obećanje o recipročnosti usluge) u stvari ima svoju potporu u nekoj količini zlata ili srebra koje se čuva kod centralnog ekonomskog autoriteta jedne drzave. Međutim u realnosti to nije tako (Januara 1971, predsednik Nixon ukinuo je zlatni standard za Američki dolar npr). Sav novac koji mi danas koristimo naziva se drugačije Fiat novac (od latinskog FIAT – “neka tako bude”) ili “dekretni” /“flucijalni” novac .
Šta je to u stvari?
Tokom istorije novca kakvog smo objasnili ranije, Vlade ili centralne ekonomske vlasti nalazile su se često u poziciji da njihova ‘obećanja o uzvraćanju usluge’ kao i trgovina nastala na tim obećanjima prevazilazi količine zlata i srebra u njihovim trezorima. Kada se desi tako nešto , Vlada ili CFI izdaje obećanje koje se ne može naplatiti momentalno već u određenom nepreciziranom mestu u budućnosti. Nema potporu u zlatu već je zalog da je ’obećanje’ validno. Možemo lako da zaključimo da je ova vrsta, još dalje ‘odloženog reciprociteta’ prilično podložna mahinacijama i svojevoljnosti ljudi u centrima finansijskih institucija. Upravo zbog toga novac je podložan inflaciji. Kada ljudi prestanu da veruju institucijama i vladi da će ikada ispuniti sva ta obećanja, vrednost novca se smanjuje.
Zašto nam je onda uopšte potrebna uloga posrednika u današnjoj ekonomiji i koja je to uloga? U suštini centralne finansijske institucije danas imaju ulogu ‘čuvanja podataka o transakcijama’, svojevrsni registar bilansa. Oni nam garantuju da je transakcija koje X lice obavlja prema Y licu moguća i zabeležena. Na ovaj način kontroliše se da li je osoba koja šalje novac možda nekome već obećala taj novac ili ga već poslala drugom, (kao što smo videli fizički novac ne postoji u dovoljnom obimu pa je ova knjiga bilansa važna za upisivanje transakcija) Naravno sve finansijske institucije naplaćuju ovakvu vrstu čuvanja informacija o transakcijama. Ista stvar se dešava i sa svim sistemima elektronskog plaćanja danas.
Sa druge strane, cena koja je nametnuta od finansijskih organizacija za proveravanje svake transakcije, često ne dozvoljava ili čini nepraktičnim i skupim, slanje male količine novca, tzv. mikrotransakcije (‘microtransaction’) npr. 0,2€. Isto tako, nepovratne transakcije ne postoje, zato što finansijske institucije moraju da ostave mesta za proces pravne medijacije u određenim slučajevima. Zašto je ovo bitno za Bitkoin?
Satoši je u svom tekstu o Bitkoinu primetio da nam je potreban elektronski sistem plaćanja baziran na kriptografskom dokazu, umesto na obećanju. Sistem koji bi omogućio dvema voljnim stranama da direktno trguju bez potrebe za posrednikom koji bi odobrio transakciju.
Kako kontrolisati bez finansijske institucije, da li su informacije o transakcijama tačne i da li su u pravilnom hronološkom redu?
Da bi krtiptografski sistem u svakom trenutku znao da li je neka transkacija validna, najednostavnije rešenje je da u svakom trenutku bude svestan svake transakcije, koja se ikada odigrala.
Bitkoin koristi decentralizovani sistem gde je zamena za centralni autoritet u stvari koncezus svih učesnika u mreži (nodova) koji prate centralni protokol, odnosno glavnu knjigu balansa. Oni odlučuju koja transakcija je došla prva na naplatu. Da bi svi, u svakom trenutku znali redosled transakcija, one se upisuju i javno emituju u mrežu kroz opensource softwere nazvan “Blockchain”.
Block chain
Blokčejn ili lanac blokova kako ga možemo nazvati, glavna je inovacija Bitkoin-a. Naime sve počinje od servera sa vremenskom verifikacijom tzv “TimeStamp” servera. Ovaj server omogućava postavljanja digitalne informacije o vremenu, u bilo koji document ili kopjuterski podatak. Najpoznatiji je Majkrosoftov “TimeStamp” server koji služi kao zaštita od hakerskih napada. Niko pa ni tvorac dokumenta, ne može izmeniti informaciju o trenutku nastajanja tog dokumenta na mreži. Ovi vremenski pečati osiguravaju da podaci o hronologiji transakcija budu trajno zapisani u Bitkoin mrežu kroz fajlove koje nazivamo blokovima. Jedan blok je potvrda o jednoj ili svim najnovijim Bitkoin transakcijama koje nisu zabeležene u predhodnim blokovima. Novi blokovi dodaju se na poslednji blok formirajući tako lanac.
Svaki blok ‘pamti’ i referiše na transakcije koje su postojale neposredno pre njegovog nastajanja, tako da se one slažu po hronologiji nastanka. Svaki novi blok potvrđuje nastavak ovog niza. Jednom stvoren blok se ne može obrisati i on zauvek postoji u lancu.
Blok sadrži i informaciju, odnosno rešenje matematičke jednačine. Za stvoreni blok, odnosno pronađeno rešenje, nalazač je nagrađen određenom količinom novčića.
Svi blokovi u lancu imaju samo jednu putanju prema izvornom ili “genesis” bloku. Prva trasakcija u tom bloku bila je plaćanja nagrade od 50 BC njenom kreatoru Satošiju.
Kako se ova kripto valuta rudari?
Rudarenje (pravljenje blokova) je proces dodavanja informacija o transakcijama u Bitkoinov javni registar transakcija. (koji se videli smo, naziva BlokChain).
Primarni zadatak rudarenja je da dozvoli mreži korisnika da dođu do rešenja “matematičke jednačine” koncenzusom ali isto tako (i mnogo važnije) to je mehanizam zaštite samog sistema. Svi “rudari” zajedno proveravaju i unose nove informacije u ovaj registar i zajedno odbacuju sve pokušaje lažnih transakcija prostom većinom i prateći vremenski raspored transakcija.
Ovaj proces naziva se rudarenje zato što podseća na proces izvlačenje plemenitih metala iz zemlje (kao što su zlato i srebro) Isto tako on kontrolisano dodaje određenu količinu valute u sistem, u istoj srazmeri u kojoj se iz zemlje izvlače plemeniti metali.
Postepeni konstantni rast broja Bit-novčića analogan je povećanju troškova u kopanju zlata prilikom njegovog dodavanja u cirkulaciju na tržistu. U slučaju BitCoin-a procesorsko vreme i električna energija je ono sto se troši. Dokaz o procesorkom radu (kakvog smo ranije opisali) takođe rešava probleme u donošenju odluka koncenzusom, zato što se ne odnosi na jednu IP adresu (ne-fer učesnik u mreži može lako alocirati ogroman broj IP adresa i preuzeti sistem) već na jedan procesor. Nodovi glasaju njihovim procesorima prihvatajući ispravan lanac blokova koji je u pravilnom hronološkom redu, odbacujući nepravilne blokove, tj odbijajući da radi na njima. Na taj način oni su ujedno i nosioci sigurnosti celog sistema.
Ovaj sistem je siguran i pouzdan dok je god procesorska snaga ‘fer’ igrača u sistemu veća od onih koji ne igraju po pravilima (pokušavaju da prave lažne blokove sa lažnim informacijama). Trenutni broj nodova na mreži jako je veliki. Oni na svojim mašinama čuvaju i pokreću orginalni BITCOIN CORE klient, odnosno originalni lanac blokova. Njihov međusobni kontakt i koordinacija nije potrebna dok god usvajaju osnovni protokol i referišu na trenutnu vrednost.
S obzirom da je za generisanje jednog bloka potrebno jako dugo vremena te je stoga individualno rudarenje zahtevan i dugotrajan proces, često se na Internetu danas mogu naći agregatori procesorske snage odnosno mesta na kojima možete udružiti svoj procesor sa ostalim koji trenutno rudare. Ovi servisi se nazivaju ‘rudaski baseni’ ili “Mining pools”.
“Široko rasprostranjeni sistemi ne mogu biti ugušeni.” CypherManifesto.