越來越離譜的驗證碼,到底在驗證啥
如今,小到注冊登錄,大到確認信息,驗證碼無一不存在。自驗證碼出現(xiàn)以來,它的花樣越來越多,衍變出多種模樣,甚至令你抓狂。驗證碼有沒有存在的必要?為什么還存在?本文一一解析,一起來看看吧。
“我是誰?我在哪?我要到哪里去?”
迫使你思考哲學問題的,有時可能不是蘇格拉底,而是不斷翻新花樣的驗證碼。
不知從什么時候開始,上網(wǎng)沖浪變成了視力與智力的雙重挑戰(zhàn)。
驗證碼,就是你要面對的第一關卡。
讓扭曲翻轉的數(shù)字眾神歸位,將一盤散沙的成語按順序點擊,在亂花漸欲迷人眼的圖片里精準選出正確的幾張……
選出正確的棕櫚樹
明明是上網(wǎng)解壓,結果卻讓驗證碼逼得壓力更大。
更要命的是,驗證碼的形式越來越花里胡哨,想順利登陸網(wǎng)站卻沒它不行——
上網(wǎng)沖個浪,為啥需要這么麻煩?
一、驗證碼,人類一生之敵
驗證碼的初衷其實很簡單,就是用來區(qū)分計算機程序和真正的人。
計算機程序無法識別被扭曲的數(shù)字,就不能通過驗證,進而對網(wǎng)站進行惡意攻擊和污染。
一切噩夢的開始
據(jù)統(tǒng)計,全球網(wǎng)民每天要輸入2億次驗證碼,耗時超過50萬個小時。
隨著生活中驗證碼的無孔不入,這屆網(wǎng)民也逐漸失去了耐心。
登錄網(wǎng)站、個人社交平臺、手機轉賬需要驗證碼情有可原,畢竟涉及個人財產(chǎn)和信息安全;
如今,下載一張圖片、看一篇文章、甚至轉發(fā)一條微博,都需要驗證碼。
點贊也需要驗證碼
如果只是看到驗證碼的窗口彈出就開始火冒三丈,那你氣早了。
驗證碼考驗大家的離譜形式,才是真正讓人“原地去世”的電子砒霜。
最基礎的英文數(shù)字組合驗證碼,就已經(jīng)會讓人陷入自我懷疑:
“I還是1?0還是O?2還是Z?9還是q?vv還是w?”
你這個驗證碼怎么還會罵人呢?
找出圖中汽車和斑馬線的驗證碼,更是會讓人陷入強迫癥的焦慮:
“只露個車屁股算不算包含車?角落里的玩具汽車要不要選?”
如今,帶干擾線的數(shù)字、找出紅綠燈、公交車或煙囪已經(jīng)過時,新一輪考驗正式開始——
“請點擊每張包含微笑的狗的圖片?!?/p>
于是,在思考”狗真的會笑嗎“之前,人們就已經(jīng)條件反射地研究起了狗狗的笑容。
事實上,大多數(shù)狗看起來既不高興也不難過,只是張著嘴的算不算笑?還是說它們吐舌頭才算笑?
這個問題的答案,只有成功通過的人才能知道。
而作為老互聯(lián)網(wǎng)居民,也沒人能忘記曾被12306網(wǎng)站驗證碼支配的恐懼。
2015年,如果想順利買到火車票,搶票頁面的“余票充足”并不能代表能買到,只有在付款前的驗證碼環(huán)節(jié)順利通關,才算成功一半。
有奇怪的東西混進去了
要么是在一群明星的照片中找出影帝影后,要么是在一堆山寨商品中找出真貨,更過分的是在一打方言中選出”海南話“……
彼時,被卡在驗證碼環(huán)節(jié)搶不到票的倒霉蛋不計其數(shù)。
“驗證碼,不想讓我買到火車票你就直說?!?/p>
甚至讓人陷入自我質(zhì)疑
都說驗證碼能把機器人攔住,但事實卻是大活人上網(wǎng)被絆了一跤。
更悲劇的是,大部分時候驗證碼的難易程度,總是和你的著急程度呈正相關。
“有急事時的驗證碼總是讓人想摔手機,你越急,它就越不容易成功?!?/p>
無數(shù)被煩人驗證碼擋在網(wǎng)頁外的網(wǎng)民,心里都有一聲憤怒的吶喊:驗證碼,人類一生之敵。
二、為什么要驗證碼
“人類發(fā)明驗證碼是為了反機器,現(xiàn)在的網(wǎng)站卻用它來反人類?!?/p>
如今,被驗證碼氣瘋成了人們的日常,但事實上,當初發(fā)明驗證碼的初衷并不是想為難人類,而是想為難機器人。
請證明你是人類
時間回到2000年初,剛剛接觸互聯(lián)網(wǎng)的初代網(wǎng)民,也許還記得那時最頭疼的事——
總是刪不完的垃圾郵件,隨意彈出的攻擊頁面,和永遠快人一步、利用插件搶票的黃牛。
剛剛興起的互聯(lián)網(wǎng),無異于一條自行車都能上的高速公路,有人辦正事,就有人制造代碼程序故意搗亂。
當封號的速度趕不上惡意注冊的速度,人工審核追不上重復運行的代碼時,給上網(wǎng)沖浪設置門檻便迫在眉睫。
2003年,為解決這個問題,來自卡內(nèi)基梅隆大學的一群博士創(chuàng)造了CAPTCHA,是一個全自動區(qū)分計算機和人類的公開圖靈測試。
所謂圖靈測試,就是人類提問計算機解答,用來判定計算機能否在智力行為上表現(xiàn)得和人無法區(qū)分。
想要分辨電腦前是否為真人,只需要把這個測試反過來——由機器提問人類解答,“驗證碼”應運而生。
最早的驗證碼,于1997年設計公布并申請了專利
早期的驗證碼,由被變形、扭曲、翻轉的字符串或者數(shù)字組成。
機器人看不懂,人類用肉眼卻可以輕松辨認。
有了這道簡單的門檻,垃圾郵件、黃牛插件和惡意攻擊的爬蟲程序,就被輕松擋在了網(wǎng)頁外。
然而好景不長,這樣的驗證碼很快就被程序破解了。
再復雜的程序也離不開26個英文字母、10個阿拉伯數(shù)字的組合,只要利用程序算法將字符與背景分離,久而久之,資料庫便學會了識別。
與此同時,一套由龐大中文字符庫組成的中文驗證碼,就這樣出現(xiàn)了。
辨認相似結構的漢字、給漢字標拼音,以及按順序點擊打亂的成語,成了中文驗證碼的常規(guī)操作。
發(fā)展到最后,圖文并用、閱讀理解紛紛上陣,驗證碼的形式越來越多樣,計算機的識別技術也越來越強。
升級版數(shù)字驗證碼
驗證碼的迭代,變成了一場“道高一尺,魔高一丈”的較量。
它既是程序員們智力的角逐,也是一場人機對抗學習。
時至今日,形式各樣的驗證碼已經(jīng)在互聯(lián)網(wǎng)的考驗洗禮中,按照功能分成了不同陣營。
當你想上個新聞網(wǎng)站,迎接你的大概率是點擊型驗證碼。
算法會根據(jù)鼠標的運營軌跡判斷你是否是真人,同時還能幫助驗證碼系統(tǒng)進化。
“我不是機器人”
當你登錄私人賬號時,滑動型驗證碼一邊通過拖動速度判別真人,一邊還會送上貼心鼓勵:
“恭喜你用時1.6秒,超過全國90%的人。”
隨著安全系數(shù)上升,短信驗證碼、掃碼驗證,刷臉驗證陸續(xù)登場,在危機四伏的互聯(lián)網(wǎng)世界里,層層把關著用戶的信息安全。
三、驗證碼能消失嗎?
面對越來越變態(tài)的驗證碼,不少人質(zhì)疑:
“為了保護我銀行卡里的五毛錢,設置八層驗證真的值得嗎?”
答案是,值得。
所謂安全驗證,判斷的不僅僅是用戶注冊時設置的用戶名、密碼等,還要判斷是不是真人、是不是本人操作。
目前為止,乖乖輸入驗證碼,依然是區(qū)別人和計算機最有效率的方法。
鮮有人知的是,驗證碼的存在除了保護信息安全,人類還能利用它干點正事兒。
發(fā)明初代驗證碼的天才Luis von Ahn,曾在2004年帶領團隊上線了一個叫reCAPTCHA的驗證碼系統(tǒng)。
他們把計算機難以識別的舊書籍掃描成電子版,將其中斑駁的文字對接到驗證碼上讓人們來識別。
靠著這個巧妙的方法,系統(tǒng)每年能成功數(shù)字化230多萬本舊書。
圖源:世界復雜性科學研究院
當人們以為這便是驗證碼的光明結局時,有人本著魔法打敗魔法的原則,推出了破解驗證碼的插件。
只要遇到圖形驗證型驗證碼,小插件不僅會自動幫用戶點擊,甚至還會利用深度學習訓練模型提高自己的精準度——
用的人越多,小插件就越精準。
你不仁就不要怪我不義/圖源:chrome應用商店
圍觀了這一波腥風血雨的“驗證碼之戰(zhàn)”后,有人感嘆:
“驗證碼拿用戶訓練機器人,用戶用機器人繞過驗證碼,最后機器人學到了最多?!?/p>
驗證碼難度的提升,反映的是人工智能技術的進步。
當機器越來越“聰明”,人類面臨的挑戰(zhàn)便越來越多,再復雜的驗證碼,也會有走投無路的一天,需要尋求新的改革。
但作為只想要網(wǎng)上輕松沖浪的用戶,我們只求驗證碼,別再讓我找出圖片中微笑的狗、云做的馬了。
作者:白小哲;公眾號:網(wǎng)易公開課(ID:open163)
原文標題:越來越變態(tài)的驗證碼,到底在驗證啥
來源:https://mp.weixin.qq.com/s/Niqud3m3qWN7if9FskmCUg
本文由 @網(wǎng)易公開課 授權發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉載。
題圖來自 Unsplash,基于 CC0 協(xié)議。
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務。
做過看字母的,拼圖的,認字的,成語組詞的,找車找云的,甚至還做過算數(shù)的驗證碼orz,看出來它們有在努力驗證了
那個掃描舊書的驗證碼系統(tǒng)也太酷了吧,看起來很實用,但這樣要怎么判定驗證是否成功呢…
現(xiàn)在的機器越來越聰明了,說不定哪天出個我看不出來的題,機器反倒驗證成功