打开主菜单

验证码

計算機測試,以區分人類用戶和垃圾郵件
(重定向自反向图灵测试
早期的Captcha验证码 "smwm" ,由EZ-Gimpy程序产生,使用扭曲的字母和背景颜色梯度
一种更现代的CAPTCHA,其不使用扭曲的背景及字母,而是增加一条曲线来使得图像分割(segmentation)更困难。
另一种增加图像分割难度的方法为将符号彼此拥挤在一起,但其也使得真人用户比较难以识别
要求用户识别图片的验证方式,本图为模拟12306网站的验证界面

全自动区分计算机和人类的公開图灵测试(英語:Completely Automated Public Turing test to tell Computers and Humans Apart,簡稱CAPTCHA),俗称验证码,是一种区分用户是计算机的公共全自动程序。在CAPTCHA测试中,作为服务器的计算机会自动生成一个问题由用户来解答。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。

簡介编辑

CAPTCHA这个词最早是在2002年由卡内基梅隆大学路易斯·馮·安、Manuel Blum、Nicholas J.Hopper以及IBM的John Langford所提出。卡内基梅隆大学曾试图申請此詞使其成为注册商标[1], 但该申请于2008年4月21日被拒绝[2]。一种常用的CAPTCHA测试是让用户输入一个扭曲变形的图片上所显示的文字或数字,扭曲變形是為了避免被光學字元識別(OCR, Optical Character Recognition)之類的電腦程式自動辨識出圖片上的文數字而失去效果。由于这个测试是由计算机来考人类,而不是标准图灵测试中那样由人类来考计算机,人们有时称CAPTCHA是一种反向图灵测试。

為了無法看到圖像的身心障礙者,替代的方法是改用語音讀出文數字,為了防止語音辨識分析聲音,聲音的內容會有雜音或仍可以被人类接受的变声

根據CAPTCHA測試的定義,產生驗證碼圖片的算法必須公開,即使該算法可能有專利保護。這樣做是證明想破解就需要解決一個不同的人工智能難題,而非僅靠發現原來的(秘密)算法,而後者可以用逆向工程等途徑得到。

運用编辑

CAPTCHA目前廣泛用於網站的留言板,許多留言板為防止有人利用電腦程式大量在留言板上張貼廣告或其他垃圾訊息,因此會放置CAPTCHA要求留言者必需輸入图片上所显示的文数字或是算術題才可完成留言。而一些網路上的交易系統(如訂票系統、網路銀行)也為避免被電腦程式以暴力法大量嘗試交易也會有CAPTCHA的機制。加值的運用有:

  • reCAPTCHA是利用CAPTCHA技術來幫助典籍數位化的進行。
  • SolveMedia,captcha.tw[3] 等廣告聯播網利用驗證碼展示廣告。

破解编辑

一些曾经或者正在使用中的验证码系统已被破解。这包括Yahoo验证码的一个早期版本 EZ-Gimpy[4],PayPal使用的验证码[5],LiveJournal、phpBB使用的验证码,很多金融机构(主要是银行)使用的网银验证码[6]以及很多其他网站使用的验证码[7][8][9]

俄罗斯的一个黑客组织使用一个自动识别软件在2006年破解了Yahoo的CAPTCHA。准确率大概是15%,但是攻击者可以每天尝试10万次,相对来说成本很低。[10]而在2008年,Google的CAPTCHA也被俄罗斯黑客所破解。攻击者使用两台不同的电脑来调整破解进程,可能是用第二台电脑学习第一台对CAPTCHA的破解,或者是对成效进行监视[11]

也有一种类似分布式的人工识别方法,多用于在自动化运行程序防止被反自动化机制拦截,如游戏自动外挂等,就是通过将需要验证的图片等数据转发到有人值勤的终端,由其他人类代为识别回答后再把答案转发回验证发送端回答。[12][13]Gmail郵箱註冊驗證系統的破解可能即是經由此方法[14]。已经有专门的公司提供专门的人员识别服务。[15]reCAPTCHAHuman-based computation英语Human-based computation)的一種,由CAPTCHA的发明者之一Luis von Ahn所發起。)亦是人工破解驗證碼的應用。

参考文献编辑

  1. Computer Literacy Tests: Are You Human?. Time (magazine). [2008-06-12]. The Carnegie Mellon team came back with the CAPTCHA. (It stands for "completely automated public Turing test to tell computers and humans apart"; no, the acronym doesn't really fit.) The point of the CAPTCHA is that reading those swirly letters is something that computers aren't very good at. 
  2. Latest Status of CAPTCHA Trademark Application. USPTO. 2008-04-21 [2008-12-21]. 
  3. 歡樂驗證碼. captcha.tw. (原始内容存档于2013-10-14). 
  4. Greg, Mori,; Malik, Jitendra英语Jitendra Malik. Breaking a Visual CAPTCHA. Simon Fraser University. [2008-12-21]. 
  5. Kluever, Kurt. Breaking the PayPal CAPTCHA. Kloover.com. 2008-05-12 [2008-12-21]. 
  6. Li, Shujun; Syed Amier Haider Shah, Muhammad Asad Usman Khan, Syed Ali Khayam, Ahmad-Reza Sadeghi and Roland Schmitz. Breaking e-Banking CAPTCHAs. Proceedings of 26th Annual Computer Security Applications Conference (ACSAC 2010). New York, NY, USA: ACM: 171–180. 2010. doi:10.1145/1920261.1920288. 
  7. Kluever, Kurt. Breaking ASP Security Image Generator. Kloover.com. 2008-02-28 [2008-12-21]. 
  8. Hocevar, Sam. PWNtcha - captcha decoder. Sam.zoy.org. [2008-12-21]. 
  9. Sergei, Kruglov. Defeating of some weak CAPTCHAs. Captcha.ru. [2008-12-21]. 
  10. Yahoo! CAPTCHA Cracked.. 0x000000 - THE HACKER WEBZINE. 2006 [2008-02-27]. ([http://www.0x 000000.com/?i=502 原始内容] 请检查|url=值 (帮助)存档于2013-07-19).  参数|url=值左起第14位存在換行符 (帮助)
  11. Google's CAPTCHA busted in recent spammer tactics. Websense Security Labs. 2008-02-22 [2008-02-27]. (原始内容存档于2008-02-28). 
  12. 解析验证码人工破解内幕!什么是打码任务 打码任务(captcha human bypass project)
  13. 关于打码内幕 互联网档案馆存檔,存档日期2016-03-05.
  14. [1] 页面存档备份,存于互联网档案馆 Brad Taylor稱垃圾信息發送者採用了原始的"人肉破解",即花錢僱傭了大量來自第三世界的廉價勞動者,讓他們逐個對進行 CAPTCHA系統進行人手破解。
  15. 验证码识别和代答题远程人工打码/软件识别云平台-知码网. (原始内容存档于2016-03-04).