如何創建高強度密碼并強化帳戶安全性

0 評論 2852 瀏覽 3 收藏 9 分鐘

當我們在創建或更改密碼時,一般需要滿足復雜性要求。但是隨機密碼難以記憶,因此大多數人都使用類似的、可預測的方式創建密碼,這使得攻擊者更容易破解密碼。那么,如何創建高強度密碼,并強化賬戶安全性呢?本文作者對此進行了分析,一起來看一下吧。

通常當我們在創建或更改密碼時,密碼必須滿足密碼復雜性要求。例如密碼需要包含大小寫字母、數字和符號。

如下表所示,假定密碼長度8位,使用更大的字符集的確能夠產生出更多種組合,理論上攻擊者必須嘗試所有可能的組合才能破解密碼。

然而,人為創建的密碼并不是隨機的,因為隨機密碼難以記憶。米勒對短期記憶能力進行了定量研究,年輕人的記憶廣度大約為7個數字、6個字母、5個單詞。密碼復雜性要求使記憶變得更加困難,其迫使大多數人使用類似的、可預測的方式創建密碼,反而導致密碼有規可循。主要有以下幾種方式:

  • 首位是大寫字母,末位是數字或符號。
  • 常見的單詞使用數字或符號的僅外觀類似替換,例如使用“$”替換”s”,“@”替換“a”,數字“0”、“5”、“1”替換英文字母“o”、“s”、“i”等。
  • 常見的單詞或短語末尾附加數字。

掌握這些規律攻擊者更容易破解密碼。攻擊者不一定會逐一嘗試所有可能的組合,而是選擇一種更合乎邏輯的方式,從更可能的組合開始嘗試。攻擊者通過最常見的替換來運行字典攻擊,例如,如果單詞“password”在字典列表中,攻擊者可以嘗試使用“P@ssw0rd”、“P@55word”或“P@55w0rd”等變體來破解密碼。除了這些常見的替換之外,攻擊者還可能嘗試使用常見的單詞或短語,在末尾附加數字。字典攻擊很大程度上縮小了密碼組合的范圍,縮短了破解的時間。

即使密碼是隨機生成的,以目前的技術,運行在專用硬件(例如高端GPU集群)上的高度優化的密碼破解軟件可以每秒測試數十億個密碼組合,攻擊者使用如此強大的密碼破解軟件,破解密碼可能也只需要幾分鐘到幾小時。另一方面,用戶難以記住隨機生成的密碼,可能會以不安全的方式存儲他們的密碼,例如寫在一張便條紙上,放在計算機附近。

總體而言,從安全和好記的角度來看,密碼復雜性要求弊大于利。

在密碼中使用混合字符類型的建議最初是Bill Burr于2003年在美國國家標準技術研究所(NIST)工作時撰寫的一份文件《NIST SP800-63》中提出的,2017年他在接受華爾街日報采訪時公開道歉,稱當時他并沒有得到可靠的數據作嚴謹研究,只依靠來自八十年代、不合時宜的舊文件作為參考,而他的建議也沒有考慮到一般人的生活習慣及思考模式。

2017年6月,NIST發布了新版《NIST SP800-63》,其中包含對其密碼建議的更新,不再強調在密碼中使用混合字符類型,而是鼓勵用戶在合理范圍內使用更長的密碼或密碼短語作為增強安全性的更有效方法。

創建一個長且易于記憶的密碼可能具有挑戰性,以下一些方法可以提供幫助:

  • 使用密碼短語:不要使用單個單詞,而是使用由幾個不相關單詞組合而成的密碼短語,這樣可以更容易記住密碼,同時也增加了密碼的長度和復雜性。例如,你可以使用“correct horse battery staple”之類的短語。(實例已經公開,所以已經不具備安全性,只作為說明例子)。
  • 使用助記符:你可以使用句子或歌曲歌詞中每個單詞的首字母來創建密碼。
  • 使用來自可信來源且受信任的密碼管理器創建并存儲密碼。

以下是創建密碼時需要避免的一些額外事項:

  • 避免使用你的姓名、生日或地址等個人信息,因為這些信息可以在網上找到,身邊熟悉的人知道也個人信息也容易猜到密碼。
  • 避免使用常見的單詞或短語,因為使用基于字典的攻擊很容易猜到這些單詞或短語。
  • 避免使用連續或重復的字符,因為這些很容易被攻擊者猜到。
  • 避免使用短密碼,因為它們很容易被暴力破解。
  • 避免為多個帳戶使用相同的密碼,因為如果一個密碼被泄露,攻擊者更容易訪問你的所有帳戶。
  • 避免使用常見的字母替換,例如使用“0”替換“o”或使用“@”替換“a”,因為這些都是眾所周知的并且很容易被攻擊者猜到。

如何記住密碼?

建議使用來自可信來源且受信任的密碼管理器存儲密碼,你只需記住一個主密碼即可訪問所有已保存的密碼。這降低了使用弱密碼、重復使用密碼或忘記復雜密碼的風險。此外,許多密碼管理器可以自動填寫平臺上的登錄信息,這可以節省時間并降低手動輸入密碼時出現拼寫錯誤或其他錯誤的風險。

作為身份驗證者,在處理密碼創建和更改請求時,以下一些方法可以提供幫助:

  • 確保密碼滿足最小長度要求。建議密碼的最小長度為12個字符。
  • 將用戶創建的密碼與包含已知常用或泄露的密碼列表進行比較,以確保用戶沒有使用容易猜到或泄露的密碼。
  • 向用戶反饋密碼被拒絕的明確原因,并提供創建更強密碼的建議。

不要僅依賴密碼。

即使是最強的密碼也可能被泄露,減輕這種風險的一種方法是使用雙因素身份驗證(2FA)。2FA通過要求用戶提供兩種類型的身份驗證因素來訪問其帳戶,從而為身份驗證過程增加了額外的安全層。一些常見的2FA類型包括短信驗證碼、身份驗證器應用程序、硬件令牌和生物識別身份驗證。

感謝閱讀,以上就是本次分享的全部內容,希望你能從這篇文章中有所收獲,記得點贊/收藏/分享/關注,后續將會持續更新。

本文由@張楚 原創發布于人人都是產品經理,未經許可,禁止轉載。

題圖來自 Unsplash,基于 CC0 協議。

該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!