En quelques mots
Le CAPTCHA Proof of Work (PoW) est une méthode conçue pour ralentir les robots tout en maintenant une expérience fluide pour les utilisateurs humains. En imposant des calculs simples mais chronophages à chaque tentative de soumission de formulaire, cette technique dissuade les robots sans gêner les internautes. Ce document explique le fonctionnement détaillé de cette méthode et comment elle parvient à équilibrer sécurité et convivialité.
Quand un robot tente d'utiliser un formulaire, il cherche à effectuer un grand nombre de tests en un temps très court. La preuve de travail intervient en imposant un calcul à chaque tentative, prenant entre 1 et 3 secondes. Cette petite pause est quasiment imperceptible pour un utilisateur humain, mais représente un frein significatif pour un robot, qui finit par abandonner ses tentatives.
Le processus reste invisible pour l'utilisateur grâce aux étapes suivantes, réalisées en arrière-plan lors de la soumission d'un formulaire
Ce clic déclenche la demande d'un nouveau CAPTCHA
Le serveur génère un calcul de preuve de travail que le navigateur doit résoudre.
Le navigateur effectue le calcul de preuve de travail, qui prend entre 1 et 3 secondes.
La solution trouvée par le navigateur peut être vérifiée par le serveur pour assurer son authenticité (cette étape est optionnelle).
Une fois la solution vérifiée, elle est incluse dans les données du formulaire soumis.
Le serveur vérifie la solution lors de la réception du formulaire
Si la solution est correcte, le formulaire est traité normalement.
Pour éviter que la même solution soit utilisée plusieurs fois, le serveur la met sur liste noire.
Quelques points essentiels
Le PoW impose des calculs chronophages aux robots tout en étant imperceptible pour les utilisateurs humains.
Les étapes de vérification et de résolution se déroulent en arrière-plan, assurant une expérience utilisateur fluide.
Chaque solution de CAPTCHA est vérifiée et mise sur liste noire après utilisation, empêchant toute réutilisation frauduleuse.