如何建立強密碼?

強密碼是攻擊者無法在任何現實可行的時間內猜出、並且您沒有在其他地方用過的密碼。短而可預測的密碼最容易被猜中,重複使用的密碼會在洩漏後被拿到其他服務上嘗試;這兩個弱點都很容易解決。強密碼並不能防範一切:它擋不住釣魚頁面或惡意軟體,所以下面最後幾步講的並不是密碼本身。本文先給出簡要答案,再解釋每一步為什麼有效。

簡要答案

  1. 用產生器產生密碼,而不是自己編:只要網站允許,就用 16 個或更多字元。
  2. 使用網站接受的所有字元類型:大寫和小寫字母、數字和符號。
  3. 把它保存在密碼管理器中。
  4. 只把它用於一個帳號。
  5. 開啟雙重認證,如果服務支援,也可以使用通行密鑰(passkey),並保管好備援代碼。

什麼讓密碼變強

決定密碼強度的有三個屬性。長度:每多一個隨機字元,攻擊者需要嘗試的組合數量就成倍增加。隨機性:密碼的強度取決於產生它的過程,因此由機器選出的 12 個字元,遠比拼出一個名字和年份的 12 個字元強。唯一性:在兩個網站上使用的密碼,安全程度只相當於其中較弱的那個網站,因為從一個服務洩漏的密碼會被例行地拿到其他所有服務上嘗試。

強度以熵的位元數衡量,每增加 1 位元,所需的猜測次數就翻一倍。從 62 種可能中隨機選出的一個字元——拉丁字母 a–z 和 A–Z 以及數字 0–9,機率全部相等——約提供 6 位元,因此 12 個這樣的字元約有 71 位元,16 個約有 95 位元。這些數字只在每個字元都獨立、隨機選取時成立;對於人自己想出來的密碼,它們說明不了任何問題。在我們的產生器為其產生的密碼顯示的標尺上,60 位元對日常帳號來說是合理的,80 位元算強,100 位元則超出了當今硬體暴力破解的實際能力。這些是參考點而不是標準:密碼在實踐中能抵禦多少,還取決於服務如何儲存它以及它受到怎樣的攻擊。

為什麼常見的小技巧不管用

人們選擇密碼的方式驚人地相似,而破解工具正是圍繞這些習慣建構的:

它們的共同缺陷是遵循了人類選擇的可預測模式。那些旨在強制複雜性的規則——一個符號、一個數字、每 90 天換一個新密碼——恰恰把人推向這些模式。因此,NIST 當前的指南要求服務不要強制規定組成規則或定期更換,而應改為對照已洩漏密碼的清單檢查新密碼。

需要自己輸入的密碼:使用密碼短語

有少數密碼需要在沒有密碼管理器的情況下輸入:密碼管理器本身的主密碼、電腦或手機的登入密碼,以及對許多人來說主信箱帳號的密碼。這些密碼請使用密碼短語(passphrase)——幾個隨機選出的單字,而不是您自己編的一句話。經典方法是 Diceware,EFF 發布了專為此製作的詞表;請使用其中名為 EFF Long Wordlist 的英文詞表:

  1. 打開詞表:它有 7776 個單字,每個都用 1 到 6 組成的五位數編號。
  2. 用一顆普通的六面骰子擲五次,或者一次擲五顆骰子、從左到右讀數,按順序記下這五個數字。
  3. 找到這個編號對應的單字。
  4. 重複,直到得到六個單字。
  5. 保留單字抽出時的原樣,即使其中有重複,或者您更想要好聽些的詞。為了記住它們,可以圍繞它們想像一個畫面或一個故事——但不要改動單字或它們的順序。

每個單字約增加 12.9 位元,因此五個單字約 65 位元,六個約 78 位元,而六個普通單字比同等強度的符號串好記、好輸入得多。這個方法要奏效需要兩個條件。單字必須靠偶然選出,因為歌詞或喜歡的名言早已在攻擊者的字典裡;出於同樣的原因,絕不要使用您在任何地方見過的範例短語。而且短語不能重複使用:一個密碼短語,只用於一個地方。

其他所有密碼:交給產生器

對於幾十個您從來不用手動輸入密碼的帳號,沒有任何理由自己編密碼。我們的強密碼產生器用 Web Crypto API 在您的瀏覽器中產生每個密碼,密碼從不傳送到伺服器。把長度設為 16 或更多,選擇網站接受的字元類別,然後點擊產生;結果下方的熵估計以位元顯示強度。排除易混淆字元會去掉容易混淆的字元(Il1O0o),適用於需要大聲讀出或照著螢幕輸入密碼的情況;在同時設定多個帳號時,數量可以一次產生整份清單。

有些網站仍然限制長度或禁止某些符號。如果某個網站拒絕了產生結果,只關閉它禁止的那些符號類型,保持長度不變;只有在網站確實限制長度時才縮短密碼。無論如何,不要退回到自己編的密碼:12 個字元的隨機密碼仍然遠勝於自以為巧妙的密碼。

密碼存放在哪裡

為每個帳號使用唯一的隨機密碼,最方便的保存方式是密碼管理器:它儲存密碼、自動填寫,許多管理器還會在某個密碼出現在已知洩漏中時提醒您。這樣您只需記住一個密碼短語,而不是一百個密碼。如果您不想使用密碼管理器,把密碼記在一個放在家中安全位置、訪客看不到的筆記本上,風險也比重複使用密碼小。行不通的做法是:桌面上的文字檔案、即時通訊軟體裡的備忘,或貼在辦公室螢幕上的便利貼。

簡短檢查清單

想了解這些規則為何存在,請閱讀密碼是如何被破解的。更多文章收錄在密碼資料中。