CAPTCHA: hoe websites mens van machine proberen te onderscheiden
Wie weleens een formulier op internet heeft ingevuld, is het vast tegengekomen: een vakje met de tekst "Ik ben geen robot", of een rooster van foto's waarop je alle plaatjes met een fietsers of stoplichten moet aanklikken. Dit heet een CAPTCHA, een afkorting van Completely Automated Public Turing test to tell Computers and Humans Apart. Vrij vertaald: een volledig automatische, openbare test die bedoeld is om computers en mensen van elkaar te onderscheiden.
Een goede analogie is de portier bij een club die alleen mensen binnenlaat en geen apparaten die zich als mens voordoen. Een CAPTCHA is die digitale portier: een kleine puzzel die voor een mens gemakkelijk op te lossen is, maar voor een computerprogramma (een bot) lastig. Het idee is dat websites zo spam, fraude en misbruik door geautomatiseerde programma's kunnen tegenhouden, zonder dat gewone bezoekers er al te veel hinder van ondervinden.
Wat is het precies?
De oorspronkelijke CAPTCHA's bestonden uit vervormde, schuin geplaatste letters en cijfers op een rommelige achtergrond. Mensen herkennen die tekens vrij moeilijk, maar konden dat destijds beter dan de automatische tekstherkenningssoftware (OCR, optical character recognition) van die tijd. De gebruiker moest de tekst overtypen om te bewijzen dat hij geen bot was.
Later kwamen beeldselectie-captcha's, bekend van reCAPTCHA: een raster van foto's waarop je bijvoorbeeld alle afbeeldingen met een verkeerslicht moet aanklikken. Dit type combineert twee doelen. Het test of je een mens bent, maar de antwoorden werden ook gebruikt om beeldherkenning te trainen, bijvoorbeeld voor zelfrijdende auto's.
Rond 2014 introduceerde Google de "no-CAPTCHA"-checkbox: een simpel vinkje bij "Ik ben geen robot". Op de achtergrond analyseert het systeem allerlei signalen, zoals muisbewegingen, klikgedrag en cookies, om in te schatten hoe waarschijnlijk het is dat er een mens achter het scherm zit. Alleen bij twijfel krijg je alsnog een beeldpuzzel voorgeschoteld.
De nieuwste generatie gaat nog een stap verder: reCAPTCHA v3 en vergelijkbare systemen draaien volledig onzichtbaar op de achtergrond. Ze geven een risicoscore tussen 0 en 1 op basis van gedrag tijdens het hele bezoek, zonder dat de gebruiker iets hoeft aan te klikken. Cloudflare Turnstile werkt op een vergelijkbare manier: het analyseert technische kenmerken van de browser en het apparaat, vaak zonder enige zichtbare puzzel.
Wat wil men ermee bereiken?
Het hoofddoel is simpel: voorkomen dat geautomatiseerde programma's zich voordoen als mensen. Zonder zo'n drempel kunnen bots massaal spamberichten achterlaten in reactievelden, duizenden nepaccounts aanmaken, concertkaartjes wegkapen voordat een mens ook maar kan klikken, of geautomatiseerd duizenden gestolen wachtwoorden uitproberen op inlogpagina's (een aanval die bekendstaat als credential stuffing).
Daarnaast beschermt een CAPTCHA websites tegen scraping: het geautomatiseerd binnenhalen van grote hoeveelheden data, bijvoorbeeld prijzen van een webshop door concurrenten, of content door partijen die er zonder toestemming mee aan de haal gaan. Voor veel bedrijven is een CAPTCHA dus vooral een kosten- en risicobeperkende maatregel, niet een garantie tegen alle misbruik.
Voorbeelden uit de praktijk
Het concept CAPTCHA werd rond 2000-2003 uitgewerkt door onderzoekers Luis von Ahn, Manuel Blum, Nicholas Hopper en John Langford aan Carnegie Mellon University in de Verenigde Staten. Zij bedachten de term en de eerste werkende systemen.
Von Ahn ontwikkelde daarna reCAPTCHA, dat een slimme dubbele functie kreeg: gebruikers typten niet zomaar willekeurige tekens over, maar woorden die scanners van oude boeken en kranten niet goed konden lezen. Zo hielp reCAPTCHA mee aan de digitalisering van archieven, waaronder delen van Google Books en het archief van The New York Times. Google nam reCAPTCHA in 2009 over.
In 2014 lanceerde Google reCAPTCHA v2 met de bekende "Ik ben geen robot"-checkbox, die veel minder actieve inspanning van de gebruiker vroeg. In 2018 volgde reCAPTCHA v3, dat volledig op gedragsanalyse en risicoscores draait, zonder zichtbare puzzel voor de meeste bezoekers.
Als privacyvriendelijker alternatief ontstond hCaptcha, dat minder gebruikersdata deelt met een enkele grote partij en inmiddels door veel websites wordt gebruikt die niet afhankelijk willen zijn van Google. In 2022 introduceerde Cloudflare Turnstile, dat expliciet als doel heeft om zichtbare puzzels grotendeels overbodig te maken door te leunen op technische browserkenmerken in plaats van interactie van de gebruiker.
Hoe ver is de techniek?
CAPTCHA bevindt zich in een voortdurende wapenwedloop met kunstmatige intelligentie. De klassieke tekst- en beeldpuzzels, ooit bedacht omdat machines ze niet konden oplossen, worden door moderne beeldherkenning en met name recente multimodale taalmodellen (systemen die tekst én afbeeldingen kunnen interpreteren) in veel gevallen met hoge nauwkeurigheid opgelost. Onderzoekers hebben herhaaldelijk aangetoond dat dergelijke AI-systemen bekende captcha-types kunnen kraken, wat de oorspronkelijke aanname achter CAPTCHA onder druk zet.
Daarnaast bestaat er al langer een minder technische, maar effectieve omweg: zogenoemde captcha-solving farms. Dit zijn diensten waarbij mensen, vaak tegen een laag bedrag per opgelost puzzeltje, captcha's oplossen voor klanten die dat op grote schaal geautomatiseerd willen doen. Zo'n dienst omzeilt het hele idee van "mens versus machine", omdat er letterlijk een mens tussen zit.
Een ander punt van kritiek is toegankelijkheid. Beeld- en tekstpuzzels zijn voor mensen met een visuele beperking vaak lastig of onmogelijk op te lossen. Audio-captcha's, waarbij een uitgesproken code moet worden overgetypt, bieden een gedeeltelijke oplossing, maar worden zelf ook steeds vaker door spraakherkenningssoftware gekraakt en zijn voor mensen met een auditieve beperking weer een drempel.
Mede daardoor verschuift de sector richting onzichtbare, gedragsgebaseerde verificatie en naar cryptografische methoden zoals passkeys (versleutelde inlogsleutels die aan een apparaat gebonden zijn) en bredere "proof of humanity"-concepten. Er is geen garantie dat dit soort methoden op de lange termijn wel bestand blijft tegen steeds capabelere AI-systemen; het blijft een kat-en-muisspel zonder duidelijk eindpunt.
Wie werken eraan?
Google is met reCAPTCHA al jaren de grootste speler en beïnvloedt met zijn versies de facto de standaard. Cloudflare, een groot Amerikaans bedrijf dat websites beschermt tegen aanvallen en overbelasting, ontwikkelt met Turnstile een alternatief dat draait om minimale gebruikersinteractie. hCaptcha, aangeboden door het bedrijf Intuition Machines, positioneert zich als privacybewuster alternatief en wordt onder meer door Cloudflare als optie aangeboden naast het eigen Turnstile.
Carnegie Mellon University blijft relevant als de bakermat van het concept en als centrum waar nog altijd onderzoek plaatsvindt naar mens-machine-verificatie. Daarnaast houden academische onderzoeksgroepen wereldwijd zich bezig met twee verwante terreinen: adversarial machine learning (het bestuderen van hoe AI-systemen misleid of juist verbeterd kunnen worden bij het herkennen van patronen) en webtoegankelijkheid, waaronder onderzoek naar hoe verificatiesystemen minder drempels kunnen opwerpen voor mensen met een beperking.