Dvojité utrácení může narušit veškerou důvěru v kryptoměnu, a proto bylo vynaloženo tolik úsilí na zajištění toho, aby k tomuto typu podvodu nedocházelo.
Transakce kryptoměn jsou díky technologii blockchain bezpečné a důvěryhodné. Nicméně, stejně jako většina inovativních systémů, blockchain má zneužitelná zranitelnost, která může vést k dvojnásobným výdajům. Co je to ale dvojí utrácení a jak tomu předcházet?
Co jsou dvojité výdaje?
Dvojí útrata nastane, když jeden subjekt utratí stejný token kryptoměny více než jednou. To je způsobeno chybou v digitálních měnách, která je činí snadno reprodukovatelnými.
Informace o blockchainové síti lze během transakcí upravovat, pokud jsou splněny určité podmínky. Při splnění těchto podmínek se změní bloky transakcí může vstoupit do blockchainu, což umožňuje pachateli znovu získat dříve vynaložené kryptotokeny.
Abyste lépe porozuměli tomu, jak k tomu dochází, zde je zjednodušený popis procesu. Když je transakce provedena v blockchainové síti, řekněme Bitcoin, vytvoří blok, který obsahuje data transakce, data z předchozího bloku a časové razítko. Blok má zašifrovaný kód zvaný hash.
The lidé, kteří těží bitcoiny na bitcoinové síti poté ověřte transakci pomocí algoritmu proof-of-work konsensu, zavřete blok a vytvořte nový blok. Nový blok obsahuje časové razítko, hash předchozího bloku a nová data transakce. Poté vítězný těžař obdrží blokové odměny (BTC) za ověření hashe.
K úspěšnému provedení dvojitého utrácení musí pachatel vytěžit tajný blok, který předčí vytvoření skutečného bloku. K tomu musí pachatel vložit tajný blok před nový blok, aby síť, podveden, aby si myslel, že je to nejnovější soubor rostoucího bloku, přidává falešný blok ke stále rostoucímu řetěz. Pachatel pak může získat zpět dříve použité kryptotokeny.
I když je dvojí utrácení v kryptoprostoru dobře známým fenoménem, neexistuje žádný zdokumentovaný případ. Ověřování transakcí je totiž složitý proces, který vyžaduje ohromný výpočetní výkon. Falšování nebo duplikování bloku je intenzivní, protože pachatelé musí pracovat před každým jiným těžařem na blockchainu.
Proč je dvojité utrácení problémem?
Dvojité utrácení je urážkou bezpečnosti blockchainové sítě. Stává se to, když existuje zneužitelná slabost.
Kromě toho má být blockchainová síť bezpečná a důvěryhodná. Pokud v kryptoměnové síti dojde ke dvojímu utrácení, vytváří to nedůvěru v daný kryptosystém a odradí investory. A nakonec hodnota tokenu klesne.
Dvojité utrácení je navíc digitální krádež. Hacker získává, zatímco někdo jiný v síti, obvykle obchodník, ztrácí. Pachatel si ponechává vlastnictví zboží obchodníka a kryptotokenu.
Příklady útoků na dvojité výdaje
Počítačoví zločinci používají různé formy útoků s dvojím utrácením. Tady jsou některé z nich:
51% útok
Útok 51 % je nejdiskutovanější formou dvojího utrácení. Nastává, když těžař (nebo skupina těžařů) kontroluje většinu (více než 50 %) transakcí ověřujících výpočetní výkon v síti.
Když k tomu dojde, mohou diktovat transakce, vytvářet nové bloky, získávat zpět již vynaložené krypto a udělovat kryptotokeny. To jim dává možnost utratit digitální mince dvakrát.
51% útok je méně pravděpodobný u zavedenějších kryptoměn, jako je bitcoin. To je způsobeno obrovským počtem těžařů v síti a obtížnost hashování. Nicméně kryptoměny s menšími sítěmi, jako jsou nové nebo rozvětvené, mohou být ohroženy.
V roce 2014 GHash.io, těžební pool, který fungoval od roku 2013 do roku 2016, krátce překonal 51 % bitcoinového výpočetního výkonu na bitcoinu. Tento vývoj vyvolal značné obavy o bezpečnost sítě. Poté Gnash.io dobrovolně omezil svůj výpočetní výkon na 39,99 %, aby obnovil důvěru v síť.
Finneyho útok
Tento typ útoku s dvojím utrácením byl popularizován a pojmenován po Halu Finneym. Při útoku na Finneyho hacker nepotřebuje 51 % hashovací síly. Aby to bylo úspěšné, musí obchodník přijmout neověřenou transakci od hackera, který je těžař.
Hacker vygeneruje blok, ve kterém si připíše kryptotokeny tím, že zahájí transakci z adresy X na adresu Y (obě mu patří), aniž by ji vysílal do sítě. Pokračuje v provedení další platby se stejnými kryptotokeny z adresy X na adresu Z, která patří obchodníkovi.
Pokud obchodník přijme nepotvrzené transakce bez ověření z blockchainu, hacker poté uvolní blok, který obsahuje jeho počáteční transakci. Síť zruší transakci s obchodníkem poté, co obchodník uvolní zboží nebo služby hackerovi. To umožňuje hackerovi utrácet dvakrát.
Závodní útok
Tento útok je snazší zvládnout než 51% a Finneyho útoky. Při rasovém útoku existuje „rasa“ mezi dvěma transakcemi.
Hacker používá různé stroje k odeslání stejného tokenu dvěma obchodníkům. Pokud obchodník odešle zboží nebo služby před potvrzením transakce, zjistí, že transakce nebyla během procesu těžby přijata.
Jak Blockchain zabraňuje dvojímu utrácení
Blockchainy chrání před dvojím utrácením konsensuální algoritmy, jako:
Proof-of-Work (PoW)
Proof-of-work je vysoce konkurenční proces, který vyžaduje obrovské množství energie. V tomto mechanismu konsensu těžaři používají složité počítače k uhodnutí hash transakčních bloků.
Hash je zašifrovaný, jedinečný 64místný hexadecimální kód, který má každá transakce. Tento proces vynakládá výpočetní výkon k prokázání pravosti transakce.
Jakmile je transakce ověřena, úspěšný těžař přidá transakci do decentralizovaná digitální účetní kniha. Na konci procesu obdrží úspěšný těžař blokové odměny v nativním digitálním tokenu.
Bitcoin, Bitcoin Cash, Litecoin, Monero a Dogecoin jsou populární kryptoměny, které používají tento konsensuální algoritmus.
Proof-of-Stake (PoS)
V Proof-of-Stake účastníci v krypto síti ověřují blokové transakce a nazývají se validátory. Validátoři nabízejí (nebo „sází“) některé ze svých kryptotokenů v chytré smlouvě, aby získali právo ověřovat transakce před jejich přidáním do rostoucího blockchainu.
Síť vybere poctivého ověřovatele na základě jejich vsazených tokenů a doby trvání sázek. Po výběru vítěz ověří transakci, kterou potvrdí ostatní validátoři.
Stejně jako PoW, validátoři také dostávají odměnu ve formě příjmu po ověření nových transakcí. Pokud síť zjistí, že některý validátor je nepoctivý, ztratí část nebo všechny své vsazené tokeny jako trest.
Tento proces je rychlejší a vyžaduje menší výpočetní výkon a energii než PoW. Účastníci na blockchainu proto mohou efektivně působit jako validátoři.
Ethereum 2.0, Cardano, Tezos a Solana používají PoS.
Delegovaný důkaz o sázce (DPoS)
Tento typ konsenzuálního algoritmu PoS nařizuje uživatelům na blockchainu používat své digitální tokeny k hlasování pro čestné validátoři nazývaní „delegáti“. Jeden delegát je náhodně vybrán, aby ověřil nové transakce a přidal je do blockchain.
Po zaplacení delegát rozdělí blokové odměny uživatelům, kteří pro ně hlasovali.
Mezi kryptoměny, které využívají algoritmus DPoS, patří EOS, Ark, Tron a Lisk.
Zatím žádný případ, ale dvojí útrata je možná
I když neexistují žádné potvrzené případy, vznik nových a forkovaných kryptoměn a nedávné technologické pokroky mohou způsobit překvapení dvojnásobných výdajů. Proto byste se měli chránit prováděním transakcí na bezpečných blockchainech kryptoměn. A zpravidla počkejte, až těžaři potvrdí transakce, než uvolní vaše tokeny, zboží nebo služby.