Dobbeltbruk kan erodere all tillit til en kryptovaluta, og det er grunnen til at det er lagt ned så mye arbeid for å sikre at denne typen svindel ikke skjer.
Kryptovalutatransaksjoner er sikre og pålitelige takket være blockchain-teknologi. Men som med de fleste innovative systemer, har blokkjeden utnyttbare sårbarheter, noe som kan føre til doble utgifter. Men hva er dobbeltforbruk, og hvordan forebygges det?
Hva er dobbeltforbruk?
Dobbeltforbruk oppstår når en enkelt enhet bruker det samme kryptovaluta-tokenet mer enn én gang. Dette er forårsaket av en feil i digitale valutaer som gjør dem lett reproduserbare.
Informasjonen på blokkjedenettverket kan endres under transaksjoner, forutsatt at visse betingelser er oppfylt. Når disse vilkårene er oppfylt, endres blokker av transaksjoner kan gå inn i blokkjeden, slik at gjerningsmannen kan skaffe tilbake tidligere brukte krypto-tokens.
For bedre å forstå hvordan dette skjer, her er en forenklet prosessbeskrivelse. Når en transaksjon utføres på et blokkjedenettverk, for eksempel Bitcoin, opprettes det en blokk som inneholder transaksjonsdataene, dataene fra forrige blokk og et tidsstempel. Blokken har en kryptert kode kalt en hash.
De folk som utvinner Bitcoin på Bitcoin-nettverket verifiser deretter transaksjonen via en proof-of-work konsensusalgoritme, lukk blokken og lag en ny blokk. Den nye blokken inneholder tidsstemplet, den forrige blokkens hash og de nye transaksjonsdataene. Etterpå mottar den seirende gruvearbeideren blokkbelønninger (BTC) for å verifisere hashen.
For å lykkes med å gjennomføre dobbeltforbruk, må gjerningsmannen mine en hemmelig blokk som overgår etableringen av den faktiske blokken. For å gjøre dette, må gjerningsmannen introdusere den hemmelige blokken før den nye blokken, slik at nettverket, lurt til å tro at det er det siste settet av den voksende blokken, legger den falske blokken til den stadig økende kjede. Gjerningsmannen kan deretter kreve tilbake de tidligere brukte kryptotokenene.
Selv om dobbeltforbruk er et velkjent fenomen i kryptorommet, er det ingen dokumentert sak. Det er fordi verifisering av transaksjoner er en kompleks prosess som krever enorm beregningskraft. Å forfalske eller duplisere en blokk er intens, siden gjerningsmenn må jobbe foran alle andre gruvearbeidere på blokkjeden.
Hvorfor er dobbeltforbruk et problem?
Dobbeltbruk er en fornærmelse mot sikkerheten til blokkjedenettverket. Det skjer når det er en utnyttbar svakhet.
Videre skal blokkjedenettverket være sikkert og pålitelig. Hvis det oppstår doble utgifter på et kryptovalutanettverk, skaper det mistillit til det kryptosystemet, og hindrer investorer. Og til slutt vil verdien av tokenet falle.
I tillegg er dobbeltforbruk digitalt tyveri. Hackeren vinner mens noen andre på nettverket, vanligvis en kjøpmann, taper. Gjerningsmannen beholder eierskapet til selgerens varer og kryptotokenet.
Eksempler på doble forbruksangrep
Det finnes ulike former for dobbeltbruksangrep som nettkriminelle bruker. Her er noen av dem:
51 % angrep
Angrepet på 51 % er den mest diskuterte formen for dobbeltforbruk. Det oppstår når en gruvearbeider (eller en gruppe gruvearbeidere) kontrollerer majoriteten (mer enn 50%) av beregningskraften som validerer transaksjoner på nettverket.
Når dette skjer, kan de diktere transaksjoner, opprette nye blokker, kreve tilbake allerede brukt krypto og tildele kryptotokens. Det gir dem muligheten til å dobbeltbruke digitale mynter.
Angrepet på 51 % er mindre sannsynlig å skje i mer etablerte kryptovalutaer, som Bitcoin. Dette er på grunn av det enorme antallet gruvearbeidere på nettverket og hashing-vansker. Imidlertid kan kryptovalutaer med mindre nettverk, som nye eller gaffelformede, være i fare.
I 2014 overgikk GHash.io, et gruvebasseng som opererte fra 2013 til 2016, kort 51 % av Bitcoins beregningskraft på Bitcoin. Denne utviklingen skapte betydelige bekymringer for sikkerheten til nettverket. Deretter begrenset Gnash.io frivillig sin beregningskraft til 39,99 % for å gjenopprette tilliten til nettverket.
Finney angrep
Denne typen dobbeltbruksangrep ble popularisert og oppkalt etter Hal Finney. I et Finney-angrep krever ikke en hacker 51 % av hashkraften. For at det skal lykkes, må en selger godta en ubekreftet transaksjon fra hackeren, som er en gruvearbeider.
Hackeren genererer en blokk der han krediterer kryptotokens til seg selv ved å starte en transaksjon fra adresse X til adresse Y (begge tilhører ham) uten å kringkaste den til nettverket. Han fortsetter med å foreta en ny betaling med de samme kryptotokenene fra adresse X til adresse Z, som tilhører en kjøpmann.
Hvis selgeren godtar de ubekreftede transaksjonene uten bekreftelse fra blokkjeden, frigjør hackeren blokken som inkluderer den første transaksjonen hans. Nettverket ugyldiggjør transaksjonen med selgeren etter at selgeren har gitt ut varer eller tjenester til hackeren. Det lar hackeren dobbeltbruke.
Race angrep
Dette angrepet er lettere å gjennomføre enn angrepene på 51 % og Finney. I et raseangrep eksisterer et "ras" mellom to transaksjoner.
Hackeren bruker forskjellige maskiner for å sende samme token til to selgere. Hvis selgeren sender varer eller tjenester før transaksjonen er bekreftet, vil han oppdage at transaksjonen ikke ble akseptert under gruveprosessen.
Hvordan blokkjede forhindrer dobbeltforbruk
Blokkjeder sikrer mot dobbeltforbruk konsensusalgoritmer, som for eksempel:
Proof-of-Work (PoW)
Proof-of-work er en svært konkurransedyktig prosess som krever en enorm mengde energi. I denne konsensusmekanismen bruker gruvearbeidere komplekse datamaskiner for å gjette hashen av transaksjonsblokker.
En hash er en kryptert, unik 64-sifret heksadesimal kode hver transaksjon har. Denne prosessen bruker beregningskraft for å bevise ektheten til en transaksjon.
Når transaksjonen er bekreftet, legger den vellykkede gruvearbeideren transaksjonen til desentralisert digital hovedbok. På slutten av prosessen mottar den vellykkede gruvearbeideren blokkbelønninger i det opprinnelige digitale tokenet.
Bitcoin, Bitcoin Cash, Litecoin, Monero og Dogecoin er populære kryptovalutaer som bruker denne konsensusalgoritmen.
Proof-of-Stake (PoS)
I Proof-of-Stake autentiserer deltakerne på kryptonettverket blokktransaksjoner og kalles validatorer. Validatorer tilbyr (eller «innsatser») noen av kryptotokenene deres i en smart kontrakt for å tjene retten til å bekrefte transaksjoner før de legger dem til den voksende blokkjeden.
Nettverket velger en ærlig validator basert på deres innsatspoletter og innsatsvarighet. Når vinneren er valgt, bekrefter den transaksjonen, som de andre validatorene bekrefter.
Akkurat som PoW, validatorer får også en belønning i form av inntekt etter autentisering av nye transaksjoner. Hvis nettverket finner at en validator er uærlig, mister de deler av eller alle sine innsatte tokens som en straff.
Denne prosessen er raskere og krever mindre beregningskraft og energi enn PoW. Derfor kan deltakere på blokkjeden effektivt fungere som validatorer.
Ethereum 2.0, Cardano, Tezos og Solana bruker hver sin PoS.
Delegert bevis på innsats (DPoS)
Denne typen PoS-konsensusalgoritme gir brukere på blokkjeden mandat til å bruke sine digitale tokens for å stemme på ærlige validatorer kalt "delegater". En delegat velges tilfeldig for å validere nye transaksjoner og legge dem til blokkjede.
Etter betaling deler delegaten ut blokkbelønningene til brukerne som stemte på dem.
Kryptovalutaer som bruker DPoS-algoritmen inkluderer EOS, Ark, Tron og Lisk.
Ingen sak ennå, men dobbeltforbruk er en mulighet
Selv om det ikke er noen bekreftede tilfeller, kan fremveksten av nye og gaffelformede kryptoer og nyere teknologiske fremskritt føre til doble forbruksoverraskelser. Derfor bør du beskytte deg selv ved å handle på sikre kryptovalutablokkjeder. Og som regel, vent på at gruvearbeidere bekrefter transaksjoner før du frigir dine tokens, varer eller tjenester.