Fredrik Henriques and Niklas Nordmark

Proof of Work

A study on proof-of-work as a protection against denial of service attacks

Abstract

The purpose of this essay is to explain the proof of work protocol and to evaluate its ability to protect a network resource from denial of service attacks. By implementing a proof of work protocol we aim to evaluate what kind of puzzles give an even workload to clients. The results prove that proof of work can be used to protect a network re- source by limiting the amount of calls a client can perform in a certain time. It is also evident that when subpuzzles are used there is less variation of how long it takes to solve a puzzle, therefore subpuzzles are to be prefered over imple- mentations without subpuzzles. Even though variations in calculation times are reduced, clients with low performance hardware will still have a disadvantage in relation to clients with more powerful hardware.