Qu’est-ce qu’un captcha ?
Vous souhaitez mettre votre solution en avant en haut de cet article ? Contactez-nous
Les captchas sont souvent considéré comme le mal nécessaire de l’internet moderne. Nous en croisons tout les jours, et finissons par y être habitué, mais n’existe-t’il pas d’alternatives plus efficaces ?
Attention : Cet article est un article de vulgarisation. Je ne serais pas exhaustif, parfois un peu vague, et souvent beaucoup trop simple. Pour plus d’informations techniques, je vous redirige vers Google.
Les Captcha
Un captcha, c’est quoi ? Eh bien, c’est un test censé reconnaître un humain d’un robot, et cela se présente généralement sous cette forme :
Un texte passé en image et à la lecture rendue volontairement complexe, pour tromper les méchants robots qui viennent parler de viagra et autres sacs vuitton dans les commentaires de votre site ou sur vos sites.
Pour fonctionner, les captchas créé un text/image sur le serveur, l’associe à une ID, et envoie le tout à votre formulaire. L’utilisateur résout le captcha, le formulaire envoie toutes les informations plus l’ID, et le serveur accepte la réponse ou pas.
Cette partie serveur est très importante car les robots sont des champions pour utiliser du Javascript et manipuler les données envoyées par vos formulaires. Faire une vérification uniquement en Javascript, c’est donc un peu comme fermer sa porte et laisser la clé sous un pot : cela ne bloque que ceux qui ne veulent pas vraiment entrer.
Les captchas est-ce que ça marche ?
Eh bien, pas vraiment.
Les captchas les moins efficaces sont ceux qui ne font pas appel au serveur, ou qui écrivent leur question/solution en HTML.
Prenons par exemple un captcha (abandonné maintenant) qui demande à l’utilisateur de dessiner quelque chose. Le principe est très bien, mais il suffit de quelques minutes à un développeur pour mettre en place un robot sur mesure pour passer à travers.
Autre exemple, un captcha très connu des utilisateurs WordPress, qui ajoute des questions mathématiques aux formulaires (exemple : 12 – trois = ?). Ce captcha passe par le serveur, mais ne transforme pas la question en images. Les robots peuvent donc tout à fait récupérer le texte, le transformer en chiffre et résoudre l’opération. Mauvaise pioche, donc.
Enfin, les captchas utilisant le serveur et des images ne sont pas non plus inviolables. D’une part a cause de la montée en puissance des ordinateurs : plus le temps passe, plus les robots ont accès à une grosse puissance de calcul pour leur permettre de décoder les images des captchas (et donc violer les protections de vos formulaires), mais aussi à cause de certains services proposant à des humains de remplir des catchas pour aider les robots. Oui, vous avez bien lu, et oui, c’est absurde.
Néanmoins, même s’ils ne sont efficaces que pour 70% des robots (je sors ce chiffre de mon chapeau, il n’est base sur rien, c’est pour illustrer mon propos), ils vous éviteront tout de même un bon paquet de spam. Donc est-ce que ça marche ? Pas vraiment. Est-ce qu’il fait tout de même en installer ? Oui !
Existe-t-il des alternatives aux captchas image ?
Il existe quelques alternatives, comme par exemple ce captcha inverse.
Son principe est de se dire que les robots remplissent tous les champs qu’ils trouvent. Un champ invisible pour les humains est donc mis en place dans le formulaire. Si le serveur reçoit une donnée dans ce champ, le robot est démasqué ! De cette façon, il est possible de trier les robots sans ennuyer les humains.
Google lui-même est sur le marché des alternatives, avec « No-captcha« , qui arrive prochainement.