Technologie 

Blockchain pro začátečníky: Potvrzování a sledování transakcí – díl třetí

Z předchozích dvou dílů víme, na jakém principu blockchain funguje a známe specifika platebního procesu. Zatím jsme ale sledovali ideální modelovou situaci. Co se tedy stane, když bude chtít někdo systém zneužít nebo se zkrátka vloudí nějaká chybička? A víte, jak funguje potvrzování a sledování transakcí nebo jakou roli hraje v celém procesu řetězení? Na to se podíváme v následujících třech „co když...“ situacích.

Seriál o blockchainu pokračuje, ještě než se pustíme do dalšího tématu, připomeňte si specifika platebního procesu v prvním a druhém dílu.

1)  Co když… někdo nebude potvrzovat správné transakce a omezí tak provádění transakcí?

Nepotvrzení správné transakce nemusí být vždy záměrné. Může k tomu dojít i v případě, že si někdo uchovává jinou databázi než ostatní, například důsledkem chyby. Abychom byli schopni odpovědět, musíme se podívat na to, jakým způsobem blockchain řeší ukládání informací a jak zajišťuje integritu ukládaných dat.

Nejprve si představme transakční systém, který není tvořen jen čtyřmi přáteli, ale miliony lidí. Kdybychom vždy čekali na potvrzení nadpoloviční většinou, systém by byl značně neefektivní. Při návrhu blockchainu se již s možným rozšířením počítalo a byl vymyšlen jiný způsob. Původní metrika počtu účastníků byla převedena na výpočetní výkon celého systému.

Aby byla transakce ověřena…

  • Musí být použit výpočetní výkon reprezentující účast alespoň 51 % členů, tzv. hashrate.
  • Míra výpočetního výkonu je dána složitostí matematického problému, jehož řešení je právě výpočetně náročné.
  • Vzhledem k tomu, že stav účastníků se v celém systému dynamicky mění, mění se tím i úroveň složitosti řešení tohoto matematického problému.

Tento proces potvrzování transakcí se nazývá těžení (mining) a lidé, kteří verfikaci provedli, se pak nazývají těžaři (mineři).

Víme tedy, že blok v sobě obsahuje vstupní hodnotu do hashovací funkce sloužící jako důkaz potvrzení transakce. Dotyčný těžař musel vynaložit dostatečné úsilí (výpočetní výkon) pro získání požadované hodnoty. Blok je následně odeslán na všechny účastníky. Každý účastník vezme daný blok a uvedenou hodnotu, spočítá její hash a ověří důkaz. Následně se podívá, pro kterou transakci je daný blok důkazem a tuto transakci považuje za potvrzenou.

Pokud je tedy i samotný blok validní, uloží si ho příjemce do své lokální databáze. Uložení není nicméně pouhým vložením přijatého bloku vedle jiného bloku, ale jednotlivé bloky jsou dohromady zřetězeny. Řetězení (chaining) funguje tak, že aktuálně přijatý blok v sobě navíc obsahuje hodnotu, jejíž součástí je hash předchozího vydaného bloku. Při vytváření nového bloku se tak vezme i hodnota posledního vydaného validního bloku a ta je započítána do bloku nového. Tím vzniká vazba na předchozí blok. Proces řetězení vytváří spojenou databázi bloků, tzv. blockchain.

K čemu řetězení vlastně je?

Řekli jsme si, že každý z účastníků našeho transakčního systému si udržuje vlastní databázi potvrzených transakcí (bloků). Pokud má jeden účastník jinou databázi než druhý, je některá z nich neplatná a bude to právě ta, jejíž bloky na sebe nenavazují, neřetězí se. Proto hraje řetězení důležitou roli.

V případě, že by někdo chtěl záměrně falšovat databázi – nahradit posledních 5 bloků vlastními navazujícími bloky, musel by vynaložit obrovský výpočetní výkon, který by představoval více než 50 % výpočetního výkonu celého blockchain systému. To je velice málo pravděpodobné. Celá integrita blockchain databáze je tak silně chráněna a je značně rigidní.

) Co když… má účastník na svém účtu přesně 1000 jednotek a vytvoří současně dvě transakce, přičemž v jedné posílá 1000 jednotek jednomu uživateli a ve druhé 1000 jednotek jinému?

Pokud jsou z jednoho účtu odeslány dvě různé transakce, jsou vytvořeny ve stejném čase dva různé, nicméně validní bloky. V momentě, kdy jsou oba bloky přijaty, dojde v místě posledního bloku v blockchain databázi k rozdělení na dvě paralelní větve. Růst databáze pokračuje vydáváním dalších nových bloků a jejich postupným řetězením do jednotlivých větví podle toho, na jaký blok navazují. V momentě, kdy jedna větev začne být delší než druhá větev, je kratší větev zahozena a pokračuje se pouze s delší větví.

Co to znamená v praxi? Aby si příjemce některé transakce mohl být jistý, že mu skutečně daná částka náleží, počká ještě na vydání několika dalších bloků, které potvrdí, že jsou větví, která nebude zahozena.

3) Co když… účastník jednoho dne prohlásí, že 1000 jednotek, které mu byly odeslány, nikdy nedostal?

Stačí se podívat do databáze a najít blok potvrzující danou transakci, ve které je uveden převod 1000 jednotek z příslušného účtu na daný účet. Vzhledem k silné ochraně integrity databáze víme, že je velice nepravděpodobné, aby transakce neproběhla.

NEPŘEHLÉDNĚTE…

Už jsme poznali blockchain a specifika platebního procesu v prvním i druhém díle našeho seriálu. Přístě si povíme o dalších možnostech využití blockchainu. Ten totiž nemusí sloužit pouze jako platforma pro měnové transakce.

blockchain databáze hashrate mining platební transakce
Deloitte živě  Technologie 

Kdybych dnes firmu zakládal znovu, lidi kolem sebe bych zaměstnal o dost dříve, říká Josef Prusa

Když si Josef Průša, zakladatel společnosti Prusa Research vyrábějící 3D tiskárny, loni přebíral cenu za třetí příčku v soutěži Deloitte Technology Fast 50, neskrýval zklamání. Firma rostla raketovým tempem, ale přesto tempo růstu ve výši 6900 procent stačilo "jen" na bronz. Už tenkrát měl ale jasno: do roka a do dne porazí vítěze z roku 2017, vyhledávače letenek Kiwi.com! Výsledek? Po 12 měsících více než zdvojnásobený růst a první místo mezi padesátkou nejrychleji rostoucích technologických firem ve střední Evropě. 

12. 10. 2018
Deloitte živě  Technologie 

Český výrobce 3D tiskáren Prusa Research roste nejrychleji ve střední Evropě, vyhrál soutěž Deloitte Technology Fast 50

Nejrychleji rostoucí technologická společnost ve střední Evropě je už druhým rokem z Česka, na prvním místě se v žebříčku Fast 50 pro rok 2018 umístil výrobce 3D tiskáren Prusa Research. Loňský vítěz Kiwi.com obsadil druhou příčku. Česká republika si připsala další skvělá umístění, v první desítce jsou ještě Pilulka a nováček soutěže - Proficio Marketing. Prodejce online módy ZOOT obhájil loňské prvenství v kategorii Velká pětka, nejlepší česká firma mezi Vycházejícími hvězdami je výrobce 3D pera 3Dsimo (třetí místo), na desátém místě je online supermarket Rohlík.cz. Přečtěte si, jak probíhalo slavnostní vyhlášení v Praze. 

11. 10. 2018
Deloitte živě  Technologie 

makeITtoday: Technologie nejsou hračka, učíme děti, aby je samy tvořily

Technologie jsou součástí každodenního života, děti nevyjímaje, žijeme v technologické době a pokrok bude stále rychlejší. To jsou fakta, a co teď s tím? Začít s těmi nejmenšími. „Pro děti je totiž důležitá hravost a učení tvořením, což jsou jedny z nejdůležitějších hodnot při realizaci našich programovacích kurzů pro děti od 8 let,“ říká Klára Štouračová, spoluzakladatelka firmy makeITtoday, kde učí zkušení lektoři z praxe děti programovat a zároveň rozvíjejí jejich soft skills. Firma se letos přihlásila do soutěže Deloitte Technology Fast 50 do kategorie Social Impact Award. Cena je určena pro firmy, které mají produkt či službu s pozitivním dopadem na společnost. 

4. 10. 2018