Bij gedistribueerde netwerken zoals blockchains zijn DoS-aanvallen bedoeld om het netwerk tijdelijk of permanent buiten werking te stellen.
DoS-aanvallen kunnen op twee manieren plaatsvinden:
- door meer dan 51 procent van de netwerkcapaciteit te hebben; in dat geval kunnen bepaalde transacties geweigerd worden
- door grote hoeveelheden transacties in één keer aan te bieden waardoor het netwerk volloopt met ‘nutteloze’ transacties
De eerste manier wordt verder uitgediept in het ‘51-procentsaanval’-lemma. De werkwijze is hetzelfde, met het verschil dat er geen nieuwe keten met een gewijzigde transactie wordt toegevoegd, maar dat specifieke transacties tegengehouden kunnen worden door ze gewoonweg niet aan de blokken toe te voegen.
De tweede manier, grote hoeveelheden transacties in korte tijd aanbieden, kent verschillende varianten:
- een heel grote hoeveelheid ‘nutteloze’ transacties aanbieden met slechts één doel: het netwerk vast laten lopen
- het splitsen van een kleine hoeveelheid transacties in een grote hoeveelheid, om zo de ruimte in een blok sneller op te vullen (een bitcoinblok is maximaal één megabyte groot)
- het versturen van een groot aantal transacties met een grote hoeveelheid data per transactie
Hierdoor ontstaat een opstopping in het mining-proces, iets dat gebeurde rond de fork van bitcoin en Bitcoin Cash: voorstanders van Bitcoin Cash gebruikten de drukte en dure transacties, als argument voor grotere blokken.
DoS-aanvallen worden tegengegaan door het instellen van transactiekosten of fees: het is duur langdurig spam te versturen.
Als een mogelijkheid tot het sturen van spam-aanvallen wordt ontdekt,
kan dit vaak met behulp van een netwerkupgrade verholpen worden; zo pastte ethereum een manier om goedkoop complexe spam-transacties te doen aan.20