Apa Itu CAPTCHA dan Mengapa Memblokir Tiket Konser Anda?

5

Anda siap membeli tiket untuk pertunjukan lokal itu. Gerobaknya penuh. Detail pembayaran dimasukkan. Kemudian, tembok itu naik.

Itu adalah CAPTCHA.

Singkatan dari Tes Turing Publik yang Sepenuhnya Otomatis untuk Membedakan Komputer dan Manusia. Kedengarannya seperti sesuatu yang keluar dari film thriller fiksi ilmiah, tapi itu hanyalah penjaga digital. Ujiannya tidak sulit bagi manusia. Jika Anda adalah orang sungguhan, Anda akan melewatinya dengan mudah. Untuk komputer? Ini hampir mustahil.

Tujuannya sederhana: mengidentifikasi bot jahat sebelum mereka mengacaukan data atau pembelian Anda.

Tes ini juga dikenal sebagai Bukti Interaksi Manusia (HIP). Anda pernah melihatnya di mana-mana. Versi klasik menunjukkan serangkaian huruf yang terdistorsi dan buram. Anda mengetiknya. Jika Anda cocok dengan gambarnya, Anda lulus.

Sesederhana itu. Atau dulunya begitu.

Evolusi Tantangan Berbasis Gambar

CAPTCHA berbasis teks sudah semakin ketinggalan zaman. Bot semakin pintar. Kini, tantangan pengenalan gambar adalah standarnya.

Alih-alih mengetik huruf, Anda mendapatkan kotak foto. Jalan raya. Jalan-jalan kota. Taman. Anda diminta untuk memilih gambar yang berisi objek tertentu.

  • Lampu jalan
  • Hidran kebakaran
  • Sepeda
  • Penyeberangan

Pilih foto yang tepat. Lulus ujian.

CAPTCHA berbasis gambar jauh lebih sulit diuraikan oleh bot dibandingkan yang berbasis teks. Gambar yang terdistorsi atau pemandangan buram menggagalkan teknik pengenalan bot. Membuat tes yang hanya bisa diselesaikan oleh manusia membutuhkan desain yang cermat.

Mengapa Melawan Bot?

Mengapa membuat tes untuk memisahkan manusia dari mesin?

Karena orang mencoba mempermainkan sistem. Mereka mengeksploitasi kelemahan komputer yang menjalankan situs tersebut.

Orang-orang ini adalah minoritas pengguna internet. Namun tindakan mereka berdampak pada jutaan orang.

Pertimbangkan layanan email gratis. Tanpa CAPTCHA, permintaan akun otomatis mungkin akan dibombardir. Program otomatis membuat ribuan akun dalam hitungan detik. Mengapa? Untuk mengirim email spam ke jutaan orang nanti.

CAPTCHA menghentikan ini. Ini mengidentifikasi pengguna mana yang merupakan manusia nyata. Dan mana yang hanya program komputer.

Setiap Kegagalan Adalah Terobosan AI

Inilah twist yang menarik.

Orang-orang yang merancang tes ini tidak selalu kecewa ketika gagal.

Agar tes CAPTCHA gagal, seseorang harus menemukan cara untuk mengajari komputer cara menyelesaikannya.

Setiap kali bot mengalahkan CAPTCHA, ini menunjukkan kemajuan dalam kecerdasan buatan.

Ironinya sangat jelas. Aplikasi CAPTCHA menghasilkan tes yang bahkan itu tidak dapat diselesaikan tanpa mengetahui jawabannya. Itu bergantung pada kognisi manusia sebagai parameter keamanan.

Kita sedang dalam perlombaan senjata.

Bot menjadi lebih pintar. Ujiannya semakin sulit. Pengguna menjadi kesal.

Namun sampai teknologi ini bisa menyamai manusia, kita akan terus menyalakan lampu lalu lintas.

Seluruh sistem menelusuri kembali ke Tes Turing. Alan Turing, orang yang pada dasarnya menemukan komputasi modern, menginginkan cara untuk memeriksa apakah mesin dapat meniru pemikiran manusia. Pengaturannya sederhana. Seorang interogator berbicara dengan dua peserta yang tersembunyi. Salah satunya adalah seseorang. Salah satunya adalah komputer. Jika interogator tidak dapat membedakan mana yang mana, mesinlah yang menang.

CAPTCHA membalikkan logika ini. Tujuannya adalah untuk melakukan pengujian yang dapat dilalui manusia sementara bot gagal secara spektakuler. Itu juga harus dinamis. Jika setiap pengguna melihat gambar statis yang sama dengan huruf yang sama, pelaku spam akan memecahkannya dalam hitungan menit. Mereka tinggal menulis skrip untuk mengetikkan jawabannya secara otomatis.

Sebagian besar tes ini bersifat visual. Komputer masih kikuk dalam memproses gambar dibandingkan kita. Manusia langsung mengenali pola. Kami bahkan terkadang berhalusinasi pada mereka. Itu pareidolia. Anda melihat wajah di awan atau sosok di Mars. Otak Anda memaksa suara acak menjadi bentuk yang dapat dikenali. Mesin tidak memiliki lompatan intuitif. Mereka berjuang dengan ambiguitas.

Namun hanya mengandalkan penglihatan saja berisiko. Ini mengasingkan pengguna tunanetra. Jadi kami punya alternatif. Audio CAPTCHA adalah hal yang umum. Anda mendengarkan serangkaian angka atau huruf. Suaranya mungkin terdistorsi. Seringkali ada latar belakang yang statis. Ini memblokir perangkat lunak pengenalan suara.

Lalu ada CAPTCHA kontekstual. Ini menyajikan bagian teks pendek. Pengguna harus menafsirkan maknanya. Algoritma dapat mengambil kata kunci. Mereka gagal dalam pemahaman sebenarnya. Mereka tidak mengerti nuansanya.

Terkadang ujiannya gagal. Gambarnya sangat menyesatkan sehingga manusia pun tidak bisa membacanya. Itu sebabnya Anda mendapat tombol “segarkan”. Anda mencoba lagi. Mudah-mudahan upaya kedua ini tidak sia-sia.

Siapa yang Menggunakan CAPTCHA

Bagian selanjutnya akan membahas situs mana yang benar-benar menerapkan pemeriksaan ini untuk memverifikasi bahwa Anda bukan bot.

Integritas Polling dan Penyalahgunaan Bot

Jajak pendapat Slashdot tahun 1999 tentang program pascasarjana ilmu komputer terbaik adalah sebuah kisah peringatan. Ini menunjukkan dengan tepat apa yang terjadi jika Anda membiarkan survei terbuka untuk skrip otomatis. Siswa di Carnegie Mellon dan MIT membuat bot untuk membanjiri sekolah masing-masing dengan ribuan suara. Sementara itu, universitas lain hanya memiliki beberapa ratus orang.

Jika kode bisa memberikan suara, hasilnya sampah.

Inilah mengapa verifikasi penting. Tanpa filter, jajak pendapat online hanyalah kontes popularitas bagi siapa pun yang memiliki skrip tercepat. CAPTCHA menghentikan pemrogram untuk mempermainkan sistem.

Memblokir Bot Spam saat Pendaftaran

Pikirkan tentang terakhir kali Anda mendaftar ke Hotmail, Yahoo! Surat, atau Gmail. Anda mengetikkan beberapa detail pribadi. Layanan tidak memeriksa apakah itu asli. Itu tidak menelepon Anda atau memverifikasi identitas Anda.

Itu hanya ingin memastikan bot tidak mencoba membuat ratusan akun spam dalam hitungan detik.

Penyedia email gratis menggunakan CAPTCHA untuk menghentikan pelaku spam. Tanpanya, kotak masuk Anda akan tersumbat oleh sampah dari akun palsu bahkan sebelum Anda selesai menyiapkan akun Anda.

Scalper Tiket Pertarungan

Broker tiket seperti TicketMaster juga mengandalkan filter ini. Mengapa? Untuk menghentikan calo.

Scalper menggunakan bot untuk membeli ribuan tiket acara besar dalam hitungan detik. Penggemar yang sah akan dikurung. Acara langsung terjual habis. Scalper kemudian menjual kembali tiket tersebut dengan harga melambung.

CAPTCHA tidak berhenti melakukan scalping sepenuhnya. Hal ini hanya membuat pembelian otomatis skala besar menjadi jauh lebih sulit. Ini memperlambat bot. Ini memberi manusia nyata kesempatan untuk bertarung.

Menjaga Papan Pesan Tetap Bersih

Halaman web dengan formulir kontak atau papan pesan menghadapi ancaman yang sama. Longsoran spam dapat menenggelamkan percakapan sebenarnya.

Program CAPTCHA menyaring kebisingan. Mereka menghentikan bot agar tidak secara otomatis memposting pesan kasar atau melecehkan administrator. Ini bukanlah perisai sempurna melawan troll manusia yang gigih. Tapi itu menghentikan banjir otomatis.

Tugas Ganda reCAPTCHA

CAPTCHA standar meminta Anda mengetik huruf dan angka yang terdistorsi. Namun pembuat konten menemukan cara untuk memberi nilai tambah pada tugas tersebut. Mereka menggunakannya untuk mendigitalkan buku.

Ini adalah reCAPTCHA. Ini memanfaatkan tanggapan Anda untuk memverifikasi kertas yang dipindai. Komputer kesulitan membaca kata-kata dari pindaian digital. Manusia pandai dalam hal itu.

Inilah prosesnya:

  • Administrator memindai buku.
  • Program mengambil dua kata dari gambar.
  • Satu kata sudah dikenali.
  • Jika Anda mengetiknya dengan benar, sistem menganggap kata kedua Anda juga benar.
  • Kata kedua itu dimasukkan ke dalam kumpulan untuk pengguna lain.
  • Semakin banyak orang yang mengetiknya, sistem memverifikasi kata tersebut dengan kepastian yang tinggi.

Kedengarannya membosankan. Tapi Anda melakukan dua pekerjaan sekaligus. Anda membuktikan bahwa Anda adalah manusia. Anda juga membantu mesin pencari mengindeks dokumen yang dipindai.

Membuat Verifikasi

Selanjutnya, kita akan melihat proses pembuatan CAPTCHA.

Mendesain untuk Kesenjangan Antara Manusia dan Mesin

Seluruh premis CAPTCHA bertumpu pada keterputusan mendasar. Manusia memahami konteks. Instruksi proses mesin. Jika data berada di luar jalur algoritmik yang kaku, bot akan tersandung. Itu tidak berimprovisasi. Itu gagal.

Seorang desainer harus memanfaatkan kelemahan ini. Pertimbangkan metadata. Itu tidak terlihat oleh Anda. Itu dapat dibaca oleh skrip. Jika Anda membuat tantangan visual yang jawabannya disembunyikan di metadata file gambar, Anda sudah kalah. Skrip sederhana dapat menghapus data tersebut dan mengungkapkan solusinya secara instan.

Distorsi tidak dapat dinegosiasikan. Teks biasa adalah undangan terbuka untuk perangkat lunak pengenalan karakter optik (OCR). Program-program itu memindai bentuk. Mereka mengenali garis lurus dan kurva. Jika karakter Anda tidak melengkung, miring, atau kabur, bot akan membacanya lebih cepat daripada kemampuan manusia untuk berkedip.

Manusia seharusnya memiliki tingkat keberhasilan 80 persen. Mesin seharusnya berada pada 0,01 persen.

Patokan ini berasal dari pakar Microsoft Research Kumar Chellapilla dan Patrice Simard. Mereka tidak sekedar menebak. Mereka menghitung ambang batas antara kegunaan dan keamanan.

Ada dua cara utama untuk menghasilkan tantangan-tantangan ini. Yang pertama adalah statis. Anda telah menentukan terlebih dahulu gambar dan solusinya. Anda memerlukan database yang besar untuk mendukung hal ini. Mengapa? Karena spammer yang mencuri database tersebut dapat melancarkan serangan brute force. Mereka hanya menelusuri setiap kemungkinan jawaban sampai ada satu jawaban yang tepat. Agar tetap aman, Anda memerlukan database dengan lebih dari 10.000 CAPTCHA unik. Itu berat. Itu berisiko.

Cara kedua adalah dinamis. Pengacakan. Sistem menghasilkan rangkaian huruf dan angka unik setiap saat. Anda tidak akan pernah melihat urutan yang sama dua kali. Ini mematikan pendekatan brute force. Kemungkinan bot menebak string yang panjang dan acak sangatlah rendah. Semakin panjang talinya, semakin aman Anda.

Tantangan Visual

Bagaimana Anda mendistorsi teks? Ada beberapa trik dalam toolkit ini.

Beberapa sistem meregangkan dan membengkokkan huruf hingga terlihat seperti dilihat melalui kaca yang meleleh. Ini memuakkan. Ini juga efektif. Yang lain melapisi kisi-kisi batang yang digaris silang untuk mematahkan bentuk huruf. Anda mungkin melihat bidang titik-titik acak atau skema warna bentrok yang dirancang untuk membingungkan mata dan algoritme. Tujuannya selalu sama: menciptakan kebisingan yang dapat disaring oleh manusia tetapi tidak dapat diurai oleh mesin.

Pengenalan pola adalah cara lain. Daripada hanya membaca teks, Anda mungkin diminta menyelesaikan suatu urutan. Serangkaian bentuk muncul. Yang mana yang berikutnya? Ini menguji logika, bukan hanya visi. Tapi inilah masalahnya. Tidak semua orang pandai dalam penalaran abstrak. Jika teka-teki Anda terlalu sulit, tingkat keberhasilan manusia Anda akan turun hingga di bawah angka kritis 80 persen. Anda mulai mengunci pengguna sebenarnya. Anda menukar keamanan dengan aksesibilitas. Ini adalah perjalanan di atas tali.

Alternatif Audio

Bisakah kamu mendengarku sekarang?

CAPTCHA yang dapat didengar mengikuti logika yang mirip dengan logika visual, tetapi dengan media yang berbeda. Anda mendengarkan karakter yang diucapkan melalui suara sintesis atau rekaman manusia nyata.

Pendekatan statis memerlukan perekaman awal setiap kemungkinan kombinasi. Itu adalah perpustakaan audio yang sangat besar. Pendekatan dinamis lebih cerdas. Ini mencatat fonem atau karakter individual dan merangkainya bersama-sama secara real-time. Lebih cepat untuk menghasilkan. Lebih sulit untuk mengindeks.

Tapi audionya tidak sempurna. Kebisingan latar belakang. Aksen. Artefak sintesis. Ini menimbulkan lapisan gesekan baru. Apakah ini menyelesaikan masalah? Kadang-kadang. Bagi sebagian pengguna, ini adalah penyelamat. Bagi yang lain, ini adalah teka-teki yang tidak dapat mereka pecahkan.

Perlombaan Senjata Berlanjut

Kami telah melihat bagaimana mereka dibangun. Langkah selanjutnya adalah menyaksikan mereka jatuh. Komputer menjadi lebih baik dalam hal ini. Mereka belajar untuk melihat distorsi tersebut.

Rintangan sebenarnya bukanlah menguraikan teks. Manusia seharusnya mencapai tingkat akurasi 80 persen dengan mudah. Mimpi buruk sebenarnya adalah mengajarkan mesin untuk memproses informasi seperti yang dilakukan otak manusia. Kebanyakan penyerang tidak mau repot-repot mencoba membuat komputer menjadi lebih pintar. Mereka hanya menghilangkan kompleksitas tantangannya.

Bayangkan formulir web standar yang dilindungi oleh CAPTCHA yang menampilkan kata-kata bahasa Inggris. Font menjadi bengkok. Huruf meregang dan membengkok dalam pola yang kacau. Suara latar acak muncul di belakang teks. Sepertinya omong kosong. Ini dirancang untuk menjadi seperti itu.

Seorang programmer yang memecahkan masalah ini tidak dimulai dengan AI. Mereka mulai dengan suatu algoritma. Ini hanyalah serangkaian instruksi. Langkah pertama mungkin mengubah gambar menjadi skala abu-abu. Warna adalah lapisan kebingungan. Hapus itu. Sekarang Anda memiliki derau hitam dan putih.

Selanjutnya, kode memindai pola. Ini membandingkan bentuk dengan huruf yang dikenal. Jika kecocokannya lemah, algoritme akan melakukan referensi silang sebagian huruf tersebut dengan kamus kata-kata bahasa Inggris. Ia menebak sisanya. Logika brute force ini berhasil. Terkadang gagal. Namun jika cukup sering berhasil, pengirim spam akan menang.

Mengalahkan Tantangan Gimpy

Apa yang terjadi jika CAPTCHA semakin ketat? Ambil versi Gimpy. Ini menampilkan sepuluh kata. Font melengkung. Latar belakang tidak beraturan. Kata-katanya tumpang tindih. Anda harus mengetikkan tiga yang benar untuk melanjutkan.

Kedengarannya solid. Sampai Anda melihat penelitiannya. Greg Mori dan Jitendra Malik menerbitkan makalah tentang cara memecahkannya. Trik mereka? Sistem menggunakan kata-kata nyata. Bukan string acak. Ini adalah kelemahan yang sangat besar.

Mori dan Malik membangun algoritma yang berfokus pada awal dan akhir rangkaian kata. Mereka menggunakan kamus 500 kata yang dikenal dari sistem Gimpy. Mereka menjalankan tes. Algoritmenya mengidentifikasi kata dengan benar sebanyak 33 persen.

Angka tersebut nampaknya rendah. Bukan itu. Spammer tidak membutuhkan kesempurnaan. Mereka membutuhkan volume. Jika bot mereka berjalan ratusan kali per menit, tingkat keberhasilan satu dari tiga akan menguntungkan. Matematikanya berhasil.

Telinga Elektronik

Audio CAPTCHA juga tidak aman. Pada musim semi tahun 2008 terdapat laporan mengenai peretas yang menyerang sistem audio Google. Ternyata metodenya sangat sederhana.

Peretas menciptakan perpustakaan suara. Setiap karakter dalam database memerlukan kecocokan sonik. Distorsi mungkin berarti banyak suara untuk satu huruf. Setelah dikategorikan, mereka menggunakan varian perangkat lunak pengenalan suara. Bot itu mendengarkan. Itu ditafsirkan. Itu mengetik.

CAPTCHA dan Kecerdasan Buatan

Paradoks AI: Mengapa Melanggar Keamanan Membantu Mesin Belajar

Luis von Ahn, profesor Carnegie Mellon yang membantu menciptakan CAPTCHA, melihat sesuatu secara berbeda dari rata-rata sysadmin. Dalam ceramahnya pada tahun 2006, ia menggambarkan pertarungan antara manusia dan bot bukan sebagai perang, namun sebagai tempat pelatihan kecerdasan buatan. Logikanya dingin tapi masuk akal. Pelaku spam dan peretas terobsesi untuk melanggar CAPTCHA karena pengujian tersebut menghalangi tujuan mereka. Mereka menginvestasikan waktu dan energi untuk mengalahkan mereka.

Ketika mereka berhasil, mesin menjadi lebih pintar.

Setiap kali seorang peneliti menemukan cara untuk mengajari komputer memecahkan teka-teki teks yang terdistorsi, kami mengambil langkah menuju AI yang sebenarnya. Bagi von Ahn, kekalahan pada sistem keamanan adalah kemenangan bagi pembelajaran mesin.

Namun administrator web menganggap filosofi ini kurang menarik. Mereka masih harus menghadapi dampak buruknya. Bot spam dan skrip jahat tidak peduli dengan implikasi filosofis dari kekalahan mereka. Mereka hanya ingin ikut serta. Kenyataannya adalah beberapa sistem CAPTCHA sudah tidak lagi digunakan secara efektif. Pengelola polling online atau website sederhana perlu mengetahui alat mana yang masih dapat diandalkan. Mereka harus terus mendapatkan informasi terbaru. Jika satu sistem gagal, kodenya harus dihilangkan. Itu perlu diganti.

Desainer berjalan di atas tali. Ketika komputer menjadi lebih canggih, tes harus berkembang. Tapi ada batasnya. Jika ujian menjadi begitu sulit sehingga manusia tidak dapat lagi menyelesaikannya dengan tingkat keberhasilan yang layak, sistem akan gagal. Ini bukan hanya tentang membengkokkan teks lagi. Jawabannya mungkin persamaan matematika. Atau menjawab pertanyaan tentang cerita pendek.

Berapa banyak orang yang mau repot-repot mengirimkan balasan ke papan pesan jika mereka harus menyelesaikan persamaan kuadrat terlebih dahulu?

Minat pengguna menurun ketika gesekan menjadi terlalu tinggi. Keseimbangannya rapuh.

Evolusi Verifikasi Tak Terlihat

Google mengubah permainan ini pada tahun 2014. Perusahaan, yang mengakuisisi reCAPTCHA pada tahun 2009, mulai menghapuskan tantangan gambar atau teks klasik secara bertahap. Mereka memperkenalkan “Tanpa CAPTCHA.” Sederhana saja. Satu kotak dengan tulisan “Saya bukan robot”.

Pengguna mengklik. Dunia terus berjalan.

Namun pada tahun 2017, hal itu pun sudah terlalu jelas. Google mengumumkan penghapusan Tanpa CAPTCHA. Pendekatan baru ini mengandalkan analisis perilaku. Itu melihat bagaimana Anda menggerakkan penunjuk tetikus Anda. Ini menganalisis kebiasaan browsing Anda. Ini dikenal sebagai reCAPTCHA Tak Terlihat.

Jika sistem menandai Anda sebagai orang yang mencurigakan—mungkin Anda adalah robot—Anda terpaksa menyelesaikan salah satu tantangan standar yang lama. Itu adalah kemunduran. Sebuah langkah verifikasi. Tujuannya adalah untuk membuat pengguna baik tetap bergerak sambil menangkap pelaku jahat tanpa mereka sadari.

Memperjelas Terminologi dan Kebutuhan

Seringkali terdapat kebingungan tentang siapa yang memiliki apa dan mengapa cek ini ada.

Apakah CAPTCHA dibuat oleh Google?
Tidak. CAPTCHA adalah teknologi umum yang digunakan di seluruh web untuk memastikan manusia, bukan bot otomatis, berinteraksi dengan situs. ReCAPTCHA Google hanyalah salah satu implementasi dari konsep yang lebih luas ini.

Apa kepanjangan dari CAPTCHA?
Itu singkatan dari “Tes Turing Publik yang Sepenuhnya Otomatis untuk membedakan Komputer dan Manusia.” Ini adalah tes respons tantangan yang dibangun ke dalam komputasi untuk memverifikasi identitas pengguna.

Mengapa CAPTCHA diperlukan?
Ini mencegah program otomatis mengirimkan informasi palsu. Ini menghentikan pelaku spam iklan untuk mempromosikan penipuan di halaman web. Itu membuat internet tidak dibanjiri oleh kebisingan.

Ke Mana Harus Pergi Dari Sini

Pemandangannya terus berubah. Apa yang berhasil kemarin mungkin rusak hari ini.

Bagi mereka yang menggali lebih dalam, topik terkait mencakup cara kerja pemecah kode, mekanisme spam, dan fungsi spyware. Memahami enkripsi dan virus komputer memberikan konteks mengapa keamanan penting. Logika yang mendasari bagaimana mesin logis menghasilkan angka acak juga terkait dengan keacakan yang diperlukan untuk tantangan yang aman.

Sumber daya lainnya mengenai masalah ini mencakup Gwap dan situs resmi reCAPTCHA. Akar akademis bidang ini terdokumentasi dengan baik. Penelitian yang dilakukan oleh Chellapilla dan Simard di Microsoft Research menyoroti bagaimana pembelajaran mesin dapat memecahkan bukti visual. Pemfilteran kolaboratif CAPTCHA telah dieksplorasi dalam lokakarya awal. Kerentanan CAPTCHA audio Google didokumentasikan pada tahun 2008. Spammer memecahkan CAPTCHA Gmail pada tahun yang sama.

Tes Turing, sebagaimana dibahas dalam Stanford Encyclopedia of Philosophy, tetap menjadi landasan teoretis. Korteks manusia masih mengalahkan CPU dalam banyak tugas, seperti dicatat oleh Wired. Namun kesenjangannya semakin dekat. Visi asli Von Ahn terwujud secara real-time. Setiap kode yang rusak adalah pelajaran bagi AI generasi berikutnya.

Pertanyaannya bukan lagi apakah mesin akan lulus tes ini. Itulah yang terjadi jika mereka melakukannya. Dan apa yang terjadi pada manusia yang masih harus mengklik kotak tersebut.