Dvostruka potrošnja može narušiti svo povjerenje u kriptovalutu, zbog čega je uloženo toliko truda da se ova vrsta prijevare ne dogodi.
Transakcije kriptovaluta su sigurne i pouzdane zahvaljujući blockchain tehnologiji. Međutim, kao i većina inovativnih sustava, blockchain ima ranjivosti koje se mogu iskoristiti, a koje mogu dovesti do dvostruke potrošnje. Ali što je dvostruka potrošnja i kako je spriječiti?
Što je dvostruka potrošnja?
Dvostruka potrošnja događa se kada jedan subjekt potroši isti token kriptovalute više od jednom. To je uzrokovano greškom u digitalnim valutama zbog koje se lako mogu reproducirati.
Podaci na blockchain mreži mogu se mijenjati tijekom transakcija, pod uvjetom da su ispunjeni određeni uvjeti. Kada su ovi uvjeti ispunjeni, promijenjeni blokovi transakcija može ući u blockchain, omogućujući počinitelju da ponovno stekne prethodno potrošene kripto žetone.
Da bismo bolje razumjeli kako se to događa, evo pojednostavljenog opisa procesa. Kada se transakcija izvrši na blockchain mreži, recimo Bitcoin, ona stvara blok koji sadrži podatke o transakciji, podatke iz prethodnog bloka i vremensku oznaku. Blok ima šifrirani kod koji se naziva hash.
The ljudi koji rudare Bitcoin na Bitcoin mreži zatim potvrdite transakciju putem konsenzusnog algoritma dokaza o radu, zatvorite blok i stvorite novi blok. Novi blok sadrži vremensku oznaku, hash prethodnog bloka i nove podatke o transakciji. Nakon toga, pobjednički rudar dobiva blok nagrade (BTC) za provjeru hasha.
Kako bi uspješno izvršio dvostruku potrošnju, počinitelj mora rudariti tajni blok koji nadmašuje stvaranje stvarnog bloka. Da bi to učinio, počinitelj mora uvesti tajni blok prije novog bloka tako da mreža, prevaren misleći da je to najnoviji skup rastućeg bloka, dodaje lažni blok sve većem lanac. Počinitelj tada može povratiti prethodno korištene kripto žetone.
Iako je dvostruka potrošnja dobro poznata pojava u kripto prostoru, nema dokumentiranog slučaja. To je zato što je provjera transakcija složen proces koji zahtijeva ogromnu računalnu snagu. Falsificiranje ili dupliciranje bloka je intenzivno jer počinitelji moraju raditi ispred svih drugih rudara na blockchainu.
Zašto je dvostruka potrošnja problem?
Dupla potrošnja je uvreda za sigurnost blockchain mreže. To se događa kada postoji slabost koja se može iskoristiti.
Nadalje, blockchain mreža bi trebala biti sigurna i pouzdana. Ako se dogodi dvostruko trošenje na mreži kriptovaluta, to stvara nepovjerenje za taj kriptosustav, destimulirajući ulagače. I na kraju će vrijednost tokena pasti.
Osim toga, dvostruka potrošnja je digitalna krađa. Haker dobiva dok netko drugi na mreži, obično trgovac, gubi. Počinitelj zadržava vlasništvo nad robom trgovca i kripto tokenom.
Primjeri napada dvostrukog trošenja
Postoje različiti oblici napada dvostrukog trošenja koje cyber kriminalci koriste. Ovo su neki od njih:
51% napada
Napad od 51% oblik je dvostruke potrošnje o kojem se najviše raspravlja. To se događa kada rudar (ili grupa rudara) kontrolira većinu (više od 50%) računalne snage validacije transakcija na mreži.
Kada se to dogodi, oni mogu diktirati transakcije, stvarati nove blokove, povratiti već potrošenu kripto vrijednost i dodijeliti kripto tokene. To im daje moć dvostrukog trošenja digitalnih novčića.
Manje je vjerojatno da će se napad od 51% dogoditi u poznatijim kriptovalutama, poput Bitcoina. To je zbog ogromnog broja rudara na mreži i poteškoće s raspršivanjem. Međutim, kriptovalute s manjim mrežama, poput novih ili račvanih, mogu biti ugrožene.
Godine 2014., GHash.io, rudarski skup koji je radio od 2013. do 2016., nakratko je premašio 51% Bitcoinove računalne snage na Bitcoinu. Ovaj je razvoj izazvao značajnu zabrinutost oko sigurnosti mreže. Zatim je Gnash.io dobrovoljno ograničio svoju računsku snagu na 39,99% kako bi vratio povjerenje u mrežu.
Finneyjev napad
Ova vrsta napada dvostrukog trošenja popularizirana je i nazvana po Halu Finneyju. U Finney napadu, hakeru nije potrebno 51% snage raspršivanja. Da bi bila uspješna, trgovac mora prihvatiti neprovjerenu transakciju od hakera, koji je rudar.
Haker generira blok gdje sebi pripisuje kripto tokene pokretanjem transakcije s adrese X na adresu Y (obje pripadaju njemu) bez emitiranja na mrežu. On nastavlja s drugim plaćanjem s istim kripto žetonima s adrese X na adresu Z, koja pripada trgovcu.
Ako trgovac prihvati nepotvrđene transakcije bez provjere od blockchaina, haker tada oslobađa blok koji uključuje njegovu početnu transakciju. Mreža poništava transakciju s trgovcem nakon što je trgovac predao robu ili usluge hakeru. To hakeru omogućuje dvostruko trošenje.
Race Attack
Ovaj napad je lakše izvesti nego napade 51% i Finney. U napadu utrke postoji "utrka" između dvije transakcije.
Haker koristi različite strojeve za slanje istog tokena dvama trgovcima. Ako trgovac pošalje robu ili usluge prije nego što je transakcija potvrđena, otkrit će da transakcija nije prihvaćena tijekom procesa rudarenja.
Kako Blockchain sprječava dvostruku potrošnju
Blockchains štite od dvostrukog trošenja algoritmi konsenzusa, kao što su:
Dokaz rada (PoW)
Proof-of-work je vrlo konkurentan proces koji zahtijeva ogromnu količinu energije. U ovom mehanizmu konsenzusa, rudari koriste složena računala kako bi pogodili hash transakcijskih blokova.
Hash je šifrirani, jedinstveni 64-znamenkasti heksadecimalni kod koji svaka transakcija posjeduje. Ovaj proces troši računsku snagu za dokazivanje autentičnosti transakcije.
Nakon što je transakcija potvrđena, uspješni rudar dodaje transakciju u decentralizirana digitalna knjiga. Na kraju procesa, uspješni rudar dobiva blok nagrade u izvornom digitalnom tokenu.
Bitcoin, Bitcoin Cash, Litecoin, Monero i Dogecoin popularne su kriptovalute koje koriste ovaj konsenzusni algoritam.
Dokaz udjela (PoS)
U Proof-of-Stake sudionici na kriptomreži autentificiraju blok transakcije i nazivaju se validatorima. Validatori nude (ili "ulažu") neke od svojih kripto tokena u pametni ugovor kako bi stekli pravo na provjeru transakcija prije nego što ih dodaju rastućem blockchainu.
Mreža odabire poštenog validatora na temelju njihovih uloženih tokena i trajanja ulaganja. Nakon odabira, pobjednik potvrđuje transakciju, koju potvrđuju ostali validatori.
Baš kao PoW, validatori također dobivaju nagradu u obliku prihoda nakon provjere autentičnosti novih transakcija. Ako mreža utvrdi da je bilo koji validator nepošten, gubi dio ili sve svoje uložene tokene kao kaznu.
Ovaj proces je brži i zahtijeva manje računalne snage i energije nego PoW. Stoga sudionici na blockchainu mogu učinkovito djelovati kao validatori.
Ethereum 2.0, Cardano, Tezos i Solana svaki koristi PoS.
Delegirani dokaz udjela (DPoS)
Ova vrsta PoS algoritma konsenzusa nalaže korisnicima na blockchainu da koriste svoje digitalne tokene kako bi glasovali za poštene validatore koji se zovu "delegati". Nasumično se bira jedan delegat koji će potvrditi nove transakcije i dodati ih u blockchain.
Nakon uplate, delegat dijeli blok nagrade korisnicima koji su glasali za njih.
Kriptovalute koje koriste DPoS algoritam uključuju EOS, Ark, Tron i Lisk.
Još nema slučaja, ali dvostruka potrošnja je mogućnost
Iako nema potvrđenih slučajeva, pojava novih i račvanih kriptovaluta i nedavni tehnološki napredak mogu dovesti do dvostrukih iznenađenja potrošnje. Stoga biste se trebali zaštititi transakcijama na sigurnim lancima blokova kriptovaluta. I u pravilu, pričekajte da rudari potvrde transakcije prije nego što pustite svoje tokene, robu ili usluge.