Tout le monde a déjà répondu à des tests captcha sur les sites Web qui demandent soit de cliquer sur une série d’images de voitures, de feux de circulation ou de bicyclettes, soit d’entrer des combinaisons déconcertantes de chiffres et de lettres, soit simplement de cliquer pour confirmer que l’on n’est pas un robot. Autrefois, ces tests étaient tellement nombreux qu'ils finissaient par devenir très énervants, surtout quand il fallait s'y reprendre à plusieurs fois. Mais aujourd’hui, la question se pose de savoir si un robot ou une IA serait aussi capables de réussir ces tests ? Comment le captcha sait-il que le test a bien été effectué par un humain ? Et que signifie ce terme ?

Signification de captcha

Le mot captcha signifie « Completely Automated Public Turing Test to tell Computers and Humans apart » et désigne donc un test de Turing public et automatisé permettant de distinguer les humains des ordinateurs. Le terme « test de Turing » a été inventé par Alan Turing, un mathématicien et informaticien britannique qui souhaitait utiliser certaines méthodes pour vérifier si les machines pouvaient penser et agir comme des humains. Les tests de Turing peuvent également être utilisés pour tester la créativité et la conscience des IA. Les captcha existent depuis 2000 et sont délibérément conçus pour ressembler à une « capture », car ils sont essentiellement utilisés pour intercepter et filtrer les robots sur les sites web, en particulier pour éviter les spams ou empêcher les achats automatisés par des robots.

Fonctionnement du test

Généralement, les captcha sont assez simples, mais ils exigent toujours une intervention de l’utilisateur. Parfois, il doit reconnaître certaines lettres et certains chiffres qui ont été déformés et les saisir manuellement. Dans d'autres cas, il doit reconnaître certains motifs sur des images, par exemple des feux de circulation, des ponts ou des animaux. Les tests sont toujours aléatoires : une tâche différente devrait apparaître chaque fois que la page du site web est rechargée. L'objectif est d'éviter les répétitions, qui permettraient aux robots de contourner plus facilement le système. Autrefois, les ordinateurs avaient du mal à résoudre les captcha, car certains algorithmes devaient être intégrés pour reconnaître les modèles de manière fiable. Cependant, les progrès constants de l’IA ont permis aux robots de résoudre aisément ces tests.

Différencier l’humain du robot

Cela nous ramène à la question précédente, celle de l’efficacité des captcha aujourd'hui, même s'ils sont moins utilisés que par le passé. La solution trouvée pour différencier l’intervenant humain du robot est simple : le déplacement de la souris ! Les captcha modernes analysent les mouvements pour suivre le déplacement du curseur. Quand une personne déplace la souris, la trajectoire du curseur n'est pratiquement jamais la même. Le mouvement n'a jamais la même vitesse. Les robots, en revanche, cliquent automatiquement sur les boîtes ou les images captcha en suivant une ligne droite parfaite (par exemple, de bas en haut, directement sur la boîte). Les sites web peuvent reconnaître ces mouvements et bloquer l'accès du site s’ils sont trop parfaits. Et s’il arrive que le site demande à l’utilisateur humain de cliquer sur une case indiquant « Je ne suis pas un robot », puis de résoudre à nouveau un captcha plus complexe avec des images, c’est que le captcha a jugé que le mouvement de la souris était peut-être trop « mécanique ». Pour éviter cette étape et montrer clairement que l’on est un humain, il faut déplacer le curseur de la souris en suivant des trajectoires moins précises et plus saccadées.