Schicken Sie das Formular unten ab und beobachten Sie, wie das PoW-Rätsel in Echtzeit läuft. Öffnen Sie die DevTools Ihres Browsers und Sie sehen captcha.js laden und die Aufrufe von /challenge und /verify feuern - derselbe Ablauf wie bei einer echten Integration. Diese Demo meldet Sie nicht an und speichert keine eingegebenen Formulardaten.
Nur Demo - es wird nichts abgeschickt.
Die Challenge startet bei Ihrem ersten Klick, Tippen oder Tastendruck.
Gesamte Ende-zu-Ende-Zeit
Variiert je nach Gerät und Browser
Das Widget hat eine signierte captcha_attestation erhalten. Ihr Backend verifiziert sie lokal per HMAC-Prüfung - kein zusätzlicher HTTP-Roundtrip.
Gesamte Ende-zu-Ende-Zeit
Variiert je nach Gerät und Browser
Angehängtes verstecktes Feld
Verifizieren Sie den HMAC der captcha_attestation serverseitig mit dem geheimen Schlüssel Ihres Projekts.
Was hier passiert
Challenge abgerufen
Bei Ihrer ersten Interaktion (Klick, Tippen oder Tastendruck) ruft das Widget im Hintergrund /challenge auf und erhält einen Token mit der nötigen Schwierigkeit.
PoW in einem Web Worker gelöst
Der Worker iteriert über Nonces und hasht jede mit dem Token, bis das Ergebnis das Target unterschreitet.
Attestierung erhalten
Das Widget schickt die Lösung an /verify und erhält eine signierte Attestierung (HMAC-SHA256, signiert mit dem geheimen Schlüssel Ihres Projekts).
Verstecktes Feld beim Absenden eingefügt
Beim Absenden wird captcha_attestation an Ihr Formular angehängt. Ihr Backend verifiziert dessen HMAC lokal - kein HTTP-Roundtrip zu captchaAPI.
Zustände des Status-Panels
idle
Abruf gestartet
solving
Worker läuft
ready
Lösung gefunden
error
Fehlender Schlüssel / Fehler
rate_limited
429 von /challenge oder /verify
Live-Countdown, gesteuert vom retry_after-Header des Servers.
Fügen Sie data-captcha zu Ihrem Formular hinzu und laden Sie das Skript. Das war's.