Spam telah menjadi musuh bersama di Internet mulai dari e-mail, IRC, IM, forum, wiki, hingga blog. Untuk mendukung aktivitas ilegalnya, para spammer menciptakan mesin-mesin pengirim spam bernama spambot yang bekerja 24 jam sehari, mengirimkan pesan-pesan sampah di semua layanan Internet. Salah satu upaya meminimalisasi penyebaran spam di WWW diciptakanlah CAPTCHA, sebuah metode untuk membedakan manusia dengan spambot.

Di akhir form pendaftaran account e-mail baru, terletak persis di atas tombol submit, kini jamak terdapat tes sederhana, yakni memasukkan rangkaian huruf, angka atau kombinasi keduanya, yang tertera pada sebuah image. Bagi manusia, tes semacam ini mungkin sangat mudah, tapi tidak bagi komputer (baca: spambot).

Metode pengujian yang meminta pengguna mengetikkan objek yang ada pada image inilah yang disebut dengan CAPTCHA (Completely Automated Public Turing Test to Tell Computers and Humans Apart), sebuah sebuah tipe HIP (Human Interaction Proof) yang paling banyak digunakan di WWW saat ini.

Sebagian besar CAPTCHA menggunakan image berisi rangkaian huruf dan angka yang dicetak tak beraturan (terdistorsi) sehingga tidak dapat dikenali oleh spambot yang dilengkapi dengan teknologi OCR (Optical Character Recognizer) sekalipun. Jika teks yang diketik sesuai dengan objek yang tertera pada image, berarti Anda manusia!

CAPTCHA & Turing Test

Meski berbalik arah, ide dasar CAPTCHA sejalan dengan Turing Test. Alan Turing, ilmuwan komputer berkebangsaan Inggris, pada 1950 pernah mengajukan pengujian, apakah komputer bisa berpikir seperti manusia. Pada Turing Test, seorang penguji yang terisolasi mengajukan pertanyaan kepada dua panelis: manusia dan komputer.

Dari jawaban kedua panelis, si penguji harus menentukan dengan pasti mana jawaban yang diberikan manusia, dan mana yang di-generate oleh komputer. Bila si penguji tidak bisa membedakan “dengan pasti” mana manusia dan mana komputer, maka komputer tersebut dinyatakan lulus dari Turing Test.

Dari uraian di atas, kita bisa melihat bahwa dalam Turing Test yang menjadi penguji adalah manusia, dan objek yang diuji adalah manusia dan komputer. Bila penguji “tidak bisa” membedakan dengan pasti mana manusia dan mana komputer, maka komputer dinyatakan lulus ujian.

Dalam CAPTCHA, yang terjadi adalah kebalikannya. Yang bertindak sebagai penguji adalah komputer, sementara objek yang diuji tetap manusia dan komputer. Bila penguji “bisa” membedakan dengan pasti mana manusia dan mana komputer, maka manusia dinyatakan lulus ujian.

Pareidolia & CAPTCHA

Meski tidak semuanya, sebagian besar CAPTCHA menggunakan tes visual. Komputer kesulitan memproses data visual, sementara tidak dengan manusia. Manusia dapat melihat gambar dan menemukan sebuah pola di dalamnya secara lebih cepat dan lebih mudah dibandingkan komputer.

Pikiran manusia tidak jarang menangkap sebuah pola atau bentuk kendati hal tersebut tidak ada. Misalnya, kita sering “melihat” bentuk wajah atau hewan pada gumpalan awan atau permukaan bulan (ingat acara TV yang sering mereka-reka bentuk dan wajah “setan” dari bayangan di dinding gua).

Otak manusia akan mengasosiasikan informasi acak yang tertangkap oleh mata tersebut menjadi sebuah pola atau bentuk. Dalam psikologi, fenomena ini dikenal dengan istilah pareidolia. Meski demikian, tidak semua CAPTCHA mengandalkan tes visual ini. Beberapa tipe CAPTCHA menggunakan suara atau audio.

Desain CAPTCHA

Langkah pertama dalam mendesain CAPTCHA adalah melihat perbedaan antara manusia dan komputer dalam memproses informasi. Komputer mengikuti serangkaian instruksi. Komputer tidak dapat menjangkau sesuatu yang berada di luar dunianya (dunia instruksi).

Ketika membuat sebuah tes, seorang desainer CAPTCHA harus memperhatikan hal ini. Sebagai contoh, membuat sebuah program yang dapat membaca metadata (informasi pada web yang terbaca oleh komputer, namun tidak oleh manusia) adalah yang mudah.

Jadi, tidak ada gunanya membuat CAPTCHA visual bila mencantumkan solusinya pada metadata image yang digunakan. Sama kurang bijaknya dengan membuat CAPTCHA tanpa mendistorsi huruf dan angka. Beberapa spambot dilengkapi dengan OCR yang mampu membaca dan mengenali huruf dan angka pada image.

Satu-satunya cara dengan membuat CAPTCHA adalah mendefinisikan image dan solusinya dalam sebuah database. Menurut peneliti dari Microsoft Research, 80% CAPTCHA dapat dipecahkan oleh manusia, sementara komputer hanya mampu memecahkan 1 dari 100 tes (1%).

Distorsi pada huruf dan angka digunakan untuk membingungkan spambot dengan OCR. Beberapa huruf dan angka diberi bentuk yang tidak lazim (seperti melihat tulisan dari balik kaca yang meleleh). Sebagian memecah bentuk huruf dan angka seperti menuliskannya pada kisi-kisi jendela.

Sebagian lagi menggunakan warna yang berbeda, atau menambahkan elemen lain seperti titik atau bercak yang tidak beraturan. Itu semua dilakukan dengan satu tujuan yang sama: mempersulit spambot membaca rangkaian huruf dan angka yang tertera pada image.

sumber: Tabloid PCMild

Togap Tartius

Freelance web developer. Mantan guru komputer. Suka membaca dan berpikir. Hobi mengutak-atik komputer baik software maupun hardware.

More PostsWebsite

Follow Me:
TwitterFacebookLinkedInGoogle Plus