Pour mieux contextualiser son analyse, Akif Khan a commencé par rappeler l'évolution du CAPTCHA :
- Étape 1. Les CAPTCHA ont commencé à être utilisés au début des années 1990, principalement par le moteur de recherche Alta Vista qui avait un énorme problème de spam – ils ont introduit le concept des lettres déformées.
- Étape 2. Après cela, reCAPTCHA a été créé, ce qui impliquait une paire de mots – et a été le début de l'utilisation de ce processus pour résoudre les problèmes d'IA, dans ce cas le book scanning. Le premier mot était connu du système, le second n'était pas identifié par le système et faisait partie d'un book scan. Google a fait l'acquisition de reCAPTCHA (qui servait à la numérisation de livres, là où échouaient les systèmes de reconnaissance optique de caractères)
- Étape 3. ReCAPTCHA 2 est ensuite arrivé, qui consiste à cocher une case pour dire que vous n'êtes pas un robot, et Google fait des vérifications sur votre comportement d'utilisateur, puis une vérification secondaire potentielle, la désormais tristement célèbre sélection d'images. C'est un autre bon exemple d'utilisation de CAPTCHA pour résoudre des problèmes de vision industrielle, dans ce cas dans l'environnement de la circulation, on pourrait supposer pour les voitures autonomes. Compte tenu de l'accent mis dans les universités et dans le commerce sur ce problème particulier de vision industrielle, les mauvais acteurs ont été en mesure de tirer parti de nombreux outils pour développer des systèmes permettant de les vaincre. En fait, étant donné que Google Cloud vend des systèmes d'apprentissage automatique, il est fort probable que certains serveurs de Google créent des CAPTCHA et que d'autres les cassent.
- Étape 4. Google a déployé reCAPTCHA v3, qui n'est rien de plus qu'une case à cocher, et semble utiliser le même type d'outils que la plupart des fournisseurs de détection de bots en termes d'analyse du comportement des utilisateurs.
- Étape 5. Mais Google n'est pas le seul acteur sur le marché. Les CAPTCHA continuent d'évoluer, de nombreux fournisseurs investissant massivement dans leur propre version. Certains prétendent avoir des taux de résolution exceptionnellement élevés pour les humains et des taux de résolution faibles pour les bots. L'approche que certains ont adoptée est de se concentrer sur l'utilisation de défis de vision industrielle qui sont faciles à résoudre pour les humains et n'ont également aucune application commerciale, de sorte que contrairement aux applications de voiture autonome, les mauvais acteurs ne peuvent pas tirer parti des sources académiques, commerciales et open source pour construire des outils visant à résoudre ces CAPTCHA.
Le pour et le contre
« Revenons donc à l'essentiel : pourquoi certaines entreprises aiment-elles utiliser les CAPTCHA ? Eh bien, la logique est simple. Si votre solution de détection de bot pense que l'utilisateur est un bot, vous pouvez bloquer cet utilisateur. Mais aucune solution n'est parfaite, et si l'utilisateur n'est pas un bot ? Alors vous venez de bloquer un bon utilisateur. Et donc le CAPTCHA représente une opportunité, il représente l'espoir, que s'il s'agit réellement d'un bon utilisateur, alors ils peuvent le prouver en résolvant le CAPTCHA et continuer leur chemin.
« Alors pourquoi certaines entreprises détestent-elles les CAPTCHA ? Eh bien, le taux de résolution des (bons) humains sur les CAPTCHA peut parfois être assez faible, ce qui empêche les bons utilisateurs de continuer. De plus, pour les bons utilisateurs qui résolvent le CAPTCHA, c'est souvent un ajout ennuyeux à l'expérience utilisateur. Et les taux de résolution des mauvais acteurs sur les CAPTCHA peuvent parfois être assez élevés, bien que ce soit un point nuancé, car dans certains cas oui peut-être que les bots ont été formés pour résoudre les CAPTCHA, mais dans d'autres cas les bots cèdent la session à un humain pour résoudre le CAPTCHA – il existe une industrie florissante de services de résolution de CAPTCHA alimentés par l'homme – généralement, les personnes vivant dans des environnements à faible revenu reçoivent une somme dérisoire par CAPTCHA, en résolvant des milliers d'entre eux chaque jour ».
Alors faut-il ou non utiliser un CAPTCHA ?
« Je pense que oui. N'utilisez tout simplement pas la version Google "choisissez un panneau de signalisation dans cette matrice d'images" d'un CAPTCHA. Il existe de nombreux CAPTCHA beaucoup plus évolués disponibles aujourd'hui, comme Arkose Labs, GeeTest ou PerimeterX, qui ont leurs propres approches et nuances, mais font toujours un meilleur travail que la redoutable matrice d'images de trafic. Compte tenu de la pression pour réduire les faux positifs sur la plupart des entreprises de commerce numérique, donner aux utilisateurs une chance de prouver qu'ils sont humains et pas seulement les bloquer vaut la peine d'être exploré. Dans un monde où les mauvais acteurs utilisent des humains pour augmenter les robots, cependant, vous avez besoin d'un CAPTCHA suffisamment intelligent pour détecter quand les humains qui le résolvent sont un peu trop rapides – peut-être un signe qu'ils passent leur journée à résoudre ces choses encore et encore. Lorsque cela est détecté, le CAPTCHA devrait être rendu dynamiquement plus difficile pour décourager une telle activité et la rendre économiquement non viable. L'utilisation d'un CAPTCHA force également l'interaction avec l'utilisateur de manière contrôlée, permettant d'obtenir plus de télémétrie sur l'utilisateur et son niveau d'humanité.
« N'utilisez pas CAPTCHA par défaut pour toutes les sessions. Comptez sur votre fournisseur de détection de bots pour repérer et bloquer la majeure partie du trafic de bots, et déployez simplement des CAPTCHA dans les véritables cas de zone grise où vous n'êtes pas sûr de l'humanité – je m'attendrais à ce que ce soit moins de 5 % de toutes les sessions avec certitude.
« Et effectuez des tests A/B, divisez votre trafic et utilisez un CAPTCHA sur un seul segment et comparez les résultats – prenez des décisions basées sur des données et des mesures réelles, et non sur des idées préconçues basées sur des approches obsolètes telles que la matrice d'image du trafic.
« Dernière mise à part intéressante, Amazon a déposé un brevet en 2017 pour un nouveau type de CAPTCHA qui est facile à résoudre pour les machines, mais présente un défi visuel que les humains se tromperaient généralement – et donc le processus est subverti – la faillibilité humaine peut en fait être l'avenir lorsqu'il s'agit de vaincre les bots ».
Cloudflare veut se débarrasser des Captcha
Toute l'industrie n'est pas en faveur des Captcha. Nous pouvons citer l'exemple de Cloudflare qui teste la possibilité que des clés de sécurité remplacent les CAPTCHA.
Par le biais de Thibault Meunier, ingénieur de recherche au sein de la structure, l'entreprise explique :
« Sur la base de nos données, il faut en moyenne 32 secondes à un utilisateur pour terminer un défi CAPTCHA. Il y a 4,6 milliards d'utilisateurs d'Internet dans le monde. Nous supposons qu'un utilisateur Internet typique voit environ un CAPTCHA tous les 10 jours.
« Ce calcul très simple du dos de l'enveloppe équivaut à quelque part de l'ordre de 500 années humaines gaspillées chaque jour – juste pour que nous puissions prouver notre humanité.
« Aujourd'hui, nous lançons une expérience pour mettre fin à cette folie. Nous voulons nous débarrasser complètement des CAPTCHA. L'idée est assez simple: un vrai humain devrait être capable de toucher ou de regarder son appareil pour prouver qu'il est humain, sans révéler son identité. Nous voulons que vous puissiez prouver que vous êtes humain sans révéler quel humain vous êtes ! Vous pouvez demander si cela est même possible ? Et la réponse est oui ! Nous commençons avec des clés USB fiables (comme YubiKey) qui existent depuis un certain temps, mais de plus en plus de téléphones et d'ordinateurs sont équipés par défaut de cette capacité ».
La solution proposée par Cloudflare une attestation cryptographique du statut de Personne. Du point de vue de l'utilisateur, cette attestation fonctionne comme suit:
- L'utilisateur accède à un site Web protégé par une attestation cryptographique du statut de Personne, tel que cloudflarechallenge.com.
- Cloudflare lance un test.
- L'utilisateur clique sur Je suis humain (version bêta) et est invité à indiquer un dispositif de sécurité.
- L'utilisateur décide d'utiliser une clé de sécurité matérielle.
- L'utilisateur branche l'appareil sur son ordinateur ou l'appuie sur son téléphone pour une signature sans fil (à l'aide de NFC).
- Une attestation cryptographique est envoyée à Cloudflare, ce qui autorise l'utilisateur à entrer après vérification du test de présence de l'utilisateur.
Selon Thibault Meunier, terminer ce flux prend cinq secondes. Plus important encore : « ce défi protège la confidentialité des utilisateurs puisque l'attestation n'est pas uniquement liée à l'appareil de l'utilisateur. Tous les fabricants d'appareils auxquels Cloudflare fait confiance font partie de l'Alliance FIDO. En tant que telle, chaque clé matérielle partage son identifiant avec d'autres clés fabriquées dans le même lot. Du point de vue de Cloudflare, votre clé ressemble à toutes les autres clés du lot ».
Il faut au plus trois clics pour remplir une attestation cryptographique du statut de Personne : « il n'y a pas de boucle, où un utilisateur est invité à cliquer sur les bus 10 fois de suite ».
Source : Gartner
Et vous ?
Êtes-vous pour ou contre l'utilisation des CAPTCHA ? Dans quelle mesure ?
Voir aussi :
Trolldi : estimant que les CAPTCHA sont ennuyeux sous leur forme actuelle, un développeur propose Doom CAPTCHA, faisant revivre la série de jeux vidéo de tir à la première personne
« Il est temps de mettre fin à cette folie » : Cloudflare voudrait rendre obsolètes les CAPTCHA
hCaptcha revendique être désormais le plus grand service indépendant de CAPTCHA, opérant déjà sur 15 % de l'Internet, vous pouvez battre Google en mettant en avant la vie privée, dit-il
Cloudflare a décidé d'abandonner reCAPTCHA de Google pour se tourner vers le service alternatif hCaptcha, parce que Google va facturer l'utilisation du service