Le scénario est plutôt classique, vous souhaitez créer un nouveau compte mail, mais juste avant de valider la création de votre compte, vous devez d’abord passer un test.

Ce test se présente souvent sous forme d’image(s) représentant un texte distordu :

captcha

En tant normal, le test est plutôt facile, et c’est le but.

Vous en avez probablement déjà entendu parler, ce test est un captcha de sécurité. Il permet d’éviter que des robots effectuent des actions automatisées envers certains services.

D’ailleurs, je les utilise beaucoup sur le blog car sans eux c’est le spam immédiat assuré.

Captcha vient de « Completely Automated Public Turing Test to Tell Computers and Humans Apart ».

Explications sur le Test de Turing

Alan Turing était un brillant mathématicien et cryptologue britannique né en 1912 et décédé en 1954. Il a notamment mis au point des méthodes pour casser le code chiffré de la machine Enigma utilisée pendant la Seconde Guerre mondiale. Mais l’un de ces travaux les plus notables est celui du test de Turing.

Le test de Turing est un test d’intelligence artificielle basé sur la faculté d’imiter la conversation humaine. Le test consiste à faire communiquer d’un côté un humain et de l’autre côté un ordinateur ou un autre humain à l’aveugle. Si l’humain passant le test n’arrive pas à déterminer s’il parle à un ordinateur ou à un être humain, le test est réussi.

Dans le cas des captchas, il s’agit donc d’un test du Turing inversé, c’est-à-dire que si le captcha permet de différencier une machine d’un robot, le test est réussi.

Différents types de captchas

L’exemple précédent est celui d’un captcha classique et potentiellement faillible. En effet, des systèmes de déchiffrement de captchas existent, on les place dans la famille des outils de reconnaissance optique de caractères (ROC). Ces derniers peuvent facilement passer le test si le captcha n’est pas très avancé.

De ce pas, plusieurs types de captchas ont été créés, en voici quelques uns :

Le captcha classique

Il s’agit notamment de celui créé par reCaptcha que vous voyez souvent sur le web. Il s’agit de taper deux mots dans l’ordre et séparés par un espace.

captchanormal

Saviez-vous que seulement un des deux mots est reconnu de manière certaine ?

L’autre est issu d’une numérisation d’un livre du domaine public opérée par Internet Archive.

Ce deuxième mot sera à son tour officiellement reconnu si plusieurs utilisateurs l’ont vérifié en obtenant le même résultat. (Cela signifie également que vous n’êtes pas obligé de trouver les deux mots).

À noter que cela peut servir dans le cas où il n’est vraiment pas possible de résoudre un captcha, même pour un être humain…

wtf

« Je ne suis pas un robot »

Il s’agit d’une nouveau type de captcha qui part du principe qu’écrire des mots pour prouver qu’on n’est pas un robot n’est pas très pratique. L’équipe Google en charge du projet a donc créé ce moyen simple de prouver qu’on n’est pas un robot : une seule case à cocher.

Le fonctionnement précis de ce système n’est pas communiqué, pour éviter que des petits malins puissent le détourner, mais dans les grandes lignes il teste trois actions :jenesuispasunrobot

  • Ce que l’internaute (ou le robot) fait avant de cliquer sur la case (est-ce que la souris a sauté directement en plein milieu de la case, comment les autres champs ont été remplis…etc).
  • Ou est-ce que le clic est effectué dans la case.
  • Ce que l’internaute (ou le robot) fait juste après le clic (est-ce que la souris saute mécaniquement sur un bouton…etc).

Bien entendu, si le système n’est pas sûr d’avoir déterminé si le visiteur est bien humain, il lance tout de même un captcha « classique ».

Le captcha par identification d’image

Il s’agit ici de trouver la ou les images parmi une liste donnée qui correspondent à un mot.

captchaidentificationimage

Le captcha par reconstitution d’un puzzle

Toujours pour décomplexifier le captcha classique tout en évitant d’accepter les robots, il existe des captchas par reconstituion d’un puzzle. L’idée étant de reconstituer une image en faisant glisser les pièces dans le bon ordre avec sa souris :

captchapuzzle

Autres types de captcha

Sans les citer tous, il existe d’autres types de captcha dont :

  • Les captchas audio
  • Les captchas par résolution d’un calcul

Application à la sécurité informatique

Bien entendu, on n’utiliserait pas de captchas sur le web, si on n’en avait pas besoin.

En l’occurrence, le besoin ici est de lutter contre les spammers et contre les tentatives de cassage de mots de passe.

Contrer les spammers

Initialement utilisés pour contrer les robots qui votaient automatiquement à des sondages en ligne, les captchas ont maintenant divers buts.

L’idée est par exemple d’éviter les spammers de générer des centaines ou milliers de comptes ou encore de télécharger automatiquement une centaine de fichiers à la suite.

L’exemple le plus notable concernant la sécurité informatique est celui permettant de limiter les tentatives d’accès à des ressources protégées. Habituellement, lorsque vous essayez divers mots de passe erronés à la suite, vous allez être obligé de remplir un captcha pour vérifier que vous n’êtes pas un robot essayant de trouver la bonne combinaison de caractères.

Dommage je viens de supprimer les commentaires indésirables, mais j’aurais pu vous montrer que j’en ai reçu 42 en 3 jours pendant que j’étais en train de changer le prestataire de captcha. C’est juste incroyable.

Le captcha c’est comme un pouce sur le bout d’un tuyau.

Dès que vous l’enlever, ça pisse de partout.

« Le captcha c'est comme un pouce sur le bout d'un tuyau. »Cliquez pour tweeterPartager sur FacebookPartager sur LinkedIn

Créer un captcha

Pour créer un captcha sur votre site web, vous avez plusieurs choix dont ceux qu’on a vus précédemment.

Pour installer un captcha reCaptcha sur votre site web, vous pouvez vous rendre directement sur le site de Google :

https://www.google.com/recaptcha/admin#list

On vous demandera d’enregistrer votre site et les domaines concernés. Vous aurez ensuite à générer deux clés, l’une que vous garderez pour vous (clé secrète) et l’autre que vous placerez dans le code HTML (clé du site).

Les exemples de codes sont donnés dans la documentation :

https://developers.google.com/recaptcha/docs/display

Vous en trouverez également sur le projet Github associé :

https://github.com/google/recaptcha

Articles similaires

Menu