Toutes les fonctionnalités
Vérification

Trois couches de défense, quatre surfaces, aucun bot ne gagne

La vérification est le cœur de Caputchin. Les portes travaillent ensemble ; les surfaces sont la façon dont tu les branches sur ton stack. Le chemin par défaut, c'est le widget plus un appel de verify depuis ton backend. Les autres surfaces sont là quand le défaut ne convient pas.

Comment une vérification se déroule.

Le visiteur ouvre ta page. Le widget exécute les portes. Un jeton signé passe vers ton backend. Ton backend nous demande de le confirmer.

  1. VisiteurOuvre ta page
  2. Widget CaputchinSe charge dans ta page
  3. Anti-triche de jeuTourne dans un iframe en bac à sable
  4. Ton backendReçoit le jeton enveloppé
  5. /siteverifyCaputchin confirme le jeton
La même forme, que tu livres le widget, appelles l'API directement ou utilises la vérification hébergée. Le jeton enveloppé est la seule chose qui passe du navigateur du visiteur à ton backend.
Matrice des menaces
Tous les plans

Chaque couche renchérit une attaque différente.

Aucune couche seule n'est censée battre toutes les attaques à elle seule. Le but, c'est la composition : le temps qu'une requête atteigne le jeu, elle a déjà payé la taxe de chaque porte devant elle. Carte honnête ci-dessous.

  • Scripts curl et fetch
    Des scripts HTTP nus qui frappent directement ton endpoint.
    Couches qui y répondent
    • Instrumentation du navigateur
  • Navigateurs headless
    Puppeteer, Playwright ou Selenium tournant en arrière-plan.
    Couches qui y répondent
    • Instrumentation du navigateur
  • Fermes de bots à vrais navigateurs
    De vraies instances Chrome sur des serveurs loués, parfois pilotées par des humains.
    Couches qui y répondent
    • Proof of work
    • Anti-triche de jeu
  • Solveur en tant que service
    Des fermes de résolution payantes qui prennent un défi et renvoient la réponse, souvent avec de la main-d'œuvre humaine bon marché.
    Couches qui y répondent
    • Proof of work
    • Anti-triche de jeu
  • Modèles d'IA de pointe
    Des modèles de vision et d'agent qui lisent des grilles d'images, résolvent des énigmes d'OCR et passent les vieux CAPTCHA en quelques millisecondes.
    Couches qui y répondent
    • Anti-triche de jeu
Anti-triche de jeu
Tous les plans

Plus qu'un jeu. Un moteur de vérification.

Un tout petit jeu varié que les humains jouent en quelques secondes et apprécient. En dessous, il fait tourner le même manuel anti-triche que les jeux multijoueurs compétitifs utilisent pour attraper les tricheurs : nos serveurs mettent en place chaque manche avant que tu joues (autorité serveur) et la re-simulent après (rejouabilité déterministe), si bien que le jeu ne peut pas être falsifié, seulement joué. C'est la couche qu'aucun autre CAPTCHA n'a, et la raison pour laquelle Caputchin existe.

Avant de jouer

Configuration faisant autorité côté serveur

  • Un ticket signé à usage unique (fenêtre de 30 minutes) frappe la manche. Dépense-le une fois et il ne peut plus jamais être rejoué.
  • Le jeu et sa graine aléatoire sont choisis sur nos serveurs, jamais dans le navigateur, si bien que rien côté client ne peut sélectionner une cible plus facile.
  • Un jeu différent du pool à chaque fois. Un solveur ne sait jamais lequel il va affronter, donc il ne peut pas se préentraîner.

Le même modèle qu'un serveur de jeu compétitif : le client n'envoie que des entrées, jamais le verdict.

Après avoir joué

Rejouabilité déterministe

  • Tes entrées exactes sont rejouées sur nos serveurs sous la même graine, dans un isolat scellé sans réseau et avec un budget de temps strict.
  • Le réussi ou échoué est recalculé par cette rejouabilité, jamais pris dans le navigateur.
  • Le code de chaque jeu est vérifié par hachage avant de tourner, si bien que l'artefact ne peut pas être échangé sous toi.

Bâtie sur le même déterminisme dont dépend le multijoueur en lockstep : la manche est re-simulée depuis la graine pour confirmer qu'elle a vraiment été jouée.

Mis en bac à sable dans ta page

Un iframe isolé sans réseau et sans portée sur tes cookies, ton stockage ou ton DOM.

Variété de jeux

Des sites différents reçoivent des jeux différents, et le catalogue ne cesse de grandir.

Rejouabilité scellée

La rejouabilité tourne sans réseau et avec un budget CPU strict. Rien n'entre ni ne sort.

Code inviolable

Chaque artefact de jeu est vérifié par hachage avant qu'une seule image ne tourne.

Pas de profilage

On ne surveille ni ta souris ni ton timing. On rejoue la manche à la place.

Deux portes de plus, empilées à côté

L'anti-triche de jeu ne travaille jamais seul. Une porte de proof of work et l'instrumentation du navigateur tournent avec lui, chacune renchérissant un motif d'attaque différent. Composées en série, chaque couche que l'attaquant atteint a déjà payé une taxe.

Tous les plans

Proof of work

Chaque tentative de vérification force le navigateur du visiteur à résoudre une petite énigme cryptographique. Un humain attend quelques centaines de millisecondes et ne le remarque jamais. Une ferme de bots qui paie du calcul à grande échelle sent chaque cycle.

Où ça s'applique

Des formulaires d'inscription visés par la création de comptes automatisée. Chaque faux compte coûte à l'attaquant du calcul mesurable, et l'abus de masse devient trop cher pour valoir le coup.

Tous les plans

Instrumentation du navigateur

Le widget lit les signaux d'environnement que le navigateur du visiteur expose. Les vrais navigateurs les ont toujours. Les outils headless et les scripts les falsifient en général mal, voire pas du tout. Un interrupteur par site, le blocage des navigateurs automatisés, rejette d'emblée tout ce que l'instrumentation marque comme headless ou piloté par driver (Playwright, Selenium, Puppeteer). C'est en opt-in, alors laisse-le coupé si tu attends de l'automatisation légitime.

Où ça s'applique

Des formulaires de commentaire et des pages de contact visés par des scripts Playwright ou Selenium. Avec le blocage des navigateurs automatisés activé, le script est filtré à la porte au lieu de se voir remettre un défi à résoudre.

Surfaces d'intégration

Quatre façons de mettre la vérification devant un visiteur. Choisis celle qui colle à la forme de ton code, de ton stack ou de ton équipe.

Tous les plans

Composant web prêt à poser

Une balise HTML monte le widget. Il exécute les portes et te remet un jeton quand le visiteur passe. Fonctionne dans React, Vue, Svelte, Angular ou HTML pur, parce que les composants web sont natifs du navigateur et n'ont pas besoin d'un wrapper de framework.

Où ça s'applique

Le chemin par défaut. Ajoute une protection anti-bot à ton formulaire d'inscription en quelques minutes sans embarquer une nouvelle dépendance.

Tous les plans

API de runtime

L'API de vérification a deux parties. L'appel de verify que ton backend utilise sur chaque intégration pour confirmer qu'un jeton est réel. Et les endpoints de défi de plus bas niveau pour piloter la vérification toi-même, pour les rares cas où le widget ne convient pas. Distincte de l'API REST de gestion que ton équipe utilise pour les changements de compte et de configuration.

Où ça s'applique

Appel de verify : chaque backend, toujours. API directe : chats, paywalls, formulaires multi-étapes tissés dans ta propre UI, partout où l'élément du widget ne peut pas s'afficher.

Alpha tier

Vérification hébergée

Pointe l'action de ton formulaire vers nous. On vérifie le visiteur, puis on transmet les soumissions vers ta boîte de réception ou ton endpoint. Aucun code backend de ton côté, pas le moindre.

Où ça s'applique

Des sites statiques et des éditeurs no-code qui n'ont pas de backend pour vérifier les jetons eux-mêmes. Mets en ligne un formulaire de contact avec protection anti-bot dans le temps qu'il faut pour échanger un attribut action.

Tous les plans

Intégration WebView mobile

Une page d'intégration faite sur mesure pour les apps natives iOS et Android qui affichent le défi dans leur WebView. Le même widget, une empreinte plus petite, aucun SDK natif à installer.

Où ça s'applique

Des apps mobiles qui ont besoin de vérification sans livrer de SDK spécifiques à un framework ni reconstruire un flux de CAPTCHA natif sur chaque plateforme.

Mets la vérification en ligne sur une seule clé de site. Gratuit.

Inscris-toi, frappe une clé de site, pose le widget sur un formulaire. Passe à un plan supérieur plus tard quand tu as besoin d'une fonctionnalité d'un niveau plus haut.

Commencer gratuitement