Wat is een Selfish Mining Attack?
In Bitcoin is een selfish mining attack een geraffineerde manoeuvre waarbij cryptominers – of, meer gebruikelijk, een groep samenwerkende miners – een opzettelijk proces uitvoeren om een onevenredig voordeel te behalen ten opzichte van andere miners op een blockchainnetwerk.
Techopedia legt uit
Een selfish mining-aanval komt in feite neer op het tegenhouden van de uitzending van nieuw geminde blokken naar het openbare netwerk. Op deze manier kunnen deze miners in het geheim doorgaan met het delven van het volgende blok, wat hen een voorsprong geeft en hun kansen vergroot om meer blokken aan de blockchain toe te voegen.
Deze geheimzinnige aanpak verstoort de typische transparante werking van de blockchain.
Normaal gesproken, wanneer een mijnwerker met succes een blok mined, zendt hij deze prestatie naar het hele netwerk, waardoor synchronisatie en consistentie over de hele keten wordt gegarandeerd.
Echter, in een selfish mining scenario, creëren miners door de nieuwe blokken verborgen te houden een scenario waar twee versies van de waarheid bestaan: hun privé, geheime versie en de versie waarvan de rest van het netwerk op de hoogte is.
De strategie achter zo’n slinkse aanpak is tweeledig:
- Ten eerste stelt het de selfish miner in staat om potentieel meer beloningen te verdienen, omdat ze een voorsprong kunnen behouden in het mining proces.
- Ten tweede, en meer nadelig, zorgt het ervoor dat andere nietsvermoedende miners rekenkracht verspillen aan blokken die, zonder het te weten, al achter liggen in de race.
Dit vermindert niet alleen de beloningen voor eerlijke miners, maar brengt ook de veiligheid en integriteit van het blockchainnetwerk in gevaar, waardoor de principes van eerlijkheid en transparantie waarop de technologie is gebouwd in twijfel worden getrokken.
Hoe werkt een Selfish Mining-aanval?
Om het mechanisme van een selfish mining attack te begrijpen, moet je het basis proof-of-work (PoW) mining proces begrijpen.
In cryptocurrency concurreren miners om complexe wiskundige puzzels op te lossen. De winnaar valideert de transacties, voegt het blok toe aan de openbare keten en ontvangt een beloning.
Bij een selfish mining attack werkt het echter op een andere manier:
- De selfish miner concurreert en mined met succes een blok.
- In plaats van dit blok uit te zenden naar het netwerk, houden ze het privé, waardoor ze een toevallige Bitcoin fork creëren – een reeks blokken die parallel loopt aan de blockchain.
- Terwijl eerlijke miners zwoegen op de hoofdketen, gaat de selfish miner door met het minen van blokken op hun geheime fork.
- Het doel is om een langere privéketen te hebben. Zodra dit is bereikt, onthullen ze hun geheime fork.
- Het netwerk herkent altijd de langste keten als de meest geldige.
- Als de keten van de selfish miner langer is, wordt deze overgenomen en worden de blokken van de eerlijke miners weggegooid, waardoor ze hun beloningen verliezen.
Is een Selfish Mining Attack tegen Bitcoin mogelijk?
Hoewel het concept van selfish mining al in 2010 werd getheoretiseerd, werd het pas echt duidelijk in een artikel van de Cornell University-onderzoekers Eyal en Sirer.
Zij stelden een aanval in twee fasen voor, waarbij in eerste instantie de selfish miner de stimulansen zou veranderen en neutrale miners, verleid door de potentiële winst, zich zouden kunnen aansluiten bij de selfish miner, waardoor uiteindelijk een aanval van 51% zou kunnen plaatsvinden.
Het implementeren van een dergelijke aanval op Bitcoin is echter een uitdaging.
- Ten eerste heeft de aanvaller een aanzienlijke hoeveelheid rekenkracht nodig om van zijn privéketen de langste te maken.
- Ten tweede zou de Bitcoin-community, die waakzaam en ideologisch gedreven is, zich waarschijnlijk verzetten tegen pogingen om het netwerk te ondermijnen.
Een openlijke intentie om een dergelijke aanval uit te voeren kan leiden tot een massale uittocht uit een betrokken miningpool, waardoor de dreiging teniet wordt gedaan.
Hoe Selfish Mining Attacks voorkomen?
Er zijn twee overheersende methoden die gebruikt worden om het risico van een selfish mining attack te beperken, waaronder:
- Randomisatietechniek: Deze aanpak vereist dat miners willekeurig kiezen aan welke fork ze gaan werken als er meerdere forks aanwezig zijn. Bovendien moeten miners details van alle gevonden blokken en forks onthullen. De onvoorspelbaarheid van dit proces doet het voordeel van de selfish miner teniet.
- Tijdstempel: Het toekennen van een tijdstempel aan elk gemijnd blok is een andere tegenmaatregel. Blokken die in het geheim worden gemined en later aan de hoofdketen worden toegevoegd, kunnen worden geïdentificeerd en geweigerd op basis van verouderde tijdstempels.
Maar om de bedreiging in zijn geheel tegen te gaan, is een meer dynamische en uitgebreide netwerkrespons, met de nadruk op zowel technologische als communitygedreven oplossingen, cruciaal.
Conclusie
Selfish Mining Attacks, hoewel theoretisch haalbaar, zijn complex om uit te voeren, vooral op volwassen en waakzame netwerken zoals Bitcoin.
De belangrijkste kracht van blockchain ligt in de gedecentraliseerde aard en de community eromheen.
Zolang de community waakzaam en proactief blijft, kunnen potentiële bedreigingen worden geïdentificeerd en tegengegaan, waardoor de integriteit en veiligheid van het netwerk behouden blijft.