Un CAPTCHA repose sur une idée simple : présenter à un visiteur une tâche que les personnes peuvent résoudre et que les machines ne peuvent pas, puis laisser passer celui qui la réussit. Pendant des années, c'était un compromis raisonnable. Les personnes perdaient quelques secondes, et la pire automatisation était ralentie.
Trois choses ont changé. Les machines sont devenues très bonnes pour résoudre ces tâches. Les personnes se sont lassées de les résoudre. Et un nouveau type de visiteur est arrivé : des agents IA agissant pour de vrais clients, et des personnes travaillant avec des assistants IA. Un test qui demande "êtes-vous humain ?" n'a pas de bonne réponse pour l'un ni pour l'autre.
Proof of Actor adopte une approche différente. Au lieu de tester chaque visiteur, il indique à votre application qui ou quoi agit, avec les éléments de preuve à l'appui de la conclusion, puis laisse votre code décider si un challenge est nécessaire, ou non.
La version courte
| CAPTCHA | Proof of Actor | |
|---|---|---|
| Question principale | Ce visiteur peut-il réussir un test humain ? | Qui ou quoi agit, et quels sont les éléments de preuve ? |
| Qui supporte le coût | Chaque visiteur qui voit le challenge | Personne ; la classification se fait en arrière-plan |
| Réponses possibles | Réussite ou échec | Human, Human + AI, Agent ou Unknown, plus une base |
| Agents IA légitimes | Bloqués, ou forcés de contourner le test | Reconnaissants, et orientés vers la bonne expérience |
| Personnes utilisant des assistants IA | Traitées comme n'importe quel autre visiteur | Une classe distincte, Human + AI |
| Trafic incertain | Doit réussir le même test | Unknown, avec un repli que vous choisissez par route |
| Où cela s'applique | Les pages où vous l'installez | Chaque route couverte par votre intégration |
| Comportement par défaut à l'installation | Challenge visible | Observation ; rien ne change tant qu'aucune politique n'est ajoutée |
Un test face à des éléments de preuve
Un CAPTCHA produit un seul bit d'information : le visiteur a réussi ou échoué. Il ne vous dit pas qui était le visiteur, s'il travaillait avec un assistant, ni à quel point vous devez faire confiance au résultat. Et ce bit est produit en demandant au visiteur d'effectuer un travail.
Proof of Actor produit une classification et sa base de preuve. Un résultat Verified signifie qu'une affirmation vérifiable a été validée, par exemple une signature de requête vérifiée à partir d'une clé publiée. Un résultat Declared signifie qu'un client ou votre propre application l'a déclaré. Un résultat Inferred est étiqueté comme une inférence. Unknown signifie que les éléments de preuve ne permettent pas de conclure. Votre équipe peut lire chaque résultat et voir sur quoi il repose, sans que le visiteur ait quoi que ce soit à faire.
Le coût du challenge pour tout le monde
Chaque challenge ajoute de la friction à vos meilleurs utilisateurs pour ralentir les pires. Sur une page d'inscription, cela coûte des conversions. Sur un paiement, cela coûte du revenu. En matière d'accessibilité, cela peut exclure des personnes complètement. Les équipes n'acceptent ce coût que parce qu'elles n'ont pas de meilleur signal sur qui se trouve de l'autre côté.
Avec le contexte d'acteur, l'arbitrage change. Vous pouvez conserver l'expérience normale pour les sessions pilotées par des humains, ignorer le challenge lorsque les éléments de preuve sont solides, et le réserver au petit nombre de cas où il apporte encore de la valeur : par exemple, un résultat Unknown sur une modification de mot de passe ou une action à forte valeur. La plupart des visiteurs ne verront plus jamais de challenge.
Les agents légitimes ont besoin d'un chemin, pas d'une énigme
Un CAPTCHA est conçu pour bloquer le logiciel. Cela avait du sens lorsque presque tout le logiciel qui visitait vos pages était indésirable. Ce n'est plus le cas.
Aujourd'hui, un assistant peut comparer vos offres pour un client, un agent peut réserver un rendez-vous via votre application, et un client IA peut appeler votre MCP server pour terminer une tâche. Les bloquer, c'est bloquer vos clients. Les faire passer par des pages et des énigmes conçues pour des personnes crée une automatisation fragile qui casse à chaque refonte.
Proof of Actor reconnaît les agents, et avec des requêtes signées, il peut vérifier quelle clé et quel opérateur se trouvent derrière eux. Votre application peut alors faire mieux qu'un challenge : servir une API structurée, proposer un flux adapté aux agents, ou appliquer une limite de débit dimensionnée pour l'automatisation. Le guide sur serving AI agents structured content montre comment faire.
Une identité vérifiée n'est pas la même chose qu'une autorisation. Une signature valide vous indique quelle clé a signé la requête ; la question de savoir si cet agent peut effectuer une action relève de votre authorization decision. Proof of Actor garde ces deux questions séparées.
Les personnes qui travaillent avec l'IA restent vos utilisateurs
Une personne qui rédige un message d'assistance avec un assistant, ou qui remplit un formulaire avec l'aide de l'IA, est un client. Un test humain n'a rien d'utile à dire à son sujet : soit elle réussit, soit elle est bloquée parce que son comportement paraît inhabituel.
Proof of Actor leur attribue leur propre classe, Human + AI, signalée lorsque l'assistance est déclarée ou observable via une intégration prise en charge. Cela vous permet d'identifier les soumissions rédigées par l'IA pour la bonne équipe, d'étudier la manière dont les utilisateurs assistés traversent votre produit et de conserver une expérience fluide. Pour en savoir plus, consultez l'entrée de glossaire AI-assisted interaction.
Gérer les cas incertains de manière délibérée
Certains trafics resteront toujours ambigus. Un CAPTCHA les traite tous de la même façon : tout le monde passe le test.
Proof of Actor renvoie Unknown comme résultat à part entière, jamais traité comme humain par défaut et jamais traité comme malveillant par défaut. Vous choisissez le repli par route, en fonction du risque :
- Pages publiques et documentation : allow, et conservez l'expérience standard.
- Formulaires d'inscription et de contact : allow, avec vos contrôles d'abus habituels.
- Modifications de compte : conservez votre flux de réauthentification existant.
- Actions à fort impact : route vers review, ou appliquez un challenge ici si vous en souhaitez encore un.
C'est là qu'un challenge peut encore trouver sa place : comme un résultat de politique délibéré sur une route sensible, pas comme un péage pour chaque visiteur.
Où se prend la décision
Un widget CAPTCHA décide au moment où il s'affiche, sur la page où vous l'avez placé, et une seule fois.
Avec Proof of Actor, votre application décide, sur chaque route couverte par votre intégration : middleware serveur, Next.js, la périphérie, une intégration navigateur approuvée, une API HTTP générique ou votre MCP server. Les politiques utilisent ensemble la classe d'acteur et la base : allow, adapt, challenge, review ou rate-limit. Elles vivent dans votre code, à côté du reste de votre logique métier, et vous pouvez les modifier sans refaire la conception d'une page.
Déploiement progressif
Proof of Actor commence en mode observation. Son installation ne change rien à ce que voient vos utilisateurs. Une approche raisonnable pour sortir des challenges systématiques ressemble à ceci :
- Observe. Conservez vos challenges existants et ajoutez Proof of Actor. Observez le mélange d'acteurs et le taux de Unknown sur chaque route.
- Compare. Pour chaque route challengée, voyez combien de challenges touchent des sessions humaines, des utilisateurs assistés par l'IA et des agents vérifiés.
- Preview. Écrivez une politique qui ignore le challenge lorsque les éléments de preuve sont solides et le conserve pour Unknown sur les actions sensibles. Prévisualisez son effet sur le trafic réel.
- Enforce. Activez la politique route par route, avec un repli documenté et un interrupteur de retour arrière.
Le guide sur rolling out actor-aware policies safely détaille chaque étape.
Quand un CAPTCHA reste pertinent
Les challenges restent un outil utile dans quelques situations : une poussée de trafic ambigu sur une action sensible, un formulaire soumis à une attaque active, ou une route pour laquelle vous n'avez pas encore d'autre signal. Proof of Actor ne vous demande pas de jeter cet outil. Il vous donne le contexte pour ne l'utiliser que là où il aide.
Commencer
Proof of Actor est en version bêta privée. Les équipes fondatrices développeuses sélectionnées peuvent bénéficier d'un accès gratuit jusqu'à 12 mois, dans les limites d'usage convenues, avec le support direct de l'équipe qui le construit. Demandez un accès anticipé et indiquez-nous quelles routes vous challengez aujourd'hui.