余之敏
在2015年年底的網(wǎng)絡(luò)購票高峰中,中國鐵路客戶服務中心的12306圖形驗證碼系統(tǒng)讓很多購票者“吐槽”。人們不禁要問,那么復雜的驗證碼系統(tǒng),到底有什么用?
要回答這個問題,須先弄明白何為驗證碼。驗證碼實際上是一種Web自動程序,它有一個充滿科學氣息的名字——“全自動區(qū)分電腦和人類的圖靈測試”,就是由機器來向操作者提問,從而鑒別操作者是人還是機器的一種測試。目前,這種測試主要有四類:圖形驗證碼、手機短信驗證碼、手機語音驗證碼和視頻驗證碼。
中國鐵路客戶服務中心的驗證碼是圖形驗證碼,又叫主流驗證碼。剛開始,圖形驗證碼只是靜態(tài)的圖片,后來變成了動態(tài)的驗證碼圖片,它的防垃圾注入幾乎可以達到100%,是一個非常有效的驗證碼創(chuàng)新模式。
手機短信驗證碼是通過發(fā)送驗證碼到手機,以驗證用戶的真實性。大型網(wǎng)站,尤其是購物網(wǎng)站,都能提供這項功能,可以比較準確和安全地保證購物的安全性。
手機語音驗證碼可以實現(xiàn)自動語音播報,同時短信也能發(fā)送到用戶手機上,以確保萬無一失。如果有撥通失敗的,系統(tǒng)還能自動重播,確保不漏掉任何一個,這就從根本上解決了網(wǎng)站用戶收不到驗證碼的問題。
視頻驗證碼是驗證碼中的新秀,這種由隨機數(shù)字、字母和中文組合成的驗證碼會動態(tài)嵌入到MP4等視頻中,增加了破解難度。視頻中的驗證碼字母、數(shù)字組合、字體的形狀、大小,速度的快慢,顯示效果和軌跡的動態(tài)變換,增加了惡意抓屏被破解的難度,其安全度遠高于其他驗證碼,而且這種驗證碼不會使用戶感到枯燥,同時又降低了用戶識別的難度,讓用戶更容易辨認。
驗證碼的主要作用是攔截不合理的入侵。比方說,若要進入一個頁面,就須要通過驗證, 這時操作者就要依次輸入數(shù)字、字母,有時還要加上無法被計算機辨識、但用戶肉眼可以識別的文字圖像(如12306網(wǎng)站的圖形驗證),而操作者只有通過了驗證,才能順利打開網(wǎng)頁,有效地防止了惡意破解密碼、論壇灌水和刷票等不良行為。
隨著計算機技術(shù)的進步,對于驗證碼的設(shè)計也越來越復雜,程序員正在與破解者進行著一場仿佛沒有終點的“拉鋸戰(zhàn)”,而在這場“拉鋸戰(zhàn)”中,又催生出新的發(fā)現(xiàn):2015年年底,美國卡內(nèi)基·梅隆大學的路易斯·馮·安等人設(shè)計出把無法識別的古籍文字制成驗證碼,派發(fā)給網(wǎng)站用戶驗證,根據(jù)不同用戶反饋回來的單詞答案,就可以輕松得到典籍模糊字符的正確結(jié)果,這對于古籍保護而言無疑是一個福音。
不過,越來越復雜的驗證碼還是令很多網(wǎng)友煩惱。為此,谷歌公司正在實施一項“消滅驗證碼”的工程,即驗證碼將被一個簡單的復選框代替,用戶只需勾選“我不是機器人”,電腦通過收集用戶單擊前的鼠標軌跡,然后對比用戶當前的行為是否與在互聯(lián)網(wǎng)上的歷史行為一致,就可以輕松判定操作者究竟是人還是機器。對于大多數(shù)用戶來說,這無疑會簡化他們的體驗,但它也會在“不經(jīng)意間”收集用戶的IP地址等變量,從而泄漏隱私。
但是不可否認,驗證碼作為一種各網(wǎng)站反黑客惡意操作中必不可少的保障系統(tǒng),還是會被繼續(xù)使用下去,直到另一種全新的、功能更好的反黑客軟件出現(xiàn)。