密碼強度

密碼強度

密碼強度,指一個密碼對抗猜測或是暴力破解的有效程度。一般來說,指一個未授權的訪問者得到正確密碼的平均嘗試次數。密碼的強度和其長度、複雜度及不可預測度有關。強密碼可以降低安全漏洞的整體風險,但並不能降低採取其他安全措施的需要。

攻擊者可以提交猜測到的密碼的速率是衡量一個系統安全性的重要因素。有的系統在多次嘗試失敗後會暫停登入一段時間,在沒有其他安全缺陷時,這種系統可以用相對簡單的密碼保護。但是系統必須以某種形式存儲用戶密碼,而當這些數據被盜時,就有極大的危險。

基本介紹

  • 中文名:密碼強度
  • 外文名:password strength
  • 弱密碼:短密碼、數字密碼、常見的密碼等
  • 強密碼:長度足夠長,排列隨機
  • 學科:密碼學
  • 領域:密碼學
創建密碼,密碼驗證,弱密碼,強密碼,保護用戶密碼,

創建密碼

密碼可以被自動(使用隨機方式)或人為創建出來,後一種更為常見。暴力破解隨機密碼的強度可以精確計算,而計算人類產生的密碼強度是比較難的。一般而言,人在創建一個新賬戶時都被要求輸入密碼。因為人一般都會模式化地創建密碼,粗略地估計這種密碼的強度是可能的,而這些模式就可以方便攻擊者。
另外,密碼破解器經常從常用密碼錶中選取密碼,這些密碼錶包含各種人類語言的線上詞典、許多被黑的資料庫中的商業或社交賬戶的明文或散列密碼,與其他常見的密碼。因此,所有在表上的或與其相似的密碼都被認為是弱密碼。數十年來,對多用戶計算機系統的密碼調查表明,40%或更多隻使用電腦程式就可以破解出來,並且當某個賬戶已被侵入時更加容易。

密碼驗證

使用密碼進行身份認證的系統都一定有一套驗證輸入密碼的機制,如果這些密碼只是簡單地明文存儲在系統上,一個擁有足夠許可權的攻擊者就可以獲取到在系統上存儲的所有用戶名和密碼,使得整個系統向攻擊者敞開,甚至會危及其他使用同樣或相似的密碼的系統。一個減少危險的辦法就是用密碼散列函式加密密碼。諸如SHA的函式是很難由散列值算出原文的,一定程度上防範了攻擊。然而攻擊者可以用碰撞的方法猜測明文,如今的密碼破解程式也可以通過暴力破解的方式從散列值找出明文密碼。
日益進步的計算機科學也加快了測試密碼的速度。2007年8月,Elcomsoft公司發明了使用普通的繪圖卡反向計算密碼的技術並開始使用,隨後在美國申請了專利。2010年,喬治亞技術研究所使用GPGPU使得破解密碼的速度提升。在2011年,商業產品也宣稱他們可以在一台普通的桌上型電腦上使用高端的GPU來每秒測試高達2,800,000,000個密碼,這樣的設備可以一天之內破解一個由10個字母組成的密碼。而且,這些都可以並行在多台計算機上進行處理來提高速度。
改變常見散列的算法可以相對地增加一些計算的時間,但並未廣泛採用。

弱密碼

弱密碼是易於猜測的密碼,主要有以下幾種:
  1. 順序或重複的字元:“12345678”、“111111”、“abcdefg”、“asdf”、“qwer”鍵盤上的相鄰字母;
  2. 使用數字或符號的僅外觀類似替換,例如使用數字“1”、“0”替換英文字母“i”、“O”,字元“@”替換字母“a”等;
  3. 登錄名的一部分:密碼為登錄名的一部分或完全和登錄名相同;
  4. 常用的單詞:如自己和熟人的名字及其縮寫,常用的單詞及其縮寫,寵物的名字等;
  5. 常用數字:比如自己或熟人的生日、證件編號等,以及這些數字與名字、稱號等字母的簡單組合。
下面是一些常見的弱密碼:
  • admin——太容易猜出
  • 123——同上
  • abcde——同上
  • abc123——同上
  • 123456——由於文化因素極其常用
  • 1234——同上
  • 888888——同上
  • 1234567890——同上
  • susan——常見人名
  • BarackObama——高知名度人物
  • monkey——常見動物名且正好六位
  • password——經常被使用,極易猜出
  • p@$$\/\/0rd——簡單的字母替換,易被黑客軟體破譯
  • rover——寵物的常用名稱,也是一個單詞
  • 12/3/75——日期
  • nbusr123——可能是用戶名,如果是這樣的話很容易被猜出
  • asdf——常用鍵盤的鍵排列
  • qwerty——常用鍵盤的鍵排列
  • aaaaa——重複的字母,極易被破解
  • Taiwan——地名
  • administrator--太容易猜出

上面的列表只是列舉了很少一部分弱密碼。
此外,一家美國公司SplashData曾經總結出2011年最弱的25個密碼,其中有的已經列在上面。而像let me in這樣的密碼由於屬於常見詞組且正好六位,很容易被破譯。據統計,3.8% 的密碼是字典里的單詞,12% 的密碼是單詞加一個數字,其中 2/3 的機會密碼是數字 1。
很多用戶不更換預設密碼,而大部分計算機系統的預設密碼可以在網上找到,極易被破解。如果用戶使用個人信息(例如學號、朋友的名字、熟人的生日、電話號碼或駕駛執照號碼等)作為密碼,那么這個密碼便會很容易被破解,因為如今很多個人的信息都可以在網路上找到。
太短的密碼,雖然容易輸入,但是也很容易被黑客攻破。

強密碼

一個強密碼通常長度足夠長,排列隨機,這樣就需要花很多時間才能夠破解。下面是強密碼的一些例子(由於以下實例已經公開,所以已經不具備安全性,只作為說明例子):
  • t3MEIfreryeT45410A——不是字典的單詞,既有數字也有字母
  • w2M1gD1cxJhs5UH4pQh1EgjOU9yWYRkk——同上
  • Convert_100£ to Euros!——足夠長,並且有擴展符號增加強度
  • *ot$fet÷×’Fr54⅛9&%u——含鍵盤上沒有的字元
  • 9fad37a6aab5912dfa273521d11e0175fa0e8c95——隨機字串
  • aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbccdeertttteferwrwerewrwererewreew——很長的字串幾乎不可能破解
  • hellomicrosoftwikiwikipediaandadminadmintestactioneditsection——同上
  • RBDeT9hqRfS9gw9bEXmRhBrkkgCs2NMfpzWfQXfN3MPZW25wSsHWEsbexVpYtsWs——同上
  • ru0 ej03m06vm03rm3vu04u3d9 g3fu/32u03h3w.6qul4——同上,對於兩者之間使用不同輸入法的人極難以破解
上面列出的強密碼的例子的共同特點是相對較長,使用大小寫字母、數字和符號的組合。密碼越長,使用的符號種類越多,就越難破解。值得注意的是,有些系統不支持“#”、“@”和“!”作為密碼中的字元,因為這些字元可能在有些鍵盤很難找到。在這種情況下,增加其它的數字或字母可以達到同樣的安全效果。
一個10位長的隨機密碼,比如“BpR#e!ai@$”,雖然強度遠弱於上面列出的密碼,是不可能在短時間內通過全部列舉來破譯的。
強密碼應該包括14個字元或更長(至少8個字元或更長),由包括大小寫字母、數字和符號在內的組合。
國家標準技術研究所改正建議
2017年6月,國家標準技術研究所發布新的《800-63》指引第三版,改正已沿用超過十年、受各大政府機構、銀行、業界採用的舊建議,不再強調使用人腦難以記憶的特別符號、數字的無意義組合,而且亦不再建議密碼需每九十日汰換,因為經研究證明此項指引並沒有對系統安全帶來有益的效果。NIST 檔案的舊版原作者伯爾(Bill Burr)並在《華爾街日報》訪問中公開道歉,稱當時他並無得到可靠的數據作嚴謹研究,只依靠來自八十年代、不合時宜的舊檔案在參考,而他的建議亦沒有考慮到一般常人生活習慣及思考模式。負責撰寫新版指引的 NIST 顧問格拉西(Paul Grassi)指,舊的要求不利使用,對抵擋駭客攻擊的作用不大;如果用戶能夠在腦海中構想出一幅其他人無法想像的圖畫,以此作為密碼便是最好的,一句夠長的完整句子,會優於較短的字母、數字及符號混合密碼。華爾街日報引用廣泛流傳的xkcd漫畫,指出只要密碼夠長,拼合幾個看似無意義、但便於該用戶記憶的字詞作為密碼,更能有效抵擋駭客攻擊,暴力破解會需時更久。

保護用戶密碼

通常,計算機用戶被建議“不要在任何地方因任何原因寫下密碼”或“不要在不同的帳號使用同一個密碼”。實際上,一個計算機用戶通常有十幾個密碼保護的帳號,並使用同一個密碼。而那些試圖使用不同密碼的用戶往往由於密碼太多,而記不清哪個帳戶和哪個密碼相對應。2005年的一次安全會議上,來自微軟的一個專家提出:“我認為密碼策略應改為你可以寫下你的密碼。我有68個不同的密碼,如果我不允許將他們寫下來,我將怎么辦?我不得不使用同樣的密碼”。比較好且實際的建議是在一個低安全性的帳號(如bbs)使用簡單的密碼,在高安全性的程式(如線上銀行)使用強密碼。
一旦密碼被寫下來,用戶不能將它放在一些明顯的地方,如通信錄,抽屜等。最糟糕可能也是最常見的情況是密碼被寫在一張便條紙上,放在計算機附近。比較安全的做法是放在保險箱里。

相關詞條

熱門詞條

聯絡我們