告訴CAPTCHA「我不是機械人」

相信大家現在都對reCAPTCHA也不陌生,往往在登入或註冊的時侯都有機會見到。不知你在未接觸過它的時候,又有沒有想過有這樣的一天,你要在一部運算得很快的電腦面前按「我不是機械人」,它才知道你是一個有血有肉的人類。

其實CAPTCHA 是一個很好用的工具,能加以利用來提昇自己網站的安全性,避免一些大量登入或點擊的攻擊。今天就向大家介紹一下CAPTCHA 的進化史。

首先,現在見到的reCAPTCHA 其實是由CAPTCHA 進化出來,而「CAPTCHA」全寫是 (Completely Automated Public Turing test to tell Computers and Humans Apart) ,中文可簡單稱呼作驗證碼。由於機器無法解答CAPTCHA的問題,回答出問題的使用者即可視為人類。

CAPTCHA 起源在2000年,在香港最為人知道的用法,是當年有很多人制作Bot 程式來「抽電話」,廠方就利用CAPTCHA 來避免有人利用Bot 來進行大量購買,希望大家都能夠公平地購買。而在過去20年CAPTCHA 經歷不斷的進化,最原始的CAPTCHA 就是你在填表格前,加入一張有文字的圖片,對於人類而言輕易能解這些文字並填上答案。但隨著時代進步,AI 的演算已經可以看得懂文字——這就是促成 reCAPTCHA 誕生的契機。reCAPTCHA 並非使用隨機生成的單詞,而是使用來自正在數字化且電腦無法理解的舊書中的單詞。

當然reCAPTCHA 也不是最完美,Google 就提出了 Nocaptcha ReCAPTCHA 或  reCAPTCHA 第二版本 。這個版本的 reCAPTCHA並沒有要求用戶輸入他們在扭曲的圖像中看到的文本。相反,用戶所要做的就是點擊一個複選框。看似簡單,其實背後用了大量計算去運算你在網站的行為,如果不確定,就會顯示圖來確定你是否機械人。儘管 reCAPTCHA V2 比 reCAPTCHA 更好,但它有其本身的限制。到了後來更有reCAPTCHA v3,採用分數制驗證系統,對使用者在網站上的動作進行評分,若分數過低則會被判定為機械人。而往後的進化則向變成更強的評分機制改良。

CAPTCHA 的誕生是為了防止機械人攻擊,然而在運算能力不斷進步下,透過AI 技術也可以破解,最後變成了AI與AI 角力。不過在一般阻擋攻擊的方法來說,目前CAPTCHA系列仍然是其中一個最有效的方法。

網絡安全在很多方面還需要注意,如有任何疑問歡迎加入我們的 Cybersec Infohub 計劃,讓行業裏的網絡安全專家為您解決,如果您懷疑自己或公司的電腦被駭或有可疑的行為,亦請盡快聯絡網絡安全專家求助。

更多文章