Ahoj ve spolek, jmenuju se Atto a budu pro vás překládat videa z angličtiny. Můžete se těšit zejména na videa o kryptoměnách, podnikání a start-upech. První video je o technologii, která je dnes čím dál víc populární – blockchain. Co to ale vlastně blockchain je? Jak funguje a k čemu se dá využít?
Blockchainy jsou dnes nesmírně populární. Ale co to přesně blockchain je? Jak fungují? Které problémy pomáhají řešit
a jak je lze využít? Jak název napovídá, blockchain
je série bloků obsahujících informace. Tato metoda byla poprvé popsána
skupinou vědců v roce 1991 a byla původně zamýšlena k označení
digitálních dokumentů časovým razítkem, a to proto, aby je nebylo možné
opatřit dřívějším datem či s nimi jinak neoprávněně manipulovat.
Skoro jako razítko notáře. Blockchain však neměl širší využití
a to až do roku 2009, kdy jej Satoshi Nakamoto použil
k vytvoření digitální kryptoměny Bitcoin. Blockchain je distribuovanou účetní knihou,
která je každému volně přístupná. Blockchainy mají zajímavou vlastnost:
jakmile jsou do nich nějaká data zanesena, je velice těžké je změnit. Jak to tedy funguje? Řekněme si nejprve, co je to blok. Každý blok obsahuje nějaká data,
vlastní hash a hash předchozího bloku.
Typ dat, který je uložen v bloku,
je závislý na typu blockchainu. Například blockchain Bitcoinu
ukládá informace o proběhlých transakcích, jako je odesílatel,
příjemce a celková částka. Každý blok má také hash, přičemž hash
je v principu podobný otisku prstu. Hash přesně identifikuje blok
a veškerý jeho obsah, a je unikátní stejně jako otisk prstu. Jakmile je blok vytvořen,
musí se vypočítat jeho hash.
Jakákoliv změna bloku
také způsobí změnu hashe. Jinými slovy, s pomocí hashů
lze efektivně odhalit změny v blocích. Jestliže se "otisk prstu" bloku změnil,
už to není ten samý blok. Třetím elementem každého bloku
je hash předchozího bloku. Díky tomu z bloků
vzniká provázaný řetězec, proto je blockchain tak bezpečný. Ukažme si to na příkladu. Tady máme řetězec sestávající ze 3 bloků.
Jak vidíte, každý blok obsahuje
svůj vlastní hash a hash předchozího bloku. Blok číslo 3 odkazuje na blok číslo 2,
a blok číslo 2 odkazuje na blok číslo 1. Blok číslo 1 je výjimečný,
protože je to úplně první blok a nemůže odkazovat
na žádný předchozí blok. Nazýváme jej "původní blok." Řekněme, že budete manipulovat
s blokem číslo 2, což způsobí i změnu hashe tohoto bloku.
Blok 3 a všechny ostatní bloky
však teď budou neplatné, protože neobsahují platný hash
předchozího bloku. Změna jediného bloku tedy zruší platnost
všech následujících bloků Použití hashů však nestačí
k zabránění manipulacím. Počítače jsou
totiž v dnešní době velmi výkonné a zvládnou vypočítat
stovky tisíc hashů za sekundu. Mohli byste tak
jednoduše zmanipulovat blok a přepočítat všechny hashe ostatních bloků
a potvrdit tak platnost svého řetězce.
Tomu blockchain předchází pomocí
tzv. proof-of-work, "důkazu práce," což je mechanismus zpomalující
vytváření nových bloků. V případě Bitcoinu trvá vypracování proof-of-work,
vytvoření nového bloku a jeho připojení do řetězce
asi 10 minut. Tento mechanismus výrazně znesnadňuje manipulaci existujících bloků, protože k manipulaci jednoho bloku je zapotřebí předělat proof-of-work
i pro všechny následující bloky v řetězci.
Bezpečnost blockchainu tedy vychází z chytrého využití hashů
a mechanismu proof-of-wok. Blockchainy mají
ještě jednu složku zabezpečení, a tou je decentralizace. Namísto využití
centrálního správního subjektu, blockchainy používají P2P sítě,
ke kterým se může kdokoliv přidat Když se někdo k síti přidá,
obdrží úplnou kopii blockchainu.
Uživatel s vlastním uzlem tak může ověřit,
že je vše v pořádku. Co se tedy stane,
když někdo vytvoří nový blok? Nový blok je rozeslán
všem lidem zapojeným do sítě. Každý uzel potom ověří
a potvrdí platnost nového bloku. Pokud všechny uzly potvrdí jeho platnost,
přidají tento blok do svého blockchainu. Všechny uzle v síti
tvoří většinový konsensus a shodují se na tom,
které bloky jsou platné a které ne. Zmanipulované bloky budou odmítnuty
ostatními uzly v síti.
Abyste úspěšně zmanipulovali blockchain, musíte zmanipulovat
všechny bloky v řetězci, přepočítat proof-of-work pro každý blok, a kontrolovat více než 50%
celé peer-to-peer sítě. Jen poté bude zmanipulovaný blok potvrzen
a ověřen ostatními členy sítě. A to je téměř nemožné. Blockchainy se navíc neustále vyvíjejí. Jednou z posledních novinek
jsou tzv.
chytré kontrakty. Tyto kontrakty jsou jednoduché programy
uložené v blockchainu, které mohou být využity
k automatické směně peněz při splnění určitých podmínek. O chytrých kontraktech
si řekneme více v dalším videu. Vytvoření technologie blockchainu
vzbudilo zájem mnoha lidí. Někteří si brzy uvědomili, že tuto technologii lze využít
pro mnoho věcí, jako uložení lékařských záznamů, vytvoření digitálního notáře
nebo výběr daní.
Teď již víte, co to je blockchain,
jak funguje a k čemu se dá použít. Chcete se naučit, jak vytvořit
jednoduchý blockchain v Javascriptu? Podívejte se na toto video. A jako vždy, děkuji, že jste se dívali.