Petite histoire du CAPTCHA : création, évolutions et dérives
-
Même pas un vrai test de Turing
Le CAPTCHA est un élément courant de la navigation sur le web, surtout des formulaires d’inscription. Ce mécanisme de sécurité est né il y a une vingtaine d’années et a eu le temps d’agacer plus d’une personne. Voici son histoire.
CAPTCHA signifie « Completely Automated Public Turing test to tell Computers and Humans Apart », soit en français « test de Turing totalement automatisé et public pour distinguer les ordinateurs des humains ». L’acronyme est le plus souvent utilisé pour décrire la petite énigme à résoudre, mais le terme désigne plus que cela : c’est toute la chaine de récupération et de la transmission de l’information.
L’idée d’un tel test est née à la fin des années 90 avec le besoin de pouvoir séparer rapidement les êtres humains des machines, pour contrôler certains accès, notamment les inscriptions à des services en ligne. Les premières réalisations se font au début des années 2000 à l’université Carnegie-Mellon. Le terme même de CAPTCHA est une marquée déposée lui appartenant et n’est donc pas un simple acronyme. Et ce, même si AltaVista avait fait quelques essais dans le domaine, mais sans véritablement les pousser sous une forme exploitable.
C’est donc à Carnegie-Mellon que l’on doit la concrétisation de ce test, plus précisément à quatre personnes : Luis von Ahn, Manuel Blum et Nicholas J. Hopper, aidés par l’ingénieur John Langford d’IBM.
Ce test devait présenter dès le départ deux caractéristiques essentielles et liées : être à la fois très simple pour l’être humain et complexe pour la machine. Tout était ainsi question de cognition et de reconnaissance automatisée des caractères. Du moins au début.
Le CAPTCHA en pratique
Tout le monde a déjà croisé la route de ces tests automatisés. Derrière cette apparente simplicité se cache un processus complexe regroupant aussi bien la génération de l’énigme que le mécanisme de validation de la réponse, en passant par le protocole de transmission.
Les énigmes proposées ont évolué avec le temps. Il ne s’agissait au départ que de très simples opérations mathématiques comme « 3 + 5 = ? ». Puis les séquences de caractères sont arrivées, d’abord peu déformés, puis des altérations de plus en plus prononcées sont apparues, au point parfois de poser autant de problèmes aux êtres humains qu’aux systèmes de reconnaissance. Les opérations mathématiques sont elles aussi apparues rapidement, là encore sous une forme simple, puis avec certaines déformations, dans l’idée de jouer sur les deux tableaux cognitifs.
Outre l’idée générale d’empêcher l’inscription automatisée à des sites et services, l’un des points forts du CAPTCHA est qu’il s’exécute localement, donc sur l’appareil de l’utilisateur. Ce qui signifie que la résolution du problème n’interroge pas le serveur : la réponse est déjà comparée sur place, et c’est seulement en cas de réponse correcte qu’un signal est envoyé. Un processus destiné à empêcher que des bots bombardent des serveurs de requêtes, ce qui aurait raboté l’intérêt du CAPTCHA.
Cette exécution locale permet en pratique de bloquer de nombreuses tentatives. Les webmails comme Gmail et Outlook s’en servent bien sûr pour éviter les créations de comptes à la chaine. On peut généraliser ce besoin de barrière à l’ensemble des services devant bloquer un accès automatisé, pour bloquer – tout du moins en théorie – les participations à des sondages, des téléchargements massifs, la publication de messages, etc. C’est un problème que l’on retrouve par exemple de manière très présente sur Twitter/X, sur lequel de nombreux bots sévissent.
Des chats, des souris, des dérives
Comme tout mécanisme de sécurité, le CAPTCHA est plongé dans un jeu permanent du chat et de la souris. La situation est comparable aux antivirus : les technologies et méthodes évoluant sans cesse, la contre-mesure doit s’adapter.
Les premières versions étaient simples, mais puisque la reconnaissance des caractères progressait, il a bien fallu rendre les choses progressivement plus complexes. Déformer légèrement le texte n’était plus suffisant et, avec le temps, d’autres altérations sont apparues, notamment le flou, le texte barré ou avec différents artefacts censés toujours permettre une identification « simple » par l’œil et le cerveau humains, tout en rendant très complexe la reconnaissance automatique.
Seulement voilà, la situation est doublement complexe. D’une part, les personnes ne sont pas toutes égales devant de tels mécanismes. Rapidement, des voix se sont élevées pour signaler de vrais problèmes d’accessibilité, notamment pour toutes les personnes malvoyantes, pour lesquels ces CAPTCHA étaient autant de barrières. C’est ainsi que l’on a vu arriver progressivement des fonctions permettant de dicter le texte à l’oral, quand cela est possible. Ces fonctions accompagnent les CAPTCHA et sont nécessairement développées par les sociétés concernées, les lecteurs d’écrans classiques ne pouvant pas lire le texte (le but d’un CAPTCHA étant de ne pas être lisible automatiquement, justement).
En dépit de quelques améliorations en matière d’accessibilité, le CAPTCHA est par essence excluant, dès lors que des déficiences visuelles et auditives sont en jeu. Le problème est accentué par les tests utilisant des images. Sans aide extérieure, les personnes concernées ne peuvent tout simplement pas s’inscrire d’elles-mêmes sur les services utilisant ce type de protection. En 2005, le W3C consacrait déjà une publication à cette problématique.
D’autre part, la complexité croissante des CAPTCHA a fini par poser problème aux internautes sans ces déficiences, tout en n’empêchant pas les technologies de reconnaissance de progresser suffisamment pour arriver à percer leurs mystères. C’est particulièrement vrai depuis que cette reconnaissance a été dopée au machine learning, comme le relatait en 2017 The Independant, qui pointait alors que certaines IA étaient capables de passer à travers les CAPTCHA sans avoir besoin d’un grand entrainement.
La société Vicarious avait ainsi bâti un modèle – nommé Recursive Cortical Network (RCN) – capable de reconnaître l’écriture dans 66,6 % des cas pour reCAPTCHA, 64,4 % pour BotDetect, 57,4 % pour Yahoo, 57,1 % pour PayPal, etc. La société indiquait même alors que ces chiffres pouvaient grimper à 90 % avec un peu plus d’entrainement.
En parallèle, la situation évoluait cependant. À la même époque, une part grandissante des CAPTCHA de Google ne faisaient déjà plus appel à la reconnaissance visuelle ou auditive : il s’agissait d’une simple case à cocher. Le système ne tablait plus sur les opérations cognitives mais s’alimentait à d’autres signaux provoqués par le comportement de l’internaute sur la page.
Google n’a jamais vraiment expliqué sa technologie. Tout juste savait-on que certains éléments étaient pris en compte, comme les mouvements de la souris, les cookies et paramètres du navigateur, etc. La case à cocher s’est amplement répandue depuis et constitue l’essentiel de l’expérience CAPTCHA aujourd’hui. Parfois, elle n’est pas suffisante, et l’internaute voit alors surgir une image découpée dans laquelle il faut reconnaître des objets.
Notez que Google n’est pas seul dans le domaine des CAPTCHA « avancés ». La concurrence s’est étoffée, avec par exemple hCaptcha, qui propose le même type de service tout en se voulant plus respectueux de la vie privée. hCaptcha s’appuie sur la case à cocher, qui vient valider les actions déjà effectuées sur la ou les pages par le visiteur, le cadre posant également une question très simple, du type « Votre légume préféré ». Il n’y a pas de mauvaise réponse bien sûr, la question n’est là que pour collecter une interaction active.
Les CAPTCHA invisibles et la tentation de Google
En 2017, Google est même passée à la vitesse supérieure : un CAPTCHA automatique, sans case à cocher, sans puzzle à résoudre et se basant uniquement sur les signaux émis par la personne sur la page en question, donc ses manipulations. Un CAPTCHA invisible, en somme.
Même encore aujourd’hui, on ne voit pas toujours ce CAPTCHA invisible, dont le fonctionnement technique n’est pas davantage précisé. On retrouve donc parfois la case à cocher ou même la fameuse image découpée, probablement quand le système automatique ne possède pas un historique de signaux assez important. La vidéo de présentation indiquait que le mécanisme devait être largement déployé au sein d’un site, pour améliorer la surveillance de l’internaute et lui attribuer une note de confiance, allant de 0 à 1.
[…]
Source et suite : nextinpact.com
-
Merci pour l’article !
-
Si je tenais le batard qui a inventé cette merde qui fonctionne 1 fois sur 10
-
-
Hadès Trolls DDL Pastafariste Rebelle Windowsien PW Addict Membrea répondu à Violence le dernière édition par
@Violence Proton fait quand même de sacré outils niveau sécurité si j’avais des billes a mettre quelque part je me laisserais bien tenter chez eux.
A voir si pour l’user c’est mieux leur système parce que se taper des bus et des ponts ça va 5 min quoi ^^
-
C’est sûr que les gens se plaindraient moins sur des images de fesses
Cliquez sur le nichon droit ! Faites un bisous au nombril !
-
Hadès Trolls DDL Pastafariste Rebelle Windowsien PW Addict Membrea répondu à duJambon le dernière édition par
@duJambon bah oui clairement
-
@Hadès a dit dans Petite histoire du CAPTCHA : création, évolutions et dérives :
@Violence Proton fait quand même de sacré outils niveau sécurité si j’avais des billes a mettre quelque part je me laisserais bien tenter chez eux.
Oui je penses comme toi. ils font de choses que je trouve vraiment bien. J’aimerais une appli desktop pour leur gestionnaire de password plutôt qu’une extension.
-
-
-
Cloudflare aussi évolue bien pour les captcha, si c’est la fin des case a coché qui prenne 3 plombe… sa me vas ^^
https://blog.cloudflare.com/turnstile-ga/
https://blog.cloudflare.com/turnstile-private-captcha-alternative/