Dost bylo spamu, zavádíme reCAPTCHA

05. 11. 2007 | 16:50
Přečteno 119956 krát
Spam, tedy nevyžádaná pošta, tvoří podle některých odhadů až 95 procent e-mailové komunikce. Spameři různými nabídkami zamořují také diskusní fóra, diskuse pod blogy Aktuálně.cz nevyjímaje. Válku se spamem zřejmě vyhrát nelze (viz. například tento článek na Lupě). Můžeme se ale pokusit aspoň se ctí zvítězit v jedné bitvě. Proto jsme na našich blozích sáhli k - podle našeho názoru - k jednomu z nejzajímavějších antispamových nástrojů. Jmenuje se reCAPTCHA.

Nic na světě ale není zadarmo, vždy je něco za něco. A proto si dovolujeme požádat Vás o pochopení a spolupráci: abychom mohli nevyžádáné reklamní odkazy (jako třeba v závěru diskuse pod tímto blogem) eliminovat, jsme nuceni Vám trochu "znepříjemnit život". Věříme, že to pochopíte a nezanevřete na nás.

Co je to CAPTCHA?
Pokud víte, co to CAPTCHA je, můžete následující odstavce přeskočit, nic nového se nedozvíte. Pokud ne, čtěte dál.

Představujete si spamera jako člověka, který sedí celé dny u počítače a donekonečna vkládá do diskusních fór nabídky modrých pilulek na potenci? Jestli ano, jste vedle. Spamer profesionál dnes používá automatizované programy, říkejme jim třeba boti (zkráceně ze slova robot). Tyto programy jsou schopné do diskusních fór vkládat stovky nebo tisíce příspěvků najednou. Takový nával spamu nemůže žádný lidský editor zvládnout, i kdyby celý den jen mazal a mazal a mazal nevyžádané příspěvky.

Jak ale rozeznat, kdy do fóra píše člověk a kdy spamerský bot? Toť editorova kardinální otázka. Metod je celá řada, ale žádná není stoprocentně účinná: Můžete povolit diskusi jen registrovaným uživatelům, ale boti se dnes umí už i registrovat. Můžete nasadit filtry, které zakazují příspěvky s určitými slovy (například tu zmiňovanou Viagru), ale i tomu se boti umí přizpůsobit (a použít třeba slovo V1agra, které má místo písmena i jedničku). Anebo můžete použít jednoduchý test na rozlišení člověka od stroje, který se označuje zkratkou CAPTCHA.

Princip CAPTCHA je jednoduchý a založený na tzv. Turingově testu (slovo CAPTCHA je zkratkou anglické fráze "completely automated public Turing test to tell computers and humans apart"). Tento termín byl poprvé použit v roce 2000 Luisem von Ahnem, Manuelem Blumem, Nicholasem Hopperem and Johnem Langfordem z americké Carnegie Mellon University. První CAPTCHA spatřila světlo světa jako ochrana na portálu Yahoo.

Pracuje s předpokladem, že stroj nedokáže to, co člověk - přečíst text z mírně deformovaného obrázku. Před přidáním jakéhokoli příspěvku do diskuse tak musí uživatel z obrázku opsat náhodně generovaný text. CAPTCHA má řadu vylepšených variant. Může po uživateli chtít doplnit odpověď na nějakou otázku (třeba "Jaký den následuje po pondělí?"), nebo doplnit výsledek nějaké početní operace.

Všechny druhy obrany proti komentářovému spamu mají zásadní nevýhodu: obtěžují řádné, lidské uživatele. Vždyť komu by se chtělo trávit při přidání komentáře deset vteřin (to je průměrný čas strávený vyplňováním CAPTCHA) opisováním nějakého rozostřeného obrázku? A tady přichází reCAPTCHA, která – aspoň podle našeho názoru – dává principu CAPTCHA nový rozměr a uživatelům novou motivaci.

reCAPTCHA digitalizuje knihy
Nápad je to jednoduchý, jak už ostatně skvělé nápady bývají. Proč v CAPTCHA zbůhdarma plýtvat lidskou inteligencí, když by se dala skvěle využít? To si zřejmě řekli tvůrci původní CAPTCHA na Fakultě počítačových věd americké Carnegie Mellon University a napojili CAPTCHA na programy sloužící k digitalizaci knih (pro archivní web Internet Archive). reCAPTCHA byla na světě.

reCAPTCHA zobrazuje vždy obrázek se dvěma slovy. Jedno už systém zná, druhé potřebuje rozeznat. Správným vyplněním reCAPTCHA uživatel pomůže přidat slovo do digitální databanky knih. Systém samozřejmě není až tak triviální, jak tady zjednodušeně popisujeme, existuje v něm řada mechanismů na odfiltrování lidských chyb. Výsledek je ale jasný: uživatelé na internetu každý den vyplní asi 60 milionů formulářů CAPTCHA. Pokud by se všechny zapojily do systému reCAPTCHA, znamenalo by to výrazné urychlení digitalizace literatury.

reCAPTCHA na blozích Aktuálně.cz
Z výše uvedených důvodů byla reCAPTCHA jedním z prvních nástrojů, který nás napadl, když jsme uvažovali o možných způsobech ochrany proti komentářovému spamu. Z našeho pohledu má zatím jednu zásadní nevýhodu: je v angličtině. Věříme ale, že čtenáři blogů Aktuálně.cz jazykovou bariéru snadno překonají. Koneckonců – ke správnému vyplnění reCAPTCHA není znalost angličtiny úplně nutná. Přeložili jsme všechny části reCAPTCHA, které přeložit šly, některé však bohužel přeložit nemůžeme. Tvůrci reCAPTCHA ale podle svých slov pracují na zprovoznění dalších jazykových mutací.

reCAPTCHA je zajímavá v tom, že obsahuje i zvukovou verzi. Můžete si ji zvolit kliknutím na symbol reproduktoru v okně reCAPTCHA. Místo obrázku vám pak systém přehraje zvukový záznam hlasu, který předčítá anglické číslovky. Tato čísla pak musíte vyplnit do políčka reCAPTCHA.

Pište nám prosím své postřehy z používání reCAPTCHA do (teď už chráněné) diskuse pod tímto článkem, nebo na e-mailovou adresu david.slizek@aktualne.cz. Máme s reCAPTCHA další plány. Pokud se na blozích osvědčí, budeme výrazně uvažovat o tom, jestli ji nenasadit i do dalších diskusí. Ale to možná trochu předbíhám.

David Slížek, Aktuálně.cz

Blogeři abecedně

A Aktuálně.cz Blog · Atapana Mnislav Zelený B Baar Vladimír · Babka Michael · Balabán Miloš · Bartoníček Radek · Bartošek Jan · Bartošová Ela · Bavlšíková Adéla · Bečková Kateřina · Bednář Vojtěch · Bělobrádek Pavel · Beránek Jan · Berkovcová Jana · Bernard Josef · Berwid-Buquoy Jan · Bielinová Petra · Bína Jiří · Bízková Rut · Blaha Stanislav · Blažek Kamil · Bobek Miroslav · Boehmová Tereza · Brenna Yngvar · Bureš Radim · Bůžek Lukáš · Byčkov Semjon C Cerman Ivo · Cizinsky Ludvik Č Černoušek Štěpán · Česko Chytré · Čipera Erik · Čtenářův blog D David Jiří · Davis Magdalena · Dienstbier Jiří · Dlabajová Martina · Dolejš Jiří · Dostál Ondřej · Dudák Vladislav · Duka Dominik · Duong Nguyen Thi Thuy · Dvořák Jan · Dvořák Petr · Dvořáková Vladimíra E Elfmark František F Fafejtová Klára · Fajt Jiří · Fendrych Martin · Fiala Petr · Fibigerová Markéta · Fischer Pavel G Gálik Stanislav · Gargulák Karel · Geislerová Ester · Girsa Václav · Glanc Tomáš · Goláň Tomáš · Gregorová Markéta · Groman Martin H Hájek Jan · Hála Martin · Halík Tomáš · Hamáček Jan · Hampl Václav · Hamplová Jana · Hapala Jiří · Hasenkopf Pavel · Hastík František · Havel Petr · Heller Šimon · Herman Daniel · Heroldová Martina · Hilšer Marek · Hladík Petr · Hlaváček Petr · Hlubučková Andrea · Hnízdil Jan · Hokovský Radko · Holásková Kamila · Holmerová Iva · Honzák Radkin · Horáková Adéla · Horký Petr · Hořejš Nikola · Hořejší Václav · Hrabálek Alexandr · Hradilková Jana · Hrstka Filip · Hřib Zdeněk · Hubálková Pavla · Hubinger Václav · Hülle Tomáš · Hušek Radek · Hvížďala Karel CH Charanzová Dita · Chlup Radek · Chromý Heřman · Chýla Jiří · Chytil Ondřej J Janda Jakub · Janeček Karel · Janeček Vít · Janečková Tereza · Janyška Petr · Jelínková Michaela Mlíčková · Jourová Věra · Just Jiří · Just Vladimír K Kaláb Tomáš · Kania Ondřej · Karfík Filip · Karlický Josef · Klan Petr · Klepárník  Vít · Klíma Pavel · Klíma Vít · Klimeš David · Klusoň Jan · Kňapová Kateřina · Kocián Antonín · Kohoutová Růžena · Koch Paul Vincent · Kolaja Marcel · Kolářová Marie · Kolínská Petra · Kolovratník Martin · Konrádová Kateřina · Kopeček Lubomír · Kostlán František · Kotišová Miluš · Koudelka Zdeněk · Koutská Petra Schwarz · Kozák Kryštof · Krafl Martin · Krása Václav · Kraus Ivan · Kroupová Johana · Křeček Stanislav · Kubr Milan · Kučera Josef · Kučera Vladimír · Kučerová Karolína · Kuchař Jakub · Kuchař Jaroslav · Kukal Petr · Kupka Martin · Kuras Benjamin · Kutílek Petr · Kužílek Oldřich · Kyselý Ondřej L Laně Tomáš · Linhart Zbyněk · Lipavský Jan · Lipold Jan · Lomová Olga M Máca Roman · Mahdalová Eva · Máchalová Jana · Maláčová Jana · Málková Ivana · Marvanová Hana · Mašát Martin · Měska Jiří · Metelka Ladislav · Michálek Libor · Miller Robert · Minář Mikuláš · Minařík Petr · Mittner Jiří · Moore Markéta · Mrkvička Jan · Müller Zdeněk · Mundier Milan · Münich Daniel N Nacher Patrik · Nachtigallová Mariana Novotná · Návrat Petr · Navrátil Marek · Němec Václav · Nerudová Danuše · Nerušil Josef · Niedermayer Luděk · Nosková Věra · Nouzová Pavlína · Nováčková Jana · Novák Aleš · Novotný Martin · Novotný Vít · Nožička Josef O Obluk Karel · Ocelák Radek · Oláh Michal · Ouhel Tomáš · Oujezdská Marie · Outlý Jan P Pačes Václav · Palik Michal · Paroubek Jiří · Pavel Petr · Pavelka Zdenko · Payne Jan · Payne Petr Pazdera · Pehe Jiří · Peksa Mikuláš · Pelda Zdeněk · Petrák Milán · Petříček Tomáš · Petříčková Iva · Pfeffer Vladimír · Pfeiler Tomáš · Pícha Vladimír · Pilip Ivan · Pitek Daniel · Pixová Michaela · Plaček Jan · Podzimek Jan · Pohled zblízka · Polách Kamil · Polčák Stanislav · Potměšilová Hana · Pražskej blog · Prouza Tomáš R Rabas Přemysl · Rajmon David · Rakušan Vít · Ráž Roman · Redakce Aktuálně.cz  · Reiner Martin · Richterová Olga · Robejšek Petr · Ruščák Andrej · Rydzyk Pavel · Rychlík Jan Ř Řebíková Barbora · Řeháčková Karolína Avivi · Říha Miloš · Řízek Tomáš S Sedlák Martin · Seitlová Jitka · Schneider Ondřej · Schwarzenberg Karel · Sirový Michal · Skalíková Lucie · Skuhrovec Jiří · Sládek Jan · Sláma Bohumil · Slavíček Jan · Slejška Zdeněk · Slimáková Margit · Smoljak David · Smutný Pavel · Sobíšek Pavel · Sokačová Linda · Soukal Josef · Soukup Ondřej · Sportbar · Staněk Antonín · Stanoev Martin · Stehlík Michal · Stehlíková Džamila · Stránský Martin Jan · Strmiska Jan · Stulík David · Svárovský Martin · Svoboda Cyril · Svoboda Jiří · Svoboda Pavel · Sýkora Filip · Syrovátka Jonáš Š Šebek Tomáš · Šefrnová Tereza · Šimáček Martin · Šimková Karolína · Šindelář Pavel · Šípová Adéla · Šlechtová Karla · Šmíd Milan · Šojdrová Michaela · Šoltés Michal · Špalková Veronika Krátká · Špinka Filip · Špok Dalibor · Šteffl Ondřej · Štěpán Martin · Štěpánek Pavel · Štern Ivan · Štern Jan · Štětka Václav · Štrobl Daniel T T. Tereza · Táborský Adam · Tejkalová N. Alice · Telička Pavel · Titěrová Kristýna · Tolasz Radim · Tománek Jan · Tomčiak Boris · Tomek Prokop · Tomský Alexander · Trantina Pavel · Tůma Petr · Turek Jan U Uhl Petr · Urban Jan V Vacková Pavla · Václav Petr · Vaculík Jan · Vácha Marek · Valdrová Jana · Vančurová Martina · Vavruška Dalibor · Věchet Martin Geronimo · Vendlová Veronika · Vhrsti · Vích Tomáš · Vlach Robert · Vodrážka Mirek · Vojtěch Adam · Vojtková Michaela Trtíková · Vostrá Denisa · Výborný Marek · Vyskočil František W Walek Czeslaw · Wichterle Kamil · Wirthová Jitka · Witassek Libor Z Zádrapa Lukáš · Zajíček Zdeněk · Zaorálek Lubomír · Závodský Ondřej · Zelený Milan · Zeman Václav · Zima Tomáš · Zlatuška Jiří · Zouzalík Marek Ž Žák Miroslav · Žák Václav · Žantovský Michael · Žantovský Petr Ostatní Dlouhodobě neaktivní blogy