Elsker dem eller hader dem - CAPTCHA'er er blevet allestedsnærværende på internettet. Hvad er CAPTCHA alligevel, og hvor kom det fra? Den ydmyge CAPTCHA har været centrum for stor opmærksomhed som det mest effektive våben i kampen mod web-spam. Men er de effektive? Er der nogen anden form for CAPTCHA end den grundlæggende "vippe hovedet, skæv og læs mig"?
Du skal ikke passere (The Turing Test)!
Captcha er opfundet af et team af Carnegie Mellon professorer og sat i første omgang omkring år 2000 af AltaVista og Yahoo i et forsøg på at forhindre automatiserede chatbots og URL-indlæg. Det er faktisk et akronym for C ompetely A udeated P ublic Turing test for at fortælle C omputer og H umans A del.
For dem af jer, der ikke ved hvad det betyder, kan det hjælpe med at forklare, hvad Turing-testen er. Opkaldt efter britisk professor Alan Turing er Turing-testen standardprøven af en kunstig intelligensbaseret maskine, hvorved en maskine kan bestå testen, anses for at udvise intelligent opførsel . I det væsentlige består testen af at tale med en række dommere via en tekstgrænseflade - hvis dommerne ikke kan fortælle, at de chatter til en computer, passerer den testen. Personligt er jeg af den opfattelse, at Turing-testen er ubrugelig på den baggrund, at en delfin heller ikke kunne tale med et menneske, men vi tilskriver dem en højere form for intelligent adfærd. Men jeg går ned.
CAPTCHA'en er derfor en automatiseret Turing-test. Der er en række forskellige måder at gøre dette på, men den mest almindelige, som vi synes at have slået sig fast på, er at præsentere brugeren med en krypteret form for tekst, idet man antager (ofte forkert) at ethvert normalt menneske vil kunne dechiffrere tekst.
CAPTCHA har udviklet sig over tid, men er i sidste ende blevet besejret, som vi senere finder ud af.
Tekstbaserede CAPTCHA'er og Re-CAPTCHA-projektet
ReCAPTCHA-projektet, der nu ejes af Google, besluttede, at det i stedet for inanelt at dechiffrere kryptisk tekst uden nogen rigtig god, gav det en fantastisk mulighed for at rette fejlene ved computerbaseret optisk karaktergenkendelse. For ældre bøger især finder computere det meget svært at genkende ordene, mens et menneske finder opgaverne trivielle. Kombiner opgaven med digitalisering af gamle bøger med spamforebyggelse, og du er på en absolut vinder.
Men hvis computeren havde problemer med at genkende ordet i første omgang, hvordan kan det fortælle, om hvad du skrev i, er nonsens? Enkel - præsentér brugeren med to ord - hvoraf en er kendt. Systemet antager, at hvis brugeren korrekt skriver det kendte ord, så er chancerne for, at det uigenkendelige ord også er korrekt.
En anden genial idé er at kombinere CAPTCHA med en eller anden form for reklame.
Math Problem
OK, billedet er en joke, men i det væsentlige er brugeren præsenteret med et grundlæggende matematisk problem. Vi bruger et lignende system på Answers-webstedet lige nu. Det behøver ikke at være svært, bare nogle grundlæggende tilføjelser.
Billedbaserede CAPTCHA'er
Så vanskeligt som nogle af ReCAPTCHA-koderne kan være for dig og jeg nogle gange, er der allerede udviklet software, der kan bryde koden med en 30% succesrate - som for en spam kampagne med millioner af forsøg er en ganske acceptabel sats. Billeder på den anden side er yderst vanskelige at behandle for computere semantisk. Tænk på et simpelt katbillede - programmering af en computer til at genkende et menneskeligt ansigt er svært nok, men at skelne en kat fra alle de andre dyr og genstande i verden er stort set umuligt på dette tidspunkt.
Logik-Based
Disse er afhængige af logisk og semantisk intelligens om verden, eller bare grundlæggende fælles menneskelig fornuft. Nogle eksempler kan være:
- Identificer mad i denne liste: asfalt, bacon, sky, dolk.
- Identificer våbenet i denne liste: asfalt, bacon, sky, dolk.
- Hvor mange døre er der på en firedørs bil?
- Hvad er det tredje ord i denne sætning?
- Hvad er der tilbage, hvis du fjerner B fra ABC?
Et godt plugin til at integrere disse slags tests i dit WordPress-kommentarsystem er WP-Gatekeeper, forresten.
De-CAPTCHA Services
Den triste kendsgerning er, at mens CAPTCHA'er er et nødvendigt onde, bliver de nemt overvundet af spammere i dag. Mens nogle spammere faktisk har udviklet sofistikeret software, der kan efterligne det menneskelige øje og hjernen til at dekode som et menneske gør, er sandheden langt enklere og mere forfærdelig. Hvorfor udvikle dyre software, når du kan betale nogen pennies til at gøre CAPTCHA for dig? Den nuværende billigste sats er $ 1, 39 for 1000 CAPTCHA'er med en nøjagtighed på 98%, og tjenester som Death By Captcha har udviklet udførlige API'er til udviklere til at bruge. Den eneste person, der bliver sænket af CAPTCHAs i dag, er du!
Captchaens fremtid
Ligesom alt andet i livet, er CAPTCHA'er ikke uigennemtrængelige til at hacking eller spamming. Da nye og mere geniale tester udtænkes, vil der blive udviklet stadig mere sofistikerede måder at bryde dem på - og løsningen af at betale en anden til at gøre dem for dig kan aldrig blive besejret. Alligevel er det vores ansvar som webudviklere og administratorer at holde spammere væk fra vores websteder uden at forringe brugeroplevelsen.
Er du chokeret over at lære, hvordan billig en CAPTCHA kan besejres for? Har du set nogen andre slags CAPTCHA'er ude i naturen, der imponerede dig? Lad os vide i kommentarerne! Sørg også for at tjekke alle de sjove billeder, der er tagget "captcha" over på Geeky Fun.
Billedkredit: xkcd