Denial of Service attacks are a serious threat to server robustness and stability. This thesis seeks to examine the possibility of implementing a proof-of-work protocol which effectively prevents this type of attacks. Its main focus is to investigate a general concept that includes sending puzzles over the Internet layer, creating a cost as a puzzle per request which is easily adjusted depending on current server load. The cost validates that the request is in fact legitimate by forcing the client to process a solution to the given puzzle before granting resources on the server. An implementation of the protocol is explained and the results of the testing confirm that proof-of-work could be an effective method to counter standard DoS attacks.
Denial of Service-attacker är allvarliga hot mot servrars robusthet och stabilitet. Den här kandidatuppsatsen ämnar att undersöka möjligheten att implementera ett proof-of-work-protokoll som effektivt motverkar den här typen av attacker. Fokus ligger på att utreda ett generellt koncept som skickar pussel över internetlagret. Detta görs genom att införa en kostnad per efterfrågan som enkelt regleras beroende på serverns belastning. Kostnaden är ett pussel som verifierar att en efterfrågan är legitim och inte en attack genom att tvinga klienten att lösa pusslet innan den kan fortsätta. En implementation av protokollet beskrivs och resultaten av körningarna bekräftar att proof-of-work kan vara en bra metod för att hindra vanliga DoS-attacker.