互聯網目前已經滲透到我們生活的方方面面,但它依然只是現實的物理世界在虛擬的網絡空間上按比特信息編碼后的投射。
所以只要定制相應的自動化程序便可以模仿人的行為,同時,因為機器速度更快且不知疲倦,它會被用于批量在論壇、網站、app 中發布營銷信息。而且,在監管不足的情況下,利潤更高的行業往往底線更低,自動機器人發布的垃圾信息經常也和賭博、詐騙、色情等灰色產業有關。一些自動化程序還會嘗試以“撞庫”的方式竊取用戶帳號、密碼,給網站帶來巨大的安全隱患。
于是,驗證碼應運而生。作為同樣的自動化程序,二維碼存在目的是區分用戶到底是機器人還是真實的人。
最常見的驗證碼便是自動生成的扭曲的文字和圖案,雖然它可以有效地識別出很大一部分自動化程序,但它對真人用戶的體驗并不好。而且隨著機器學習的發展,要破解它也越來越容易。
▲驗證碼風格的設計圖案
Google的驗證碼團隊有著各種創新試驗,比如創造性地把驗證碼用于紙質典籍數字化。另外除了扭曲文字、圖片的主流路線之后,Google的團隊還嘗試了新的思路,利用追蹤用戶的點擊行為等來識別是否真人操作。用戶只需要點擊“我不是機器人”的復選框便可驗證。
在最新版本的Google驗證碼reCAPTCHA v3中,你甚至什么都不用做,系統就在悄悄核驗當前的用戶是不是機器人。技術正在讓“驗證碼”越來越隱形,人類不必再為了自證身份去做“反向圖靈測試”,然而這種進步也帶來了不少新的問題。
初代驗證碼CAPTCHA:歪歪扭扭的文字
2000年,從杜克大學數學系畢業,來到卡內基梅隆大學讀計算機科學博士的路易斯·馮·安(Luis von Ahn)和導師一起提出了驗證碼的概念,全稱是全自動區分計算機和人類的公開圖靈測試(英語:Completely Automated Public Turing test to tell Computers and Humans Apart,簡稱 CAPTCHA)。
圖靈測試由計算機先驅人物,“人工智能之父”阿蘭·圖靈提出,以一臺計算機能和人類對話而不被識別出是機器人為通過圖靈測試基準。驗證碼也是圖靈測試的一種,但它的目的不是為了創造AI,而只是為了識別真實的人類用戶。
一種最常見的驗證碼是由算法生成的扭曲的文字,這么做是為了防止被光學字符識別程序(OCR)自動識別出來。
有一些方法是在字母上加一條曲線或將不同的字母疊在一起,也有添加復雜背景的方式。
也有圖片驗證碼,要求用戶識別圖片的物體,以及把缺失的部分拖到正確的位置和拼圖等。
但不管形式如何,這些驗證碼有一個共同的原則:就是要讓人類很容易識別,卻對計算機來說非常困難。一些研究者認為,為避免 CAPTCHA過難而使網站損失用戶,通常要求人類用戶通過測試的時間小于30秒,用戶通過率大于90%。
還有一個不被普通人知道的點,驗證碼被稱為一種“圖靈測試”,所以它在設計之初就有促進人工智能發展的初衷。
根據定義,驗證碼的算法必須公開,這樣做的目的是為了讓破解驗證碼的過程是在解決對應的人工智能問題,例如圖像識別、準確度更高的OCR等,破解者不必花費心思通過逆向工程推演算法。
利用驗證碼將紙質典籍數字化
目前驗證碼已經被廣泛用于各大網站、app中,有數據顯示,這項技術在推出后的短短五年內,每天就有2億個驗證碼在被使用。
很快,驗證碼發明者提出一個新的項目reCAPTCHA,主要用于把互聯網出現前的紙質典籍數字化。思路是這樣的:驗證碼系統會向用戶出示兩個單詞,第一個是正常的自動生成扭曲文字,另外一個則來自紙質典籍的掃描版,來自掃描版的文字通常因為年代久遠、或是紙上有污點等原因而難以被OCR程序識別。
因此,當用戶輸入驗證碼時,只要第一個單詞輸入正確就可以被判別為人類,輸入的第二個單詞只是“義務勞動”。這是因為系統會默認第二個單詞輸入是正確的,輸入結果只是會與其他用戶的輸入結果進行對比,如果多名用戶的答案一致,這個詞的數字化就完成了。
也許你會認為這樣一個一個詞的識別與龐大的待數字化的典籍相比,根本起不了多大作用,然而在推出之初,reCAPTCHA便能錄入3000萬個字符。2011年,它已經完成了全部的《紐約時報》數字化的工作,這份從1851年開始出版的老報紙有大量純紙質版的內容。
2009 年,Google看上了這個項目的價值,并出手收購了reCAPTCHA,同時也被Facebook、Twitter、CNBC等使用。在幫助這些流量最大的網站抵御自動化程序騷擾的同時,Google圖書中難以被自動識別的掃描版的古老典籍同樣借助reCAPTCHA得以數字化。
另外,reCAPTCHA還被用于幫助機器學習系統提高圖像識別率,運作原理和典籍數字化的方法是一樣,用機器難以辨別的門牌號、貓狗照片拿來當做驗證碼供人類識別。
與此同時,用戶實際上還在幫機器學習系統標注訓練集,所以,強大的AlphaGo背后的人工智能技術,可能早就有你的功勞。
NoCAPTCHA:不用輸入字符的驗證方式
Google在收購reCAPTCHA后,對它進行了以Google的方式改進。
在2014年,Google推出了新的驗證碼系統——NoCAPTCHA reCAPTCHA,雖然名字有點拗口,但依然是個驗證系統,其核心是不需要輸入驗證碼,用戶只需要點擊一個“我不是機器人”的復選框,Google就能判別你是不是真正的人類。
reCAPTCHA的口號也從“別發垃圾信息了,讀點書吧”(Stop Spam. Read Books),變成了驗證碼最初的目的“對人類簡單,對機器人困難”(Easy on Humans, Hard on Bots)。
NoCAPTCHA跟蹤用戶點擊驗證框之前、當時和之后的行為,比如在網頁上花費的時間,從而來判斷是否是人為操作。
假如你被誤判為機器人,還有一個“申訴”的機會,和圖片驗證一樣,從一堆圖片中選出正確的目標。
使用reCAPTCHA v3的網站會在網站的每個頁面放入reCAPTCHA v3代碼,而不只是在登錄頁面。reCAPTCHA系統會跟蹤用戶的所有瀏覽行為進行分析。
就這樣,Google 可以獲得幾乎用戶的所有行為。Google也確認,用戶使用的硬件信息即設備上的軟件會被發送回 Google服務器,但它表示,獲得的結果“只用于分析用戶行為,不用于個性化廣告推薦”。不過,隱私都被掌握了的事實就擺在這里,你想更快捷被驗證還是以隱私換取快捷呢?
-
機器人
+關注
關注
211文章
28390瀏覽量
206956 -
互聯網
+關注
關注
54文章
11149瀏覽量
103246
原文標題:驗證方式的進化,除了要當上義務標注員,還要付出什么代價呢?
文章出處:【微信號:luomajqrxt,微信公眾號:機器人學堂】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論