O Bitcoine

Bitcoin je prvá a najpoužívanejšia kryptomena. 

Spustená bola dňa 3. 1. 2009 programátorom (alebo skupinou programátorov) vystupujúcim pod pseudonymom Satoshi Nakamoto. Bitcoin umožnuje vykonávať platby komukoľvek na svete – nie je potrebný žiadny bankový účet alebo registrácia; iba stiahnutie niektorej z mnohých bitcoinových peňaženiek. Globálne platby sú umožnené s pomocou peer-to-peer technológie, ktorá funguje bez akéhokoľvek ústredného správcu. Spracovanie transakcií a emisie (ťažba) sú vykonávané kolektívne, právo zapisovať nové transakcie vyhráva v priemere každých desať minút ten, kto poskytne adekvátny dôkaz o vynaložení dostatočného počítačového výkonu (tzv. proof-of-work). Transakcie sú zapisované do decentralizovanej databázy blockchainu.

Tvorca Bitcoinu, Satoshi Nakamoto, nevytvoril Bitcoin len tak „od stola“. V bitcoinovom whitepaperi odkazuje Satoshi na niektoré skoršie projekty, na ktorých technologických poznatkoch staval. Išlo najmä o projekty vyplývajúce zo skupiny tzv. cypherpunks – hackerských aktivistov, ktorí sa usilujú o posilnenie slobody pomocou technológií zlepšujúcich súkromie v digitálnom prostredí. Satoshi konkrétne spomína projekty Hashcash a b-money. Bitcoin je elegantným prepojením niekoľkých technologických poznatkov. Ide najmä o:

Kryptografický hash: hash je výsledkom matematickej funkcie, ktorá z ľubovoľne dlhého textu alebo čísla vytvorí reťazec s fixnou dĺžkou. Ide o jednostrannú matematickú funkciu – hash je z textu alebo čísla jednoduché vytvoriť, je však nemožné z hashu spätne odvodiť pôvodný text či číslo (iným spôsobom, než skúšaním všetkých možností). Hash je ďalej veľmi jednoduché overiť. Vyskúšajte si sami: zo slova bitcoin vždy vzíde hash 6b88c087247aa2f07ee1c5956b8e1a9f4c7f892a70e324f1bb3d161e05ca107b. Tu sme využili hashovaciu funkciu SHA-256, ktorú využíva Bitcoin.

Proof-of-work: ťažiari musia v rámci Bitcoinu poskytovať tzv. dôkaz prác (proof-of-work). Dôkaz dodávajú vo forme hashu, ktorý spĺňa požiadavku definovanú Bitcoinovým protokolom. Požiadavkou je, aby bol hash čo najmenší, tj. v praxi aby mal na začiatku určitý počet núl. Čím viac núl, tým ťažšie je taký hash nájsť. To zaisťuje, že transakcie do blockchainu zapisujú iba tí, ktorí vynaložili dostatočnú energiu (na odradenie od motivácie podvádzať), a že bitcoinové bloky vznikajú v priemere každých desať minút (na predvídateľné uvoľňovanie nových bitcoinov do obehu).

Reťazenie hashov: jednotlivé bitcoinové bloky na seba nadväzujú, cez odkazovanie na hash predošlého bloku. Celý blockchain je tak reťazec na seba nadväzujúcich blokov, od prvého Genesis bloku až do dnešného dňa.

Páry kryptografických kľúčov: základným identifikátorom v rámci Bitcoinu je tzv. privátny kľúč. Ide o alfanumerický reťazec vygenerovaný kryptografickou funkciou. Z privátneho kľúča je možné vygenerovať verejné kľúče, z ktorých je potom možné vygenerovať bitcoinovú adresu na prijímanie platieb. Utrácať bitcoiny na takto vygenerovanej adrese potom môže len a len zodpovedajúci privátny kľúč. Na generovanie privátnych kľúčov využíva Bitcoin algoritmus ECDSA

Bitcoin funguje už vyše desať rokov bez jedinej odstávky. Počas tejto doby došlo k mnohým technologickým vylepšeniam, hackom bitcoinových búrz a služieb, snahám o reguláciu a zákazov. Bitcoin však stále beží a oslovuje ďalších a ďalších programátorov, ekonómov, investorov aj bežných ľudí, ktorí hľadajú prostriedok na uchovanie kúpnej sily, ktorý nie je možné jednoducho konfiškovať.

Bitcoin ako deflačná mena

Celkový počet Bitcoinov nebude nikdy vyšší ako 21 miliónov. Nejde pritom o nejaký planý sľub vývojárov, ale o limit, ktorý je zabudovaný priamo do bitcoinového protokolu – súboru pravidiel, ktoré definujú, čo vlastne Bitcoin je. Na dodržiavanie protokolu dohliada decentralizovaná sieť tzv. nodov – plnohodnotných uzlov siete. Tých na svete beží v rade desiatok tisíc

Hoci celkový počet bitcoinov nikdy nepresiahne 21 miliónov, počet bitcoinov v obehu bude v skutočnosti nižší a pravdepodobne bude klesať. Už teraz vieme, že zhruba 3,8 milióna bitcoinov sa nepohlo dlhšie ako 5 rokov. Pravdepodobne ide o bitcoiny, ku ktorým majitelia stratili privátne kľúče. Toto číslo bude vplyvom neopatrného zaobchádzania s privátnymi kľúčmi pravdepodobne rásť. Bitcoin tak predstavuje deflačnú menu – menu, v ktorej počet jednotiek v obehu s časom klesá.

Vyššie uvedené v praxi znamená, že s pravdepodobným rastom hodnoty bitcoinu sa bude potrebné množstvo mincí na nákup tovaru zmenšovať. Priemerná veľkosť transakcie sa zníži a čím ďalej tým viac budeme namiesto celých bitcoinov uvažovať v Satoshi. Niektoré bitcoinové projekty – napríklad platobná nadstavba Lightning Network – s týmto už dopredu počítajú, uvádzajú všetky hodnoty práve v jednotkách satoshi.

Hoci celkový počet bitcoinov nikdy nepresiahne 21 miliónov, počet bitcoinov v obehu bude v skutočnosti nižší a pravdepodobne bude klesať. Už teraz vieme, že zhruba 3,8 milióna bitcoinov sa nepohlo dlhšie ako 5 rokov. Pravdepodobne ide o bitcoiny, ku ktorým majitelia stratili privátne kľúče. Toto číslo bude vplyvom neopatrného zaobchádzania s privátnymi kľúčmi pravdepodobne rásť. Bitcoin tak predstavuje deflačnú menu – menu, v ktorej počet jednotiek v obehu s časom klesá.

Vyššie uvedené v praxi znamená, že s pravdepodobným rastom hodnoty bitcoinu sa bude potrebné množstvo mincí na nákup tovaru zmenšovať. Priemerná veľkosť transakcie sa zníži a čím ďalej tým viac budeme namiesto celých bitcoinov uvažovať v Satoshi. Niektoré bitcoinové projekty – napríklad platobná nadstavba Lightning Network – s týmto už dopredu počítajú, uvádzajú všetky hodnoty práve v jednotkách satoshi.

Kryptomeny na čele s bitcoinom fungujú na úplne odlišných princípoch. Najmä tu chýba centrálna autorita, ktorá ovplyvňuje ponuku peňazí. Satoshi Nakamoto úplne zámerne navrhol bitcoin tak, aby bolo tempo uvoľňovania nových jednotiek do obehu úplne transparentné a dlhodobo predvídateľné. Bitcoinový protokol stanovuje, koľko nových bitcoinov sa s každým vyťaženým blokom dostáva do obehu. Ťažiari a všetci ostatní užívatelia bitcoinu musia tento protokol nasledovať, ak chcú zostať súčasťou siete. Tempo uvoľňovania bitcoinov do obehu, aj ich finálny počet sú teda dopredu známe a nikto s tým nemôže nič urobiť. Nové bitcoiny sú navyše uvoľňované úplne férovo – na základe vynaloženého úsilia na nájdenie správneho hashu.

Čo to znamená v praxi? Keďže bitcoin nemá centrálne riadenú ponuku, je jeho cena na rozdiel od fiat mien skutočne trhová. Ponuka je dopredu daná a nemenná, cenu teda ovplyvňuje predovšetkým dopyt a celková trhová kapitalizácia. Krátkodobý dopyt prechádza cyklusmi, pre ktorých dve fázy sa zažili termínmi FOMO (fear of missing out) a FUD (fear, uncertainty, doubt). Dlhodobý cenový trend je prevažne rastúci, čo zodpovedá tomu, že ľudia po celom svete ešte len objavujú hodnotu vlastností bitcoinu, ako sú necenzurovateľnosť transakcií a prístupnosť komukoľvek a kdekoľvek na svete. Vzhľadom na fixnú ponuku a nemožnosti projekt centrálne zastaviť či regulovať sa čím ďalej častejšie hovorí o bitcoinoch ako dlhodobom uložení hodnôt.

Dotkne sa však okrem dopytu aj spomínanej trhovej kapitalizácie a zobchodovaného objemu. Trhová kapitalizácia (tj. počet jednotiek v obehu krát aktuálna cena jednotky) dosahuje začiatkom júla 2019 hodnoty okolo 200 miliárd dolárov. Pre porovnanie, celková trhová kapitalizácia zlata činí približne 7 000 miliárd dolárov. Trhová kapitalizácia má vplyv, okrem iného, na cenovú volatilitu – čím bude trhová kapitalizácia bitcoinu vyššia, tým nižšie výkyvy ceny možno očakávať. Už teraz je cenová volatilita bitcoinu oproti počiatočným rokom veľmi nízka – počas roku 2011 cena bitcoinu vystúpila behom pár mesiacov z 0,3 dolárov na 30 dolárov, potom spadla na 2 doláre. Takéto výkyvy Bitcoinu už v posledných rokoch nezažíva, a to práve kvôli vysokej trhovej kapitalizácii, pri ktorej je potrebný čoraz väčší objem peňazí na rovnaké percentuálne výkyvy v cene.

Nové bitcoiny sú generované prostredníctvom procesu ťažby. Ťažbu možno opísať ako „matematickú lotériu“ – právo na zaradenie transakcií do bloku a pripojenie tohto bloku na koniec blockchainu vyhráva ten, kto podá dôkaz o vynaložení dostatočného množstva výpočtového výkonu. Dôkaz je podávaný v podobe hashu začínajúceho na určitý počet núl. Ako sme si uviedli vyššie, taký hash je ťažké nájsť, ale jednoduché overiť. Prečo vlastne musia ťažiari vynakladať vysoký výpočtový výkon, ktorý zákonite znamená aj spotrebu veľkého množstva energie? Preto, aby systém mohol fungovať bez centrálneho správcu, a zároveň aby jeho účastníci boli odradení od podvodov. Zapisovať transakcie tak môžu iba tí, ktorí si toto právo „kúpia“, a cena za toto právo sa dynamicky mení tak, aby bolo vždy výhodnejšie prijať odmenu za vyťažený blok, než sa snažiť podviesť ostatných.

Nové bitcoiny sú generované prostredníctvom procesu ťažby. Ťažbu možno opísať ako „matematickú lotériu“ – právo na zaradenie transakcií do bloku a pripojenie tohto bloku na koniec blockchainu vyhráva ten, kto podá dôkaz o vynaložení dostatočného množstva výpočtového výkonu. Dôkaz je podávaný v podobe hashu začínajúceho na určitý počet núl. Ako sme si uviedli vyššie, taký hash je ťažké nájsť, ale jednoduché overiť. Prečo vlastne musia ťažiari vynakladať vysoký výpočtový výkon, ktorý zákonite znamená aj spotrebu veľkého množstva energie? Preto, aby systém mohol fungovať bez centrálneho správcu, a zároveň aby jeho účastníci boli odradení od podvodov. Zapisovať transakcie tak môžu iba tí, ktorí si toto právo „kúpia“, a cena za toto právo sa dynamicky mení tak, aby bolo vždy výhodnejšie prijať odmenu za vyťažený blok, než sa snažiť podviesť ostatných.

Ako funguje bitcoinová peňaženka?

Než sa dostaneme k priebehu bitcoinových transakcií, je potrebné sa zoznámiť s kľúčovým prvkom na interakciu s bitcoinom – bitcoinovú peňaženkou. Tá umožňuje bitcoiny prijímať, ukladať a platiť s nimi.

Bitcoinová peňaženka je softvér spravujúci používateľove privátne kľúče. Peňaženka sa môže nachádzať v mobilnom telefóne, notebooku, či v špecializovanom zariadení nazvanom hardvérová peňaženka. V peňaženke má používateľ schovaný svoj privátny kľúč, ktorým kryptograficky podpisuje bitcoinové transakcie. Je úplne zásadné, aby mal používateľ privátne kľúče vždy pod svojou kontrolou. Tomu sa bližšie venujeme v článku Hardvérové peňaženky – Ako bezpečne uchovávať bitcoin a ďalšie kryptomeny?

Verejná bitcoinová adresa je generovaná z privátneho kľúča a ide o reťazec čísel a písmen; adresa je ako číslo bankového účtu. Privátny kľúč oprávňuje na útraty bitcoinov, ktoré ležia na adresách, ktoré boli z privátneho kľúča generované. Bitcoinovú adresu môžete zverejňovať, avšak vždy s vedomím, že v takom prípade sa môže každý, kto adresu videl, pozrieť na zostatok (nemôže s ním však disponovať, pretože nemá zodpovedajúci privátny kľúč).

Priebeh bitcoinovej transakcie

Bitcoin umožnuje komukoľvek na svete zasielať finančné prostriedky s jednoduchosťou podobnou emailu. Nezáleží na tom, kde na svete sa človek nachádza, koľko má rokov, akého je vyznania či národnosti, alebo či je práve noc, víkend či sviatok. Jediné, na čom záleží, je, či má používateľ pripojenie na internet a či má vo svojej peňaženke bitcoiny.

Verejná bitcoinová adresa je generovaná z privátneho kľúča a ide o reťazec čísel a písmen; adresa je ako číslo bankového účtu. Privátny kľúč oprávňuje na útraty bitcoinov, ktoré ležia na adresách, ktoré boli z privátneho kľúča generované. Bitcoinovú adresu môžete zverejňovať, avšak vždy s vedomím, že v takom prípade sa môže každý, kto adresu videl, pozrieť na zostatok (nemôže s ním však disponovať, pretože nemá zodpovedajúci privátny kľúč).

Priebeh bitcoinovej transakcie

Bitcoin umožnuje komukoľvek na svete zasielať finančné prostriedky s jednoduchosťou podobnou emailu. Nezáleží na tom, kde na svete sa človek nachádza, koľko má rokov, akého je vyznania či národnosti, alebo či je práve noc, víkend či sviatok. Jediné, na čom záleží, je, či má používateľ pripojenie na internet a či má vo svojej peňaženke bitcoiny.

Celá táto správa je následne odoslaná z vašej bitcoinovej peňaženky do rozsiahlej bitcoinovej siete. A v tejto chvíli prichádzajú k slovu ťažiari. Tí overia validitu transakcie, zahrnú ju do nového bloku spolu s ďalšími transakciami, a tento blok následne celý potvrdia (vyťažia) a zaradia do blockchainu. Blockchain totiž nie je nič iné, než reťazec na seba nadväzujúcich blokov s transakciami.

Pri bitcoinovej transakcii vždy sledujete počet potvrdení (confirmations). Transakcia bez potvrdenia je iba v pamäti uzlov, nebola však zatiaľ vyťažená. Prvé potvrdenie podáva informáciu o tom, že bola transakcia ťažiarom zaradená a vyťažená v poslednom bloku. Ďalšie potvrdenia potom znamenajú, že na tento blok ďalej nadväzujú ďalšie bloky a transakciu už nemožno spätne zmeniť.

Pri zasielaní vyšších čiastok je vhodné čakať na vyššie počty potvrdení, ideálne 6 a viac. Dôvodom je, že transakcia môže byť aj pri jednom či dvoch potvrdeniach súčasťou tzv. vyprchaného bloku – viac v našom článku o kryptomenových forkoch.

Hlavným prínosom autora Bitcoinu, Satoshiho Nakamota, je vyriešenie problému double-spend (dvojitého utratenia) vynájdením blockchainu. Už skôr existovali rôzne distribuované databázy, ktoré by sa dali použiť ako úložisko toho, kto má koľko peňazí. Ak chce niekto previesť prostriedky z účtu na účet, musí sa nejako autorizovať, že sú to jeho prostriedky. Aby tá autorizácia fungovala bez prostredníka, môže sa použiť asymetrické šifrovanie, resp. podpisovanie asymetrickými kľúčmi. Účet by bol definovaný verejným kľúčom, a len ten, kto má zodpovedajúci súkromný kľúč, môže previesť prostriedky inam. Všetci ostatní ľahko overia, že podpis je správny, takže prostriedky naozaj posiela vlastník účtu. Rôzne metódy silného šifrovania sú známe od 70. rokov 20. storočia vynálezom RSA, teda tiež žiadna novinka (Bitcoin používa o niečo novšiu kryptografiu na báze eliptických kriviek).

Čo vlastne Bitcoin rieši po technickej stránke?

Do vynálezu Bitcoinu však jeden problém stále pretrvával: Ak vlastník peňazí môže podpísať transakciu posielajúcu peniaze na účet A, čo mu bráni v tom, aby v tú istú chvíľu odoslal tie isté peniaze aj na účet B? Súkromný kľúč mu tým prvým podpisom samozrejme nikam nezmizne. A ako by sa v takom prípade mala sieť správať? Typický prípad je ten, že by si niekto za peniaze niečo kúpil a potom by chcel peniaze vrátiť: Kupec vytvorí transakciu, ktorá z jeho účtu A prevedie peniaze na účet obchodníka B. Obchodník vidí, že má prostriedky na účte, a urobí primerané protiplnenie (napríklad kupcovi predá tehlu zlata). Kupec vezme tehlu, odíde preč, a vytvorí inú transakciu, ktorá tie isté peniaze z účtu A prevádza na kupcov iný účet C. Ktorá z tých transakcií je správna? Tá prvá? Tá druhá? Žiadna? Čo keď obe vytvoria v rovnaký čas a každú z transakcií pošle do inej časti siete? Samotné distribuované databázy na toto nemajú odpoveď, tento stav nie je definovaný. Nedefinovaný stav by ale pre obchodníka mohol znamenať stratu zlatej tehly aj kryptomeny.

V tradičnom svete sa tento problém rieši tak, že v prípade hotovosti nie je možné (resp. ľahké) klonovať fyzické objekty. Teda je ťažké naklonovať bankovku. Obchodník (a ostatní držitelia meny) majú teda istotu, že akonáhle kupec dá svoju bankovku niekomu inému, už ju sám nemá. V prípade bankových prevodov je prostredníkom banka; banka tiež ako centrálny bod ručí za to, že ak peniaze človek odošle z účtu, nebude ich môcť poslať znova. Centrálny bod ale v prípade Bitcoinu z mnohých dôvodov nechceme.

Satoshi Nakamoto vyriešil problém tzv. „Blockchainom“, čo je vlastne databáza transakcií. Idea je taká, že platí tá transakcia, ktorá sa dostane do blockchainu. V blockchaine nemôžu byť dve konfliktné transakcie, inak je celá časť začínajúcej konfliktnej transakcie neplatná. V prípade dvojitého utratenia blockchain nezaručuje, ktorá z transakcií bude nakoniec tá správna, ale zaručuje, že to bude vždy len jedna z nich a všetci budú vedieť, ktorá to je. Takže ak obchodník so zlatom uvidí, že v blockchaine je transakcia vedúca na jeho adresu, vie, že môže kupcovi dať zlato. Ak vidí, že je v blockchaine konfliktná transakcia, zlato mu nevydá a k žiadnemu obchodu nedôjde.

Z technického pohľadu je blockchain pomerne triviálna dátová štruktúra. Je to doslova reťazec blokov, kde každý nasledujúci blok obsahuje hash bloku predchádzajúceho. Tak je zaistené, že blok s hĺbkou X môže vzniknúť až potom, keď je známy blok X mínus jedna (pretože do tej doby nie je známy jeho hash). Blok je jednoducho kus dát, kde okrem odkazu na predchádzajúci blok sú najmä tie transakcie, ktoré sa týmto potvrdzujú. Tiež je tam transakcia, v ktorej idú nové bitcoiny a poplatky z potvrdených transakcií na účet prevádzkovateľa ťažby. Ak je blok platný, prevádzkovateľ ťažby dostane odmenu. Ak by blok obsahoval konfliktné transakcie, prevádzkovateľ ťažby by si posielal väčšiu odmenu než mu patrí, či by akokoľvek inak chcel pozmeniť sieť, nikto iný jeho blok neprijme, bude ignorovaný. Iný ťažiar medzitým vytvorí paralelný blok, a odmenu tak získa on.

Ak sa vrátime späť k obchodníkovi so zlatom, samozrejme by kupec mohol zaplatiť, nechať transakciu zapísať do blockchainu, odísť so zlatom, a potom vygenerovať paralelnú časť blockchainu k tej pôvodnej, ktorá by zneplatňovala jeho pôvodnú transakciu a potvrdzovala jeho novú transakciu. To je samozrejme nežiadúce. Tu sa uplatňuje tzv. „Proof of work“ – dôkaz práce.

Je to mechanizmus, kedy je tvorba bloku zámerne zložitá a musia sa na ňu vynaložiť peniaze. Myšlienka je taká, že na to, aby mohol kupec sfalšovať tú vlastnú transakciu, by musel vyťažiť paralelné bloky rýchlejšie ako zvyšok siete. Čo nemôže, pretože toľko výkonu nemá, pretože ten by ho stál veľa peňazí. Proof of work predpokladá, že väčšinu výkonu na ťaženie budú držať „dobrí“ ľudia, ktorí nebudú podvádzať.

Nakoľko je tento predpoklad pravdivý je otázkou, avšak v praxi by bol tento podvod natoľko drahý, že by kupec musel nakúpiť naozaj veľa zlata, aby sa mu to vyplatilo. A ak by kupoval veľa zlata, obchodník môže čakať na viac potvrdení, čím by podvod bol ekonomicky neefektívny. So vzrastajúcim počtom obchodníkom požadovaných potvrdení totiž stúpa aj počet falošných blokov potrebných na realizáciu podvodu; čím viac potvrdení, tým viac by bol podvod nákladnejší.

Obchodník teda môže čakať na toľko potvrdení, aby sa podvod určite nevyplatil. Za tehlu zlata môže chcieť napríklad 5 potvrdení, pre tonu zlata napríklad 100 potvrdení a platbu za kávu môže pokojne nechať bez potvrdenia, pretože je to malá čiastka („potvrdenie“ je počet blokov naviazaných na blok s danou transakciou vrátane tohto bloku).

Ako získať a ako kúpiť bitcoin?

Bitcoin možno získať tromi spôsobmi. Možno ho vyťažiť, kúpiť alebo zarobiť. Ťažba bitcoinu nie je nič jednoduché, a tak väčšine ľudí nezostáva nič iné, než si ho kúpiť za fiat peniaze, alebo dostať ako odmenu za odvedenú prácu.