Technik

Was ist ein Proof-of-Work-Captcha? Einfach erklärt

Aktualisiert am · 6 Min. Lesezeit

Proof of Work heißt übersetzt „Arbeitsnachweis“: Der Browser beweist, dass er eine bestimmte Rechenarbeit erledigt hat. Für einen Menschen ist das unsichtbar, für einen Bot, der in großer Zahl Formulare abschickt, wird es teuer.

Das Prinzip

Die Idee stammt aus den 1990er-Jahren: Mit „Hashcash“ schlug Adam Back 1997 vor, E-Mail-Spam über Rechenkosten unwirtschaftlich zu machen. Ein Proof-of-Work-Captcha funktioniert genauso:

  1. Der Server schickt eine zufällige Aufgabe (eine Challenge) und einen Schwierigkeitsgrad.
  2. Der Browser sucht eine Zahl, die zusammen mit der Challenge einen Hash-Wert mit einer bestimmten Eigenschaft ergibt — etwa eine Anzahl führender Nullen. Dafür gibt es keine Abkürzung, nur Ausprobieren.
  3. Die gefundene Lösung prüft der Server mit einer einzigen Hash-Berechnung. Das Prüfen ist also billig, das Finden aufwendig.

Jede Challenge gilt nur einmal und nur kurze Zeit. Eine abgefangene Lösung lässt sich nicht wiederverwenden.

Selbst ausprobieren · echter SHA-256
versuche—
hash—
zeit—

Ihr Browser sucht einen Hash mit vier führenden Nullen — genau wie im Widget. Der Server prüft das Ergebnis mit einer einzigen Berechnung.

Warum das Bots trifft und Menschen nicht

Für einen einzelnen Besucher dauert die Rechnung Sekundenbruchteile, während er das Formular ausfüllt — er merkt nichts. Ein Bot, der zehntausend Registrierungen versucht, muss zehntausendmal rechnen. Aus einem kostenlosen Massenangriff wird ein teurer.

Damit die Seite dabei nicht ruckelt, läuft die Rechnung in einem Web Worker, einem Hintergrund-Thread des Browsers. Der Schwierigkeitsgrad lässt sich anpassen: niedrig im Normalbetrieb, höher während eines Angriffs.

Die Grenzen von Proof of Work

  • Kein Mensch-Nachweis: Proof of Work beweist nur, dass gerechnet wurde — nicht, dass ein Mensch am Gerät sitzt. Ein Bot mit viel Rechenleistung kann die Aufgaben lösen.
  • Schwache Geräte: Ein hoher Schwierigkeitsgrad bremst alte Smartphones spürbar. Die Schwierigkeit muss deshalb maßvoll bleiben.
  • Speicherharte Verfahren schließen die Lücke zu spezialisierter Hardware: Sie brauchen viel Arbeitsspeicher, den Grafikkarten und Spezialchips nicht billiger haben als ein normaler Browser.

Deshalb kombinieren gute Captchas Proof of Work mit Verhaltenssignalen und einer serverseitigen Risikobewertung. CaptchaCore nutzt SHA-256 im Web Worker, steigert die Schwierigkeit im Angriffsfall stufenweise, erzwingt sie serverseitig und verlangt auf höchster Stufe zusätzlich eine Klick-Prüfung. So funktioniert CaptchaCore im Detail.

Häufige Fragen

Verbraucht ein Proof-of-Work-Captcha viel Akku?

Nein. Bei normalem Schwierigkeitsgrad dauert die Rechnung Sekundenbruchteile und fällt im Vergleich zum Laden einer Webseite nicht ins Gewicht.

Ist Proof of Work dasselbe wie Krypto-Mining?

Nein. Das Prinzip ist verwandt, aber die Aufgabe ist winzig, einmalig und dient nur als Nachweis gegenüber dem Server. Es wird nichts geschürft und niemand verdient daran.

Funktioniert Proof of Work ohne JavaScript?

Nein, die Rechnung läuft im Browser. Für Besucher ohne JavaScript entscheidet die Einstellung des Betreibers, ob das Formular angenommen wird.