驗證碼真的能防止盜號嗎?

突然覺得驗證碼是一個很沒用的東西。最近打錯了幾次密碼,再次登陸除了賬號密碼就要填寫驗證碼了。但是這種方面的驗證碼有用嗎?

打錯密碼無非就兩種情況:1.單純的打錯,使用者就會認為,唉,不就打錯個密碼嗎,還要輸驗證碼,驗證碼又不容易看,真麻煩;2.是盜號分子輸入賬號,那盜號的只需要打驗證碼就行了啊,破解了用戶的密碼還是能盜啊。

所以從我一個電腦小白的角度來看,驗證碼並沒有什麼卵用╮(╯▽╰)╭


驗證碼的意義是增加不知道你的密碼的人用計算機暴力破解你的密碼的難度,它的確防不住你題目說明中提及的第二種情況,也就是盜號者已經知道了你的密碼。

所謂暴力破解,就是在只知道你的用戶名的前提下,一個一個去試可能的密碼。因為這一過程非常機械,所以一般人都會選擇寫一個程序來做,雖然緩慢的網速或網站會拖慢它的速度,但哪怕它只能每秒試一次,每天也能試上八萬多次,那些用生日當密碼的人撐不過兩個禮拜。如果有選擇性地生成這些可能的密碼(比如只選擇能拼成單詞或漢語拼音的字母組合),能攻擊的人群就更廣了。

而驗證碼就是針對這一攻擊方法裡面「寫一個程序」這一環節來對抗它的。驗證碼的學名叫做「全自動區分計算機和人類的公開圖靈測試」,Completely Automated Public Turing test to tell Computers and Humans Apart,簡稱 CAPTCHA(原創研究:這個羅嗦的名字大概只是為了湊出 CAPTCHA — capture you 這個諧音而硬湊出來的,因為「圖靈測試」的意圖本來就是「區分計算機和人類」)。它的作用就是驗證輸入密碼的人其實是個能從那張圖裡面讀出數字的人,而不是一個無法理解圖像的腳本程序。驗證碼通常以扭曲的文字方式出現,是因為讓計算機去識別這些文字非常困難。

不過鑒於目前的圖像識別技術已經足以匹敵絕大多數扭曲字元的驗證碼,所以其他形式的 CAPTCHA 也陸續出現,比如問用戶一個常識性的問題,要用戶把幾張顛倒的圖片全都調正,或者從一些貓的圖片里找出哪一張是狗——總之是一些計算機很難做到的事情。這樣一來暴力破解的方法基本上就廢了,除非去找血汗工廠人肉破解 CAPTCHA(Google「captcha job」可以看到這樣的網站)。

除了 CAPTCHA 之外,網站還可以利用其他方式來增加暴力破解的難度,比如輸入錯誤的密碼需要多等幾秒鐘,或短時間內連續輸入若干次錯誤的密碼就會導致帳號被鎖等等。

而如果要防範你題目說明中的第二種情況,普遍的方法是「兩步認證」,也就是除了密碼之外,你還需要另外別的什麼來證明你是輸入密碼的人。常見的方法包括:給你在網站上註冊的手機發一個隨機數,讓你輸入此數字;讓你輸入某個隨身設備按照只有它和你欲登錄的網站才知道的特定規則在某個特定時間生成出來的數字(如 http://Battle.net authenticator);或在你使用的電腦上插入一個特定的硬體設備(如 YubiKey)。


終於遇上我能答的題了,Network Security 碩士,導師就是CAPCHA方面的權威。

(有些專業名詞我可能會表達的不準確,因為我接觸的都是英文,不知道中文裡這些概念怎麼說。)

已經有人解釋了Completely Automated Public Turing test to tell Computers and Humans Apart, 重點在於Turing test 圖靈測試,驗證碼的作用:

1.為了防止機器冒充人類做暴力破解,

2.防止大規模在線註冊濫用服務,

3.防止濫用在線批量操,

4.防止自動發布,

5.防止信息被大量採集聚合,et al

如果盜你號的是個人不是個機器,那麼驗證碼防不住的。

現在驗證碼有用嗎?答案當然是有用,沒有驗證碼,任何一個有大學本科計算機基礎的學生都能用字典破解來盜你的號,在防止機器暴力行為方面,驗證碼功不可沒。

至於下面有人吐槽的驗證碼看不清,驗證碼要的就是複雜性與無序性,還要有高濃度的噪音背景,對比度、可識別度都不能太高,因為機器比你聰明多了,你能輕易看清的,機器早就識別出來了。

Andrei Broder在1997年提出的classic CAPCHA的method是這樣的:

對於那個年代的機器,這是一種非常有效的圖靈測試。

於是從2000年起,隨著online service的普及以及暴露出的許多安全隱患,OCR based CAPCHAs出現井噴,那個時候它是一種有效的驗證措施,一個5位的數字字母組合驗證碼能提供(26+10)^5=60,466,176種組合。

這些紛繁複雜的驗證碼,放在十五年後的今天,沒有一個是安全的,而且用不了十五年,僅僅過了兩年多,2003年,Mori Malik,宣布他們可以破解EZ-GIMPY生成的92%的驗證碼,並且能繞開GIMPY生成的33%的驗證碼。

2004年PWN CAPTCHAs——「Pretend We』re Not a Turing Computer but a Human Antagonist」 ,「假裝成我們不是電腦而是人類」,已經能破解絕大多數OCR based CAPCHAs。

2007年7月,Yahoo和Hotmail的驗證碼已經能被繞開。

2008年1月,Yahoo驗證碼的33%可以被公開繞過。

2008年2月,Gmail驗證嗎的20%可以被繞過。一個月後,Gmail的音頻驗證碼也宣布失守。

吃個飯去,晚上回來更ASIRRA QRBGS MEGAUPLOAD TEABAG……


驗證碼主要是區分人和機器的!!!驗證碼很重要!!!


原來驗證碼是防盜號的?!

我一直以為驗證碼是為了檢驗視力,以防視力不好 看不清那些歪歪扭扭數字的小孩過度上網o( ̄ヘ ̄o)


作為一個曾經的盜號者,覺得題主這樣的想法對我們真的非常有卵用啊。


如果是QQ老用戶,那你一定記得那些年我們掛過的星星、月亮和太陽。伴隨著這股熱潮,網路上開始出現一種特殊服務——代掛QQ,也就是代掛團伙為有需要的用戶長時間登錄QQ以提升等級,這就需要用戶把帳號密碼給到他們。

然而,這種黑產服務導致大量密碼遭到泄漏,壞人手裡掌握的密碼資源嘩啦啦多了起來,開始不斷嘗試盜號以獲利。因此,QQ帳號開始頻繁遭到壞人自動化程序的暴力破解。

於是,正如大家所見,QQ登錄場景中的驗證碼應運而生,並有效打斷了壞人自動機暴破的瘋狂節奏。

相關鏈接《騰訊驗證碼十二年》:知乎專欄


一句話說:驗證碼是用來區別機器人和人的。


可能對於人來說,知道你的一個帳號,一個一個去試你的密碼是件很傻的事情。

但是對於計算機來說,寫一個程序去做這件事情簡直太輕鬆了哈哈哈哈。

計算機最擅長去做重複的事情。但計算機又是這個世界上最嚴重的臉盲症患者。

那麼,驗證碼的誕生就是為了對抗程序而誕生了,而非人。

這也能解釋為什麼驗證碼一個個都扭曲的不行,人有時看起來都會很難識別。這都是為了噁心計算機程序呀。

類似的還有CdKey這種東西。很容易被一遍一遍的試出來。

雖然現在驗證碼被自動識別也不算新鮮事了。

但有還是比沒有強的對吧


絕對可以

就連盜號者知道了你的密碼都可以防


驗證碼,即CAPTCHA,是Completely Automated Public Turing Test to Tell Computers and Humans Apart (全自動區分計算機和人類的圖靈測試)的簡稱。

可以用來阻止(增加難度)計算機程序模擬人類。比如通過程序猜測密碼模擬登錄,包括暴力破解。

但是盜號除了暴力破解外,還有很多其他手段,比如鍵盤記錄,又如撞庫等


能一定程度上防暴力破解但防不了脫褲。當年c**n站被脫褲,對於所有網站用同一密碼的我無異于晴天霹靂,花了一整天來改密碼。另外,一些驗證碼已經能被軟體直接讀取了。所以,網路好危險,喝口茶壓壓驚。


驗證碼對用戶來說確實沒有什麼用,甚至可以說拉低了用戶體驗。

那麼既然這樣,為什麼還有那婆婆娑娑,朦朦朧朧的驗證呢?

因為它根本就不是站在用戶角度考慮的,更不是用來防止盜號!

排名第一的答案已經把原理說的很清楚,防止機器暴力破解,DDOS攻擊等

那我就舉個生活中的栗子類比下:

前段時間風靡網路的12306驗證碼想必現在還在回味吧,哈哈。

遇到那些驗證碼時的感受和這些驗證碼從無到有的原因就是最好的解釋!


不得不承認,驗證碼是今年的主流驗證方式了。但安全問題一直無法保證,連續兩年的315晚會都提到了這個問題,被劫持、詐騙、收不到驗證碼……

驗證碼絕對不可能防止盜號!!!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

簡訊驗證碼,看似便捷實則「體驗難」

相信很多人都曾有過這樣的經歷:在急於登錄搶購某商品時,點擊「獲取驗證碼」,結果幾分鐘過去了,手機仍然沒有收到驗證碼,於是又重新點擊「獲取驗證碼」,手機很快收到了一條驗證碼,輸入後,網站提示「該驗證碼錯誤」(其實輸入的是之前的驗證碼),於是又再次要求發送驗證碼…

簡訊驗證碼,詐騙分子的獵物

簡訊驗證碼以簡訊發送單次密碼的方式,安全風險顯而易見。由於業務系統與用戶手機簡訊之間單向的信息傳遞,且驗證碼均是通過明文進行傳遞,極易發生簡訊通道被劫持、手機盜用、山寨釣魚網站和手機中木馬病毒的問題,進而引發驗證碼劫持、非授權訪問等安全威脅。

簡訊驗證碼,成本高昂

簡訊認證每條都會有5分錢左右的成本。可別小看這5分錢,猛一看似乎不貴,但是考慮到現在動輒千萬級的用戶量,總算下來可不是一個小數目。


如果是這樣,銀行登錄的時候,為什麼驗證碼這麼簡單????至少國內銀行的驗證碼,在我看來都是擺設。所以,驗證碼不能防止盜號。????


只是增加盜號的成本,並不能防止


專業服務,歡迎關注


如果沒有驗證碼,暴力破解真的好爽的


驗證你是活人


至少現在可以減少暴力破解

但根據計算機的發展和人類生理進化速度,再根據當前驗證碼複雜度上升速度來看,如果接下來看不懂驗證碼的人仍然可以正常繁衍,人類終將看不懂驗證碼。

驗證碼也就會取消了(≧▽≦),被其他測試替代


推薦閱讀:

轉行計算機讀研還是自學?
28歲,轉行學 IT 靠譜嗎?
如何評價杭州的互聯網行業的現狀以及未來趨勢?
本科畢業六七年,非計算機專業的人從零開始轉行,成功進入微軟,有沒有這樣的例子?
計算機網路該怎麼學?計科學生問?

TAG:網路安全 | 驗證碼 | IT行業 |