當前位置: 華文世界 > 科技

繁瑣的驗證背後,竟是一場「人機大戰」?

2024-09-04科技
證明自己不是機器人,幾乎是每個網絡沖浪人的日常小考。
有太多這樣的瞬間:你正在網上訂票,準備支付時,界面出現一個彈窗要求你確認你是人類:
為了給程式證明我不是程式 ——
你在5秒內找出了所有的十字路口,
在3秒內點選了混在草叢後的單車,
以超過全民85%的速度把滾軸移到了正確的位置……
最終,以人類身份光榮地透過了系統的考驗!
那麽,這個驗證是如何判斷區分真實人類的?機器人難道就無法勾選「我不是機器人」的核取方塊嗎?
首先,我們來介紹一下這場人機戰的關鍵裁判—— reCAPTCHA。
01
什麽是reCAPTCHA
reCAPTCHA是Google開發的一種安全機制,核心任務就是區分真人使用者和自動化程式(比如「爬蟲」或機器人等)———
每當你在網上點選那個「我不是機器人」的小方框,就是在參與一場人機較量 。
reCAPTCHA就是較量中的裁判,透過使用者的點選進行判斷,把惡意程式擋在門外,確保只有真正的使用者才能透過。
02
reCAPTCHA的演變歷程
reCAPTCHA最早誕生在20年代初期,隨著互聯網的興起,網絡開始面臨越來越多的垃圾資訊和惡意程式的威脅。當時,卡內基梅隆大學的路易斯·馮·安(Luis von Ahn)在研究惡意程式防禦時開發了reCAPTCHA。
這種技術最初透過讓使用者辨識扭曲的文字或影像,來驗證其是否為人類。
比較典型的驗證
偶爾也會遇到特別離譜的……
研究過程中,馮·安意識到這項技術還可以套用於幫助轉錄舊手稿。為此,馮·安進一步改進了reCAPTCHA:不僅使用驗證碼,也同時把老舊文件文獻中的單詞展示給使用者,借助使用者的驗證過程完成標註,助力歷史文獻的數碼化。(這些文獻中的字跡僅靠光學字元辨識系統(OCR)無法很好地辨識)
reCAPTCHA的使用大大減少了人工手動轉錄文獻的工作量。 目前已有約5萬個網站在使用它進行身份驗證,每天幫助轉錄超過1800萬個單詞。世界頭部互聯網檔案館(Internet Archive)每天使用reCAPTCHA來數碼化多達1000本書籍、報紙和其他文件;【紐約時報】也利用reCAPTCHA來數碼化其自1851年以來的檔案。
和傳統的OCR技術相比,reCAPTCHA在處理舊文件時的準確率高達99%,遠遠優於OCR在處理19世紀前出版書籍時高達20%的錯誤率 。
這個方法一開始效果還不錯,但隨著技術的進步,機器人也慢慢地學會了辨識這些扭曲的文字。
於是reCAPTCHA也跟著前進演化,從簡單的文字辨識變成了我們今天看到的「請點選所有有交通燈的圖片」之類的圖片辨識任務,以及讓使用者勾選「我不是機器人」的方式來完成驗證。
谷歌在2009年收購了reCAPTCHA後,把這種技術用到了谷歌書籍和Google Maps等專案,用來改進文字辨識和地理數據處理。
(頓悟原來我每次嘔心瀝血完成驗證,都在充當Google的人工標註勞動力
那麽,reCAPTCHA究竟是如何判斷你是人類還是機器人的?
03
驗證背後的實作原理
當你點選這個「我不是機器人」的方框時,reCAPTCHA就會根據你的點選行為判斷你是否是一個真實的人類。
點選行為分析背後是非常有趣的領域:人機互動(HCI)與行為生物辨識(Behavioral Biometrics):透過大量的行為數據分析,從使用者的日常操作中提取出生物行為特征,與機器人的行為對比。
辨識的關鍵並不在於你是否能在框中完成點選,而在於 你 點選的動作。
reCAPTCHA透過分析你點選的速度、滑鼠的軌跡,以及你在頁面上的一些小動作來判斷你到底是不是人類。
人在操作滑鼠時,手指總是會有些許抖動的。移動路徑可能會有一些小彎曲或停頓、速度時快時慢、點選前隨著閱讀思考有小片刻停頓,或是在點選後追加一些慣性動作。這些微小的變化通常會比機器人更自然。
而機器人則趨向於完美的直線和精準的點選。
大量行為數據分析發現,機器人雖然能快準狠地點選目標,但它們的動作太「完美」,不像人類的隨意:滑鼠的移動路徑通常是最短的直線,點選速度也十分一致。 這種差異是用來辨識人類和機器人的關鍵。
(原來我勝出是因為菜…)
04
人類vs機器的移動軌跡
Castle(一家專註做賬戶安全和欺詐檢測的公司)的研究員Johan Brissmyr透過記錄滑鼠在網頁上的位置,展示了人機兩種截然不同的移動軌跡:包括瞬間跳躍、直線移動和貝茲曲線:
可以看出,模擬生成的自動化程式通常會透過直接指定座標的方式移動滑鼠,導致不自然的軌跡,如瞬間跳躍或直線移動(1A)。
透過移動速度和加速度的分析比對,也可以發現機器人軌跡中的加速度通常接近於零 ,這是辨識人機的關鍵。
人類日常點選滑鼠時,隨著手腕手指的發力,滑鼠的移動軌跡會產生加速度變化。而自動化程式的滑鼠移動通常是以恒定速度沿直線完成,加速度接近零。
針對行為分析的結果,系統會為每個使用者生成一個「信譽評分」(score)。這個評分從0.1到1不等。分數越高,說明系統越相信你是個真真切切的人類;分數越低,系統就會更加警覺,甚至可能要求你進行進一步驗證。
05
多模態驗證:運動軌跡+影像辨識
當使用者點選太快或軌跡過於「機器人」時,系統給出的低分會觸發更復雜的視覺驗證,比如讓使用者選擇含有摩托車或街燈的圖片,或甚至語音、影片的驗證。
系統展示的驗證圖片一般會具有一定的模糊性或復雜性,這種多角度的物體辨識對自動程式來說挑戰比較大。因為物體從不同角度看,輪廓、光影會發生變化,會導致辨識難度大大增加。
而電腦程式主要根據平面影像來理解三維物體,如果訓練數據不夠全面,就可能無法準確辨識在特定角度下的物體。人類的大腦則天然擅長處理這些變化, 即使圖片質素不高或角度怪異,也能迅速辨識出目標物體。
06
不停歇的攻防戰:reCAPTCHA的持續前進演化
道高一尺,魔高一丈。
隨著人工智能技術的迅猛發展,機器人不僅能執行點選任務,也能逐漸透過復雜的演算法模仿人類行為。防禦與攻擊相互推動,像一場無休止的貓鼠遊戲。每一步都要求防禦系統不斷前進演化,以應對愈加精巧的對抗性AI。
end
參考文獻: (上下滑動可瀏覽)
1. Google Developers. (n.d.).
https://developers.google.com/recaptcha
2. Google Security Blog. (2018).
https://security.googleblog.com/2018/10/introducing-recaptcha-v3-new-way-to.html
3. Cloudflare. (n.d.).
https://blog.cloudflare.com/a-brief-history-of-recaptcha/
4. TechCrunch. (2017, March 9). :
https://techcrunch.com/2017/03/09/googles-invisible-recaptcha/
5. The Verge. (2018, October 29).
https://www.theverge.com/2018/10/29/18037354
6. Brissmyr, J. (2020, December 9). Castle Blog: https://blog.castle.io/author/johan/
來源:DataCafe
原標題:am I a robot? 機器人驗證背後的原理
編輯:ArtistET