Hlavní navigace

Spamovací roboti chytřejší než lidé

5. 10. 2007
Doba čtení: 3 minuty

Sdílet

Systém CAPTCHA měl sloužit k rozlišení návštěvníků stránek na roboty a lidi. Proč by však lidé měli obrázky rozeznávat lépe než programy? Nedá se vyjít naopak z toho, že na rozdíl od softwarových robotů jsou naše schopnosti omezenější? Turingův test lze přece použít oběma směry...
Pavel Houser - karikatura

Ilustrace: Nenad Vitas

Technologie zvaná CAPTCHA byla na Lupě probírána již opakovaně. O tom, že je někdy těžké najít kompromis mezi nečitelností symbolů v obrázku pro roboty a jejich čitelností pro běžné uživatele, pojednává například tato zprávička. Kritice uživatelů zde byla vystavena SMS brána Vodafonu, a to kvůli často se překrývajícím číslicím. Osobně musím přiznat, že na podobné problémy jsem v poslední době několikrát narazil i u brány O2. Zde se mi zase stávalo, že obrázek byl zčásti překryt formulářem, takže první číslice byla prakticky nečitelná.

Zde se mimochodem nabízí možnost, jak roboty ošálit. Předpokládám, že při rozpoznávání textu v obrázku pomocí OCR se robot soustředí nikoliv na celou stránku, ale analyzuje pouze příslušný obrázek. Není pak nic jednoduššího, než ho záměrně trochu posunout, aby člověk neviděl, a tedy ani neopsal, celý text. No a pokud by se zase roboti pustili do analýzy celé stránky a skenovali určitý definovaný prostor, lze umístění obrázku zase náhodně posunovat. Tohle zmiňuji ale jen na okraj, nepředpokládám, že by to na delší dobu pomohlo (ovšem válka se spamovacími roboty se dá chápat jako věčná, takže dočasné vítězství je možná prostě maximum, v co lze doufat). Už asi před rokem se v diskusi k původní zprávičce na Lupě objevil názor, že spíše než se snažit rozpoznat text v obrázku mohou spamovací roboty zkusit rozpoznat způsob, podle něhož je tento kód generován. A samozřejmě jsou tu i další problémy, např. zobrazení konkrétních překryvů by mohlo být ovlivněno třeba typem prohlížeče apod.

Co to ale zkusit naopak? V úvahách Alana Turinga o rozlišení člověka a stroje (mnohé z nich předcházely zveřejnění jeho nejslavnějšího článku Computing Machinery and Intelligence, v němž byl v roce 1950 navržen vlastní Turingův test ve formě imitační hry) upozorňoval britský matematik na rozdíly, které vyplývají z toho, že počítače jsou naopak dokonalejší než lidé.

Konkrétně Alan Turing ve svých textech zmiňuje dva aspekty:

  • rychlost provádění početních operací,
  • bezchybnost počítačových postupů.

Sčítat čísla rychleji než člověk dokázaly stroje už v době, která je z hlediska dnešního chápání dějin počítačů naprostou prehistorií (Pascalův stroj apod.). Z hlediska bezchybnosti výpočtu je pak člověku nadřazená i obyčejná kalkulačka.

A tak mě napadá: co to zkusit naopak? Co založit rozlišení regulérního uživatele od spamovacího robota naopak na tom, že člověk zvládne určitý úkol hůře? Obrázek pro rozpoznávání by mohl být pro člověka občas třeba záměrně nesrozumitelný, ovšem tak, aby ho pokročilá technologie OCR zvládla (nedokonalé OCR technologie by pak mohly být vyřazeny v dalším kole).

Jiný příklad: uživatel by musel vynásobit čtyřmístná čísla a testovala by se doba, kterou to zabralo (pro inzerenty by se pak navíc mohlo argumentovat, že to je také doba, po kterou bude uživatel sledovat reklamu). Příliš rychlá odpověď by byla kupodivu chybou.

BRAND24

Samozřejmě ani tohle nepředstavuje konečné řešení. Jak upozorňoval již Alan Turing, není problém počítač naprogramovat tak, aby nějaké výsledky oznamoval až se zpožděním, nebo dokonce občas „udělal chybu“ – tj. na výstupu se objevil jiný výsledek, než ke kterému došel algoritmus. Nicméně popsaný přístup se mi jeví stejně docela oživující a mohl by do souboje spamových a antispamových technologií vnést nové prvky. Z hlediska nezúčastněného pozorovatele by pak sledování tohoto souboje mohlo být ještě zábavnější než dnes, i když uživatelé by z těchto „inovací“ nutně radost mít nemuseli. Například pro geniální matematiky (či lidi extrémně bystrozraké) by se služba rázem stala nepoužitelnou. Ostatní by pak možná zase byli frustrováni tím, že se po nich vyžaduje splnění úkolu sestaveného tak, aby byl pro člověka nesplnitelný, a naštvaně by příslušnou webovou stránku opustili.

Uvedené příklady byly každopádně jen hříčky, nicméně by snad mohly existovat sofistikovanější varianty těchto postupů, které by lidského uživatele dokázaly odlišit právě podle toho, že člověk určité věci nedokáže nebo dokáže hůře než čím dál chytřejší programy. Udělat přednost z toho, že lidé jsou v řadě ohledů nedokonalí…

Byl pro vás článek přínosný?

Autor článku

Autor je redaktorem Sciencemag.cz.

Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).