Hej, czy Ty właściwie jesteś człowiekiem? Czy może robotem, który chce zalać naszą stronę toną spamu albo ją przeciążyć? W wypadku artykułu blogowego to bez znaczenia (no poza tym, że wolimy, aby czytały nas samoświadome istoty biologiczne, ale to kwestia ambicji), ale już przy dodawaniu komentarzy, rejestracji konta albo korzystaniu z zasobów strony rzecz jest fundamentalna. A że prób masowych ataków nie brak, już dawno wymyślono rozwiązanie. To właśnie CAPTCHA. W tym artykule zawarliśmy najważniejsze o niej informacje.
Udowodnij, kim jesteś
CAPTCHA to prosty test pozwalający odróżnić człowieka od bota. Nazwa jest skrótem od słów „Completely Automated Public Turing test to tell Computers and Humans Apart”. Czyli „w pełni zautomatyzowany publiczny test Turinga do odróżniania komputerów od ludzi. Pierwsza wersja pojawiła się w 1997 i choć ewoluowała, to jej założenia pozostają nadal takie same. Ma w szybki (kilka-kilkanaście sekund) sposób sprawdzić, kto jest po drugiej stronie i zapobiec nieautoryzowanemu dostępowi algorytmów podających się za użytkowników. Ze względu na to, że jest przeprowadzanym przez komputer testem „prawdziwości” człowieka, CAPTCHA bywa nazywana odwrotnym testem Turinga. Przypomnimy, że oryginalny test wymyślony przez wielkiego brytyjskiego matematyka Alana Turinga miał na celu odróżnienie maszyny od człowieka w dialogu lub ewentualne potwierdzenie samoświadomości maszyny.
CAPTCHA to bardzo proste narzędzie
Ma powstrzymać przede wszystkim boty niskiej jakości. To nie test na empatię z książki „Czy androidy śnią o elektrycznych owcach” Philipa Dicka (lub jej luźnej ekranizacji pod bardziej chwytliwym tytułem „Bladerunner”). Użytkownik musi przepisać zniekształconą graficznie treść albo wybrać odpowiedni obrazek. Takie zadania dla człowieka są trywialne, za to dla robota stanowią nie lada wyzwanie. Co prawda nowoczesne uczące się algorytmy zwane szumnie Sztucznymi Inteligencjami oraz sieci neuronowe z funkcjami rozpoznawania obrazu radzą już sobie z nimi całkiem nieźle, ale jak na razie są to zbyt ciężkie programy, aby były powszechne. Większość internetowego spamu i problemów roznoszona jest przez proste programy, które nie mają szans przedrzeć się przez zaporę.
Dlaczego warto wdrożyć CAPTCHA na swojej stronie?
Po pierwsze podnosisz bezpieczeństwo serwisu i danych. Owszem, to upierdliwe i irytuje ludzi, jednak na razie brak lepszych alternatyw. Oszczędzasz w ten sposób mnóstwo czasu na ręczne filtrowanie spamu. Nie ma też zagrożenia zalania sklepu fałszywymi zamówieniami albo awarii serwisu związanej z przeciążeniem. To także wiarygodność danych – wiesz, że zachowania, które obserwujesz na stronie to aktywności ludzi, a nie botów.
Najpopularniejsze rodzaje
Przede wszystkim wyświetlenie ciągu cyfr lub znaków o znacznym zniekształceniu. Zadaniem użytkownika jest ich przepisanie. Co ciekawe ten mechanizm bywa używany pożytecznie jako pomoc przy digitalizacji książek. Wtedy wykorzystywane są niewyraźne fragmenty skanowanych książek, z którymi maszyna ma problem. Typowym tekstowym testem jest też rozwiązanie prostego działania matematycznego lub odpowiedź na banalne pytanie.
Inne popularne rozwiązanie to wybranie obrazków przedstawiających dany przedmiot. To jednak nierzadko bywa mylące i wymaga kilku testów z rzędu. Ciekawy jest mechanizm przycisku lub pola do zaznaczenia z napisem „nie jestem robotem”. Wbrew pozorom to dość złożona metoda, która śledzi ruch kursora charakterystyczny dla człowieka.
Najlepszym sposobem na CAPTCHA jest użycie… ludzi
Na koniec ciekawostka. Zamiast tworzyć zaawansowane programy do łamania testów CAPTCHA, najczęściej wykorzystuje się nieświadomych użytkowników. Testy są wyświetlane na popularnych stronach (zazwyczaj pornograficznych), gdzie użytkownicy szybko je przeklikują, nieświadomie otwierając botom o niecnych celach dostęp na stronach źródłowych. Nierzadko też płaci się za to ubogim mieszkańcom krajów rozwijających się. Na takie metody nie ma rady, na szczęście to nadal margines.
Zaprojektujemy dla Ciebie nowoczesną stronę internetową – zapytaj o ofertę!