Depuis nos premières expériences sur Internet, nous croisons des CAPTCHA dans bien des situations. Pour s’inscrire sur un site, pour publier un message sur un forum ou à la fin d’un article, ou d’une manière plus générale, à la fin d’un formulaire. Il a pour missions de bloquer les entrées envoyées par des robots, visant à diffuser du spam. Aujourd’hui ce terme est une marque commerciale, non pas déposée par Google, mais par l’Université Carnegie-Mellon, située à Pittsburgh aux États-Unis.

Que veut dire CAPTCHA ?

CAPTCHA est l’acronyme de Completely Automated Public Turing test to tell Computers and Humans Apart. En français, cela donne grossièrement : test public de Turing complètement automatique ayant pour but de différencier les humains des ordinateurs. Quoi qu’il en soit, le détail de l’acronyme prouve sa finalité : bloquer les action robotisées.

Le terme a été inventé en 2000 par Manuel Blum, Luis von Ahn, et Nicholas J. Hopper de l’Université Carnegie-Mellon, ainsi que John Langford un chercheur travaillant chez IBM.

Des premières traces du CAPTCHA dès 1996

Dans les 90, les forums sont les réseaux sociaux d’aujourd’hui. On y parle de tout, avec des internautes du monde entier. Cette période marque aussi la prolifération de messages que l’on peut qualifier de spam, déposés par des robots, destinés à ramener vers un site douteux, à déposer un lien, ou juste à nuire aux utilisateurs.

Rapidement, des chercheurs se penchent sur cette problématique, les filtres des sites web n’étant plus assez efficaces. L’idée est donc de créer un outil simple qui permette de distinguer un robot d’un humain. C’est en 1996 que Moni Naor dans un texte intitulé Verification of a human in the loop, or Identification via the Turing Test que les bases sont posées. Quelques mois plus tard, en 1997, Altavista utilise une version qui amorcera une véritable tendance. À cette époque, l’objectif est bloquer la surindexation de sites, dont beaucoup étaient ajoutés par des robots. Un problème se pose vite lorsque la détection des caractères à retaper devient simple et se fait automatiquement par les robots. Il est alors nécessaire de faire évoluer le concept.

Voici l'ancêtre du CAPTCHA

Voici l’ancêtre du CAPTCHA

Ainsi, la reconnaissance des lettres ou des chiffres doit être rendue quasiment impossible par un robot, souvent par de simples humains aussi. Plusieurs pistes sont lancées, avec des variations de couleur du fond, alternance de la casse (haute ou basse, majuscule ou minuscule), etc. C’est en 2000 que Manuel Blum, Luis von Ahn, Nicholas J. Hopper et John Langford créent une version aboutie, et rapidement utilisée par de grands acteurs du web, à l’instar de Yahoo à l’époque. L’approche de réécriture restera en place et sera très populaire jusqu’aux entrainement des intelligences artificielles.

En effet, en d’autres acteurs du numérique, comme Google, ont eu pour idée de transformer le CAPTCHA que l’on connaissait depuis des années. La boite de dialogue est remplacée par une mosaïque présentant une image découpée, ou bien plusieurs images. L’utilisateur doit cliquer les mages sur lesquelles il voit tel objet, ou tel animal. Cette méthode est encore très utilisée sur bon nombre de site, sans que l’on ait tout de suite compris sa finalité : instruire une IA de reconnaissance d’image. Malin ! Aujourd’hui, les images les plus communes présentent des feux de tricolores, des voitures, ou des devantures de magasin, afin d’enrichir les moteurs de voiture autonome. D’autres alternatives de Google, appelées reCAPTCHA (2014) analysent le comportement de l’utilisateur qui n’a qu’une case à cocher. Le déplacement non mécanique de la souris prouverait à lui seul que vous n’êtes pas un robot.

je ne suis pas un robot

Vers la disparition du CAPTCHA

Constamment amélioré, constamment contourné

Depuis les premiers CAPTCHA, c’est un jeu du chat et de la souris qui s’est amorcé. Les pirates trouvent une solution, les développeurs l’améliorent, et ainsi de suite. Dès lors qu’il s’agit d’un problématique mécanique, elle peut être surpassée par un programme suffisamment perfectionné.

C’est d’ailleurs ce qui est arrivé au reCAPTCHA de Google. Pas la version où vous devez cliquer sur une case à cocher, mais la mosaïque d’images. Un chercheur a utilisé une IA créée par Google pour contourner la protection de Google grâce à un script qu’il a baptisé ReBreakCaptcha. Il exploitait la possibilité de télécharger une piste audio, fonctionnalité présente à partir de reCAPTCHA v2 afin de facilité l’utilisation par des personnes handicapées. Il a ensuite utilisé une reconnaissance audio, et une réécriture du texte.

D’autres vidéos très virales sont également apparues sur la toile. Elles présentaient un bar robotisé muni d’un stylet qui allait cocher la case du CAPTCHA tout seul. Elles sont évidemment fausse, même si l’on ne peut imaginer la possibilité d’en créer un qui fonctionnerait vraiment, mais son coût serait trop élevé.

L’intelligence artificielle comme seule réponse à la fin du CAPTCHA ?

En 2017, Google (encore et toujours) a présenté une évolution assez intéressante baptisée invisible reCAPTCHA. Il fonctionne pour la v2 de la solution uniquement. L’idée est simple, avec un script placé sur le site, on identifie par le comportement s’il s’agit d’un visiteur artificiel, ou d’un humain, pas de case à cocher.

Enfin, reCAPTCHA v3 lancé en octobre 2018 reprend les bases de cette précédente version, mais apporte un volet d’analyse supplémentaire. Pour les sites ecommerce par exemple, il scanne chacune des sessions et arrive à distinguer si tel utilisateur enregistré, ou tel visiteur pourrait être un robot. Il attribue un score de risque, et permet ensuite d’alerter le responsable du site d’activités suspectes, comme la publication de commentaires sur des fiches produit.

C’est l’apprentissage perpétuel qui fait évoluer la sécurité sur les sites. La césure a eu lieu avec le développement de l’intelligence artificielle, puisque les géants du numérique ont logiquement plus de moyens que les pirates. En revanche, il y aura toujours des failles ou des contournements possibles tant que l’on n’exploite pas de données biométriques pour certifier certaines actions. Néanmoins, cela posera un problème évident de protection de la vie privée, sauf des idées comme Sign in with Apple se développent ailleurs.