Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

Captcha

Le terme CAPTCHA est une marque commerciale de l'université Carnegie-Mellon désignant une famille de tests de Turing permettant de différencier de manière automatisée un utilisateur humain d'un ordinateur.
C'est un test de défi-réponse utilisé en informatique, pour s'assurer qu'une réponse n'est pas générée par un ordinateur. L'acronyme « CAPTCHA » est basé sur le mot capture, et vient de l'anglaiscompletely automated public Turing test to tell computers and humans apart.
Étant réalisé par un ordinateur, en opposition avec les tests de Turing standard réalisés par des humains, un captcha est souvent décrit comme un test de Turing inversé. Ce terme est néanmoins ambigu parce qu’il pourrait aussi signifier que les participants essaient de prouver qu'ils sont des ordinateurs.

À propos du nom :

« Captcha » est un rétroacronyme : le mot se prononce comme capture en anglais américain et est censé être composé des initiales de Completely Automated Public Turing test to Tell Computers and Humans Apart, soit en français, « test public de Turing complètement automatique ayant pour but de différencier les humains des ordinateurs ». Ce terme, qui est une marque déposée par l'université Carnegie-Mellon, a été inventé en 2000 par Luis von AhnManuel Blum et Nicholas J. Hopper de cette université, et par John Langford d'IBM. Le nom « captcha » peut également être interprété par « capture character » (caractères de capture).

Caractéristiques :




Les captchas sont, par définition, entièrement automatisés, ne nécessitant qu'une petite intervention humaine lors de l'utilisation du test. Ceci présente des bénéfices au niveau des coûts et des performances.

L'algorithme utilisé pour créer un captcha est souvent public, bien qu'il puisse être breveté. Ceci est fait dans le but de démontrer que casser ce type de test nécessite la résolution d'un problème difficile en faisant appel à des notions de l'intelligence artificielle, plutôt que la découverte des secrets de l'algorithme, qui pourraient être obtenus par décompilation ou un autre moyen.

Applications :


Ce test est utilisé sur Internet dans les formulaires pour se prémunir contre les soumissions automatisées et intensives réalisées par des robots malveillants.

La vérification utilise la capacité d'analyse d'image ou de son de l'être humain. Un captcha usuel requiert ainsi que l'utilisateur saisisse au clavier une courte séquence improbable d'une demi-douzaine de lettres et/ou de chiffres visibles sur une image distordue (voir illustration) qui apparaît à l'écran. Certains sites web préfèrent afficher une image qui contient une question mathématique.
Ils sont utilisés :
  • contre le spam :
    • lors de l'inscription à des webmails gratuits (dont les comptes pourraient être utilisés par la suite pour l'envoi de courriers non sollicités),
    • lors de la soumission de messages dans des forums de discussion et des blogs (qui pourraient permettre de faire du référencement abusif ), etc. ;
  • contre l'extraction automatisée de bases de données ;
  • contre les tentatives d'attaque par force brute ;
  • pour la participation à des sondages (dont les résultats pourraient être faussés par des votes automatisés).

Complexité :


La complexité de certains types de ce système contribue à pénaliser l'expérience des internautes contraints d'essayer plusieurs fois des combinaisons possibles. En effet, certains captchas sont tellement déformés pour éviter une reconnaissance automatique que même les internautes ne peuvent les reconnaître. Pire, certains captchas sont plus facilement reconnus par les ordinateurs.

De plus, leur efficacité est contestée et des captchas peuvent être reconnus automatiquement en quelques secondes .

Accessibilité :




Les tests de captcha basés sur une lecture de texte - ou toute autre tâche de perception visuelle - rendent impossible l'accès aux ressources protégées pour des personnes déficientes visuelles. Néanmoins, le captcha n'a pas forcément besoin d'être visuel. N'importe quel problème d'intelligence artificielle, comme la reconnaissance vocale, peut être utilisé comme base pour un test de captcha. Certaines implémentations de captcha permettent aux utilisateurs d'opter pour un captcha audio.

Le développement des captchas audio semble être en retard par rapport aux tests visuels. D'autres types de tests, comme ceux qui nécessitent une compréhension de texte (par exemple, un puzzle logique, des questions ou des instructions pour créer un mot de passe) peuvent aussi constituer des méthodes utilisables dans le cadre d'un captcha. Encore une fois, il n'y a que peu d'études concernant leur résistance face aux contre-mesures.
Quelques tests intéressants apparurent avec l'idée de la reconnaissance d'images. Kitten Auth est un test de ce type, qui demande à l'utilisateur de reconnaître un animal (des chatons) dans une série de photographies de différentes espèces (dauphins, chiots, renards, etc.)
Pour les personnes déficientes visuelles (comme les utilisateurs aveugles ou ayant des difficultés à la perception des couleurs), les captchas visuels présentent de sérieuses difficultés. Du fait que les captchas sont conçus pour ne pas être lisibles par les machines, les outils courants d'aide comme les lecteurs d'écran ne peuvent pas les interpréter. Du fait que certains sites peuvent utiliser les tests de captcha dès le processus d'inscription initial, ou même à chaque connexion, ces derniers peuvent complètement bloquer l'accès. Dans certaines juridictions, les propriétaires de sites peuvent devenir la cible de litiges s'ils utilisent des captchas qui discriminent les gens ayant certains handicaps. Dans d'autres cas, ceux qui ont des difficultés visuelles peuvent choisir d'identifier un mot qui leur est lu.
Bien que fournir un captcha audio permette aux utilisateurs aveugles de lire le texte, ce procédé exclut toujours les personnes souffrant à la fois d’un déficit visuel et auditif.
L'utilisation d'un captcha empêche ainsi un grand nombre d'individus d'utiliser tous les services basés sur Internet comme PayPalGmailOrkutYahoo!, ainsi que de nombreux forums et blogs.
Un rapport du W3C a souligné l'inaccessibilité de certains tests visuels anti-robots.

Contournement :


Il y a plusieurs approches pour mettre en échec un captcha, détaillées ci-après :

  • utiliser une main-d’œuvre humaine pour les reconnaître :
    • rémunérer des décodeurs de captcha dans des pays à bas coût de main-d’œuvre ;
    • posséder soi-même un site assez bien fréquenté demandant aux utilisateurs de résoudre un captcha, qui provient en réalité d'un autre site, en temps réel ;
  • exploiter les bogues dans les implémentations qui permettent à l'attaquant de passer complètement outre le captcha ;
  • améliorer les logiciels de reconnaissance de caractères ;
  • l'attaque par force brute ou l'attaque par dictionnaire, qui peuvent être facilitées par la reconnaissance partielle du captcha (notamment le nombre de caractères).

Main-d’œuvre humaine

Il est possible de passer au travers du test de captcha en utilisant des opérateurs humains employés à décoder les captchas. Une publication du W3C indique qu'un tel opérateur « pourrait aisément vérifier des centaines de captcha par heure ». Des entreprises de services indiennes sont spécialisées dans ce négoce. Des spammeurs ont réussi à contourner la difficulté en créant des sites internet qui demandent à ce que l'utilisateur passe un test de captcha pour y accéder, ce test étant en fait celui requis par un autre site, tel celui de Yahoo pour valider la création d'une nouvelle adresse électronique. L'utilisateur du premier site contribue ainsi, à son insu, aux actes malveillants de ces derniers. Une contre-mesure existe : ajouter, dans le captcha, une expression identifiant clairement son émetteur (telle que « yahoo.fr »).

Bogues de conception

Certains systèmes de protection par captcha mal conçus peuvent parfois être forcés sans utiliser de logiciels de reconnaissance de caractères, mais simplement en réutilisant l'ID d'une session d'une image connue de captcha. Parfois, si une partie du logiciel qui génère le captcha est située côté client (la validation est faite sur un serveur, mais le texte que l'utilisateur doit saisir pour s'identifier est généré côté client), alors les utilisateurs peuvent modifier le logiciel client pour afficher le texte de captcha non déformé par exemple.

Reconnaissance automatique de caractères

Bien que les captchas fussent initialement conçus pour contrer les logiciels de reconnaissance de caractères standard utilisés pour la numérisation par balayage de documents, plusieurs projets de recherche ont prouvé qu'il est possible de décrypter un grand nombre de captcha avec des programmes spécifiquement adaptés à un type de captcha. Pour des captchas avec des lettres déformées, l'approche adaptée est constituée d'une manière générale par les étapes suivantes :
  1. suppression du fond de l'image, par exemple avec des filtres de couleurs et la détection de lignes fines ;
  2. segmentation, c'est-à-dire découpe de l'image en plusieurs segments contenant une seule lettre ;
  3. identification de la lettre contenue dans chaque segment.
Le reCAPTCHA propose une approche semblable, à l'échelle des mots.
                                                                                                                                                  Merci wikipédia

The official CAPATCHA site --> http://www.captcha.net/