blockchain a kryptomeny

Není pochyb, že celosvětová obliba a povědomí o bitcoinu a obecně o kryptoměnách roste. S tím, jak se o kryptoměnách více a více mluví, roste i počet jejich uživatelů. Blockchain technologie, digitální měny, to vše se pořád víc dostává do médií. Za většinu poprasku ohledně výše zmíněných může právě bitcoin, díky kterému se o všem začalo mluvit. Bitcoin se stal první plně funkční digitální měnou a zásadně změnil způsob našeho vnímání finančního světa.

Možná budete překvapeni, ale pokusy vytvořit životaschopný digitální měnový systém se uskutečnily již dávno před tím (v agličtině), než spatřil světlo světa první bitcoin. Bohužel žádný z nich neuspěl. Jedním z důvodů byl i zřejmý problém digitálních měn: možnost okopírování a použití k platbě dvakrát (tzv. dvojitá útrata).

Bitcoin dokázal přežít a prosperovat také díky tomu, že byl schopen problém dvojí platby spolehlivě vyřešit. Jak se mu to podařilo a co problém zvaný “douple spending” vlastně je? Pojďme se na to podívat detailněji.

Co znamená a jak funguje „double spending“?

Stručně řečeno, „double spending“ („dvojí platba“) znamená, že tytéž peníze jsou použity k platbě dvakrát. Toto je vizuální představa, jak taková situace může vypadat:

problem dvojite utraty

Pojďme si to nyní ale vysvětlit na jednoduchém příkladu z běžného života. Představte si následující situaci:

V restauraci si dáte oběd, který stojí, řekněme, 200 Kč. Platíte v hotovosti tzn. že peníze putují rovnou do pokladny. Od tohoto okamžiku, i kdybyste podnikli cokoli, tyto peníze už nikdy do ruky nedostanete a za jiný nákup je neutratíte.

Po zaplacení poskytovatel služby, v našem případě restaurace, obratem potvrdí, že jste skutečně zaplatili a za své peníze obdrželi oběd. Platba proběhla v hotovosti tzn. za fyzické peníze, což je jiný případ, než kdybyste platili bitcoinem, tedy digitální měnou. Právě digitální povaha bitcoinu je důvod, proč lze transakce bitcoinu kopírovat a odesílat. Teoreticky jde pouze o to zkopírovat jednu transakci v počítači a trochu ji upravit, že? Otvírá se tak možnost, že majitel bitcoinu zaplatí dvakrát nebo i vícekrát.

Jak je to možné?

Ve zmíněném případě jste platili hotově. Platba byla ověřena a okamžitě potvrzena jiným člověkem. Použitou bankovku už zpět nedostanete. Nicméně pokud bychom k platbě použili digitální měnu jako je bitcoin, který podobným ověřovacím mechanismem nedisponuje, mohlo by dojít k dvojí platbě. Může se totiž stát, že stejné digitální peníze kdokoli okopíruje a zaplatí jimi v tu samou chvíli i na jiném místě.

Bitcoin, ačkoli patří mezi digitální měnové jednotky, dokáže problém možného kopírování a dvojí platby spolehlivě vyřešit.

Podívejme se, v čem jedinečnost řešení spočívá…

Způsob, jímž bitcoin řeší riziko dvojí platby

problem dvojite utraty

Bitcoin se s problémem dokáže vyrovnat díky implementaci potvrzovacího mechanismu a správě univerzální účetní knihy – blockchain. Jedná se o “účetní knihu” podobné klasické účetní knize, jak ji můžete znát. Více o blockchainu zde – Co je blockchain a jak funguje?

Dá se říci, že blockchain bitcoinu spravuje účetní knihu, která obsahuje všechny transakce v chronologickém pořadí opatřené časovým razítkem od zavedení této měny v roce 2009. Do této účetní knihy (blockchainu) je zhruba každých 10 minut přidán další blok (tj. skupina transakcí). A právě již zmíněná blockchain technologie se stará o riziko dvojí platby a zabraňuje mu.technologie blockchainNyní se podívejme, jak bitcoinová síť předchází riziku dvojí platby.

Předpokládejme, že vlastníte 1 BTC (bitcoin), který se snažte utratit dvakrát, tzn. udělat s ním 2 transakce najednou. Ve stejnou chvíli vytvoříte transakce z vaší peněženky do dvou jiných peněženek. V tu jednu danou chvíli totiž přeci 1 BTC na peněžence máte a kdybyste transakce udělali v ten samý moment, obě by měly projít, že? Jedna však platná nebude.

Ověření té pravé transkace je jednoduché. Obě transakce putují na hromádku nepotvrzených transakcí. Potvrzení se však dočká pouze jedna transakce, ověřována v dalším bloku těžaři. Druhá transakce dostatečný počet potvrzení nezíská a těžaři ji označí za neplatnou. Proto je ze sítě stažena.

Počkat…A co když obě transakce převezmou těžaři současně?

Pokud těžaři obě transakce stáhnou současně, bude do blockchainu zařazena pouze ta, která obdržela větší počet potvrzení, zatímco druhá bude stornována. Pokud namítnete, že je to vůči obchodníkovi nespravedlivé, musím souhlasit, ale bohužel stát se to může.

Proto se obchodníkům doporučuje počkat zhruba hodinu (6 potvrzení – každých 10 minut jedno) před odesíláním zboží, které zákazník zaplatil bitcoiny. Šest potvrzení znamená, že po přiřazení naší transakce do blockchainu bylo přidáno dalších šest bloků obsahujících další transakce.

“Potvrzení” neznamená nic jiného než přidání více bloků s více transakcemi do blockchainu. Každá transakce a blok jsou matematicky navázány k předcházejícím. Všechny potvrzení a transakce jsou opatřeny časovým razítkem v blockchainu tzn. že je nelze vrátit do předchozí podoby a jakkoli s nimi dále manipulovat.

Pokud tedy obchodník obdrží minimální počet potvrzení, může být klidný, že ze strany zasilatele nedošlo k dvojí platbě.

Jak se může obchodník zabezpečit?

Aby mohl člověk použít k platbě stejné peníze vícekrát, musely by se vrátit všechny transakce uložené v 6 blocích, které byly přidány až po naší transakci, což je vzhledem k náročnosti výpočetního výkonu prakticky vyloučeno.

Možné případy dvojí platby:

51% šance na útok – Pokud by se podařilo potenciálnímu útočníkovi jakýmkoli způsobem získat nadpoloviční množství hash-výkonu sítě, získal by postavení, které by mu umožnilo provádět dvojí platby.

“Hash výkon” představuje výpočetní výkon nutný k ověřování transakcí a bloků. Pokud by získal útočník takovou moc, mohl by jakoukoli transakci vrátit a vytvořit privátní blockchain, který by ostatní účastníci mylně považovali za skutečný.

Vzhledem k finanční náročnosti získání 51% podílu k podobnému útoku doposud nedošlo. Obrovská složitost procesu těžby, nepředstavitelná vysoká cena hardwaru a značná spotřeba elektřiny tuto možnost prakticky vylučují.

Závod s časem – Pokud útočník odešle stejnou platbu rychle za sebou na dvě různé adresy, bude zařazena pouze jedna z nich. Pokud byste v úloze obchodníka nepočkali na potvrzení platby, lze s 50% pravděpodobností předpokládat, že peníze, které jste dostali, byly již jednou použity (jinými slovy, nedostali jste zaplaceno).

Můžeme vás ale uklidnit, za celých 10 let historie bitcoinu se žádný podobný útok  doposud nezdařil. Mechanismus univerzální účetní knihy (blockchainu) využívající potvrzování transakcí stále čeká na prolomení.

Doufám, že vám tyto informace o problému dvojité útraty (double spending) pomohly zase blíže pochopit fungování blockchainu a kryptoměn obecně. 

ZANECHAT ODPOVĚĎ

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.