Co je blockchain?
Stručně řečeno, blockchain je ekvivalentem decentralizované digitální účetní knihy, která zaznamenává řadu dat. Tato data jsou uspořádána do bloků, chráněna kryptografií a uspořádána v chronologickém pořadí.
Nejstarší modely blockchainu byly postaveny na počátku 90. Počítačový vědec Stuart Haber a fyzik W. Scott Stornetta tehdy používali šifrovací technologii k ochraně dat před manipulací.
Tento úspěch Habera a Stornetty inspiroval mnoho počítačových vědců a nadšenců do kryptografie ke studiu blockchainu, což také podpořilo zrod bitcoinu, prvního decentralizovaného elektronického hotovostního systému na světě (první kryptoměna).
Technologie blockchain sice předcházela kryptoměny, ale teprve v roce 2008, kdy se zrodil Bitcoin, se první z nich postupně prosadila. Od té doby zájem veřejnosti o technologii blockchain vzrostl a kryptoměny začaly získávat na popularitě.
Technologie blockchain se používá především k zaznamenávání transakcí kryptoměn, ale může také zaznamenávat různá digitální data a lze ji použít i v jiných oblastech. Nejstarší, nejbezpečnější a největší blockchainová síť je bitcoin, který byl pečlivě navržen tak, aby vyváženým způsobem prolnul kryptografii a teorii her.
Jak blockchain funguje?
Ve světě kryptoměn si můžeme blockchain představit jako řetězec stabilních bloků, z nichž každý uchovává sekvenci dříve potvrzených transakčních dat. Blockchain síť je společně udržována bezpočtem počítačů, takže její hlavní funkcí je fungovat jako decentralizovaná databáze (neboli účetní kniha). Jinými slovy, všichni účastníci (tj. uzly) v blockchainu udržují kopii blockchainových dat a udržují mezi sebou dobrou komunikaci, aby bylo zajištěno, že všichni budou vždy na stejné stránce (nebo bloku).
Výsledkem je, že k blockchainovým transakcím dochází v globální síti peer-to-peer, což propaguje bitcoin jako decentralizovanou kryptoměnu bez hranic a odolnou cenzuře. Většina blockchainů však nevyžaduje žádný mechanismus důvěry a jsou považovány za nedůvěryhodné systémy. Bitcoin také nemá žádný nezávislý regulátor.
Téměř všechny blockchainy mají v jádru těžbu, která je neoddělitelná od hashovacích algoritmů. Bitcoin používá algoritmus SHA-256 (Secure Hash Algorithm 256 bits), který umožňuje zadáním řetězce libovolné délky vytvořit výstup stejné délky. Výstupní výsledek lze nazvat „hodnotou hash“, která má vždy 64 znaků (256 bitů).
Proto bez ohledu na to, kolikrát se „těžba“ opakuje, stejný vstup vždy produkuje stejný výstup. Pokud se však vstup mírně změní, výstup bude zcela jiný. Proto je hashovací funkce deterministická, zatímco většina kryptoměn je navržena s jednosměrnou hashovací funkcí.
Tento typ funkce určuje, že uživatel nemůže odvodit vstup na základě výsledků výstupu. Jediný způsob je uhodnout, ale pravděpodobnost uhodnutí je velmi malá. To je jeden z důvodů, proč je bitcoinový blockchain bezpečný a spolehlivý.
Nyní, když rozumíme funkčnosti algoritmu, pojďme si ukázat, jak blockchain funguje, na jednoduchém příkladu transakce.
Předpokládejme, že Alice a Bob jsou držiteli dvou bitcoinů a Alice dluží Bobovi dva bitcoiny.
Aby Alice splatila Bobovi dva bitcoiny, vysílá tyto informace o transakci těžařům v celé síti.
V této transakci Alice informuje těžaře o Bobově adrese a počtu obchodovaných bitcoinů a připojí digitální podpis se svým veřejným klíčem. Tento podpis je generován soukromým klíčem Alice a umožňuje těžařům ověřit, že Alice je skutečným vlastníkem těchto bitcoinů.
Po potvrzení, že transakce je autentická a platná, může těžař vložit tyto informace o transakci do bloku spolu s dalšími informacemi o transakci a pokusit se tento blok „vytěžit“. Tento blok je provozován pomocí algoritmu SHA-256 a výsledek operace musí začínat určitým počtem "0" s, než může být posouzen jako platný. Počet „0“ závisí na „obtížnosti“ operace, která se bude měnit se změnami ve výpočetním výkonu celé sítě.
Aby bylo možné správně vygenerovat očekávaný počet hashů „0“, těžaři přidají do bloku „nonce“ před spuštěním šifrovacího algoritmu. Mírné změny v této hodnotě zcela změní výsledek operace a těžaři musí zkoušet různé náhodné nonce, dokud nedostanou správnou hash hodnotu.
Pokaždé, když je blok vytěžen, těžaři vysílají informace o novém bloku do celé sítě, aby ostatní těžaři mohli potvrdit platnost bloku. Poté přidají platné informace o bloku do svého vlastního blockchainu, což znamená, že transakce je dokončena. Nicméně těžaři stále potřebují přidat hash hodnotu předchozího bloku do nového bloku a nakonec všechny bloky propojit, aby vytvořili skutečný „blockchain“. To je velmi důležité a odráží to roli důvěry v systém.
Každý těžař ukládá svou vlastní kopii blockchainu na osobní počítač a dosahuje konsensu: blockchain s největším výpočetním výkonem musí být nejdelší. Pokud chce někdo změnit informace o transakci v předchozím bloku, změní se také hodnota hash tohoto bloku, což způsobí, že se změní hodnoty hash všech bloků po tomto bloku. Musí zopakovat všechny předchozí výpočty, aby přesvědčil ostatní, že informace o jeho bloku jsou správné. Pokud se tedy těžař pokusí manipulovat s blokovými informacemi, musí investovat více než 50 % výpočetního výkonu celé sítě, což je téměř fantazie. Podobné síťové útoky se proto nazývají 51% útoky.
Tento model, který vyžaduje počítačové operace ke generování nových bloků, se nazývá Proof of Work (PoW). Existují také další mechanismy, jako je Proof of Stake (PoS), které nevyžadují obrovský výpočetní výkon, spotřebovávají méně energie a přitahují více uživatelů k účasti.

