Blockchain: hvordan et angreb på 51% fungerer (angreb med dobbelt forbrug)

Et angreb på 51% eller dobbeltforbrug er en gruvearbejder eller gruppe af minearbejdere på en blockchain, der prøver at bruge deres kryptoter på det blockchain to gange. De forsøger at 'dobbelt bruge' dem, deraf navnet. Målet med dette er ikke altid at dobbelt bruge crypto'er, men oftere at miste diskredit over en bestemt krypto eller blockchain ved at påvirke dens integritet.

Her er et kort eksempel: Lad os sige, at jeg bruger 10 Bitcoin på en luksuriøs bil. Bilen bliver leveret et par dage senere, og mine Bitcoins overføres fra mig til bilfirmaet. Ved at udføre et 51% angreb på Bitcoin blockchain kan jeg nu prøve at vende denne Bitcoin overførsel. Hvis jeg lykkes, vil jeg besidde både den luksuriøse bil og mine Bitcoins, så jeg kan bruge disse Bitcoins igen. Begrebet et angreb på 51% kan virke indlysende i perspektiv af en demokratisk blockchain, men der er en almindelig misforståelse af, hvordan det fungerer. Denne korte artikel forsøger at give en klar forklaring på, hvordan et angreb på 51% fungerer mere detaljeret. Hvis du ikke ved, hvordan minearbejdere tilføjer transaktioner til blockchain endnu, foreslår jeg, at du læser, hvordan minearbejdere tilføjer transaktioner til blockchain i syv trin først, da det kun er en fem minutters læsning. Hvis du ikke ved, hvordan en blockchain fungerer, foreslår jeg, at du starter her.

Blockchain = regeringsførelse

Før man går i detaljer om et angreb på 51%, er det vigtigt at forstå, at blockchain-protokoller dybest set er en form for regeringsførelse. En blockchain styrer en hovedbok af data, for eksempel transaktionsdata. Da blockchain-protokollen kan styre dette for os, har vi ikke længere brug for en tredjepart til at gøre dette, f.eks. En regering eller bank. Det er det, der gør (mest) blockchains decentraliserede. Protokollen for Bitcoin blockchain er baseret på demokrati, hvilket betyder, at størstedelen af ​​deltagerne (minearbejdere) på netværket vil beslutte, hvilken version af blockchain repræsenterer sandheden.

Sådan fungerer et angreb på 51%

Når en Bitcoin-ejer logger af på en transaktion, sættes den i en lokal pulje af ubekræftede transaktioner. Gruvearbejdere vælger transaktioner fra disse puljer for at danne en blok transaktioner. For at tilføje denne blok transaktioner til blockchain, er de nødt til at finde en løsning på et meget vanskeligt matematisk problem. De forsøger at finde denne løsning ved hjælp af computerkraft. Dette kaldes hashing (læs mere om hash-algoritmen her). Jo mere computerkraft en miner har, jo større er deres chancer for at finde en løsning, før andre minearbejdere finder deres. Når en minearbejder finder en løsning, sendes den (sammen med deres blok) til de andre minearbejdere, og de vil kun verificere den, hvis alle transaktioner inde i blokken er gyldige i henhold til den eksisterende registrering af transaktioner på blockchain. Bemærk, at selv en beskadiget minearbejder aldrig kan oprette en transaktion for en anden, fordi de ville have brug for den pågældende persons digitale signatur for at gøre det (deres private nøgle). Afsendelse af Bitcoin fra en andens konto er derfor simpelthen umulig uden adgang til den tilsvarende private nøgle.

Stealth mining - oprette et afkom af blockchain

Vær nu opmærksom. En ondsindet miner kan imidlertid forsøge at vende eksisterende transaktioner. Når en minearbejder finder en løsning, skal den sendes til alle andre minearbejdere, så de kan verificere det, hvorefter blokken føjes til blockchain (minearbejdere når enighed). Imidlertid kan en korrupt minearbejder skabe et afkom af blockchain ved ikke at udsende løsningen af ​​hans blokke til resten af ​​netværket. Der er nu to versioner af blockchain.

Der er nu to versioner af blockchain. Den røde blockchain kan overvejes i 'stealth'-tilstand.

En version, der følges af de ukorrupte minearbejdere, og en, der følges af den ødelagte minearbejder. Den ødelagte minearbejder arbejder nu på sin egen version af den blockchain og sender ikke den til resten af ​​netværket. Resten af ​​netværket henter ikke denne kæde, for det er trods alt ikke blevet sendt. Det er isoleret til resten af ​​netværket. Den ødelagte minearbejder kan nu bruge alle sine Bitcoins på den sandhedsfulde version af blockchain, den, som alle de andre minearbejdere arbejder på. Lad os sige, at han bruger det på en Lamborghini for eksempel. På den sandfærdige blockchain bruges hans Bitcoins nu. I mellemtiden inkluderer han ikke disse transaktioner på sin isolerede version af blockchain. På sin isolerede version af blockchain har han stadig disse Bitcoins.

Den korrupte minearbejder udelukker sin egen transaktion i sin private blockchain.

I mellemtiden henter han stadig blokke, og han verificerer dem alle alene på sin isolerede version af blockchain. Det er her alle problemer starter ... Blockchain er programmeret til at følge en model for demokratisk regeringsførelse, også flertallet. Blockchain gør dette ved altid at følge den længste (faktisk den tyngste, men lader ikke komplicere tingene for meget) kæde, når alt kommer til alt tilføjer de fleste minearbejdere blokke til deres version af blockchain hurtigere end resten af ​​netværket (så; længste kæde = flertal). Sådan bestemmer blockchain hvilken version af dens kæde der er sandheden, og til gengæld hvad alle balancer af tegnebøger er baseret på. Et løb er nu startet. Den, der har mest hashkraft, tilføjer blokke til deres version af kæden hurtigere.

Den korrupte minearbejder tilføjer nu blokke til sin private kæde hurtigere, fordi han har mere hashkraft.

Et løb - vende eksisterende transaktioner ved at udsende en ny kæde

Den korrupte minearbejder vil nu forsøge at tilføje blokke til sin isolerede blockchain hurtigere end de andre minearbejdere tilføjer blokke til deres blockchain (den sandfærdige). Så snart den ødelagte minearbejder opretter en længere blockchain, sender han pludselig denne version af blockchain til resten af ​​netværket. Resten af ​​netværket vil nu registrere, at denne (korrupte) version af blockchain faktisk er længere end den, de arbejdede på, og protokollen tvinger dem til at skifte til denne kæde.

Den korrupte minearbejder udsender sin kæde til resten af ​​netværket, når den er længere (tungere) end den originale kæde.

Den beskadigede blockchain betragtes nu som den ægte blockchain, og alle transaktioner, der ikke er inkluderet i denne kæde, vil omgående blive vendt. Angriberen har brugt sine Bitcoins på en Lamborghini før, men denne transaktion var ikke inkluderet i hans stealthchain, den kæde, der nu er under kontrol, og derfor er han nu igen i kontrol over disse Bitcoins. Han er i stand til at bruge dem igen.

Alle andre minearbejdere skal omorganisere deres kædehistorie i henhold til den korrupte kæde, fordi den er tungere. Denne historie inkluderer ikke de 100 BTC-udgifter.

Dette er et dobbeltforbrugsangreb. Det kaldes almindeligvis et angreb på 51%, fordi den ondsindede miner kommer til at kræve mere hashkraft end resten af ​​netværket kombineret (således 51% af hashkraften) for at tilføje blokke til hans version af blockchain hurtigere og til sidst tillade det ham til at bygge en længere kæde.

Så hvordan er Bitcoin sikret mod dette?

I virkeligheden er disse angreb ekstremt svære at udføre. Som nævnt før, vil en minearbejder have brug for mere hasskraft end resten af ​​netværket kombineret for at opnå dette. I betragtning af det faktum, at der måske endda er hundreder af tusinder af minearbejdere på Bitcoin blockchain, ville en ondsindet minearbejder skulle bruge enorme mængder penge på minedriftens hardware for at konkurrere med resten af ​​netværket. Selv de stærkeste computere på jorden er ikke direkte konkurrencedygtige med den samlede computerkraft på dette netværk. Og der er utallige andre argumenter imod at udføre et angreb på 51%. For eksempel risikoen for at blive fanget og retsforfulgt, men også strømomkostninger, leje af plads og opbevaring til al minedriftens hardware, dække dine spor og hvidvaskning af penge. En operation som denne gør simpelthen alt for stor indsats for, hvad den vil give angriberen til gengæld, i det mindste i tilfælde af Bitcoin blockchain.

Tilfældig skyggefuld fyr med noget minedrift.

Er andre blockchains sårbare?

En anden interessant historie er dog, uanset hvor svært det skal være at udføre et sådant angreb, at adskillige 51% angreb faktisk har fundet sted i fortiden. Faktisk blev der udført et angreb ganske for nylig (april 2018) på Verge (XVG) blockchain. I dette specifikke tilfælde fandt angriberen en fejl i koden til randen blockchain-protokollen, der gjorde det muligt for ham at producere nye blokke i et ekstremt hurtigt tempo, hvilket gjorde det muligt for ham at oprette en længere version af Verge-blockchain på kort tid. Dette eksempel illustrerer en begivenhed, der kan lette et angreb på 51%, selvom det er ganske sjældent og ofte takket være en fejl i protokollekoden. Et troværdigt team af blockchain-udviklere vil sandsynligvis bemærke en fejl som denne og forhindre, at den misbruges.

Når man undersøger denne “Proof of Work” -algoritme (mining-algoritmen), fortæller den os, at mere aktiv hashing / computerkraft fører til mere sikkerhed mod et 51% -angreb. Mindre blockchains, der opererer på denne algoritme, kan dog ligesom en lille altcoin være betydeligt mere sårbare over for sådanne angreb, da der ikke er nogen måde så meget computerkraft for angriberen at konkurrere med. Dette er grunden til, at 51% angreb normalt forekommer på små blockchains (for eksempel Bitcoin Gold), hvis de overhovedet forekommer. Bitcoin blockchain har aldrig været offer for et angreb på 51% før.

ASIC-minedrift - forbedret minedrifthardware

Dette bringer os også til et af de seneste hotte emner i blockchain for nylig; ASIC-minedrift. ASIC-minedrift er en mineteknologi udviklet af forskellige tidlige Bitcoin-mineselskaber til at forbedre minedriftens hardware, hvilket gør det meget mere magtfuldt. Mange mennesker i branchen drøfter lige nu, om ASIC-minearbejdere gør visse mineindivider eller grupper for magtfulde. Monero (XMR) blockchain implementerede for nylig en protokolopdatering, der blokerede ASIC-minedrift fra at blive brugt til at mines på dens blockchain. Som et resultat faldt den samlede hasskraft på netværket med svimlende 80% (se nedenfor)!

Beregningskraften på XMR-netværket faldt med 80%, efter at ASIC-minedrift blev blokeret!

Dette viser, hvor meget strøm af Monero-netværket var i hænderne på ASIC-minearbejdere. Hvis alle deltagere på netværket brugte ASIC-minedrifthardware, ville dette ikke nødvendigvis være et problem. Problemet er dog, at store mineselskaber som Bitmain mistænkes for at kontrollere en stor mængde af ASIC-minedriften. Selvom disse organisationer også distribuerer denne teknologi til enkeltpersoner, gør de antagelig kun det, når de først har brugt den i lang tid selv. Nogle mennesker i blockchain diskuterer, om dette gør dem for magtfulde eller ikke. Ideelt set bør en blockchain styres af så mange individuelle minearbejdere som muligt. Det er det, der gør det mere decentraliseret.

Et kig ind i et af Bitmains minefaciliteter i det indre Mongoliet, KinaEt andet stort mineanlæg.

Vil du teste din blockchain-viden? Tag 20 spørgsmålstesten her og se, om du er på begyndere, avanceret eller ekspertniveau.

Var denne artikel til hjælp? Hjælp andre med at finde det ved at klappe eller dele. Besøg r / BlockchainSchool subreddit for at få mere klare og letforståelige forklaringer på blockchain eller læse nogen af ​​mine andre korte blockchain-forklaringer af:

Ekstra historie: $ 416.000.000 Bitcoin-likvidation på OKEx-børs i juli 2018

Blockchain-terminologi: Grundlæggende terminologi for at komme i gang

Begynder 1: Sådan fungerer blockchain i 7 trin

Begynder 2: Hvordan minedrift fungerer, og hvordan transaktioner behandles

Begynder 3: Hvordan en hacker udfører et 51% angreb

Begynder 4: Koder og masternoder

Begynder 5: Minedriftsvanskelighed og blokering af tid

Du kan følge mig på medium, hvis du vil holde øje med flere uddannelsesmæssige blockchain-artikler. Tak fordi du læste!