密碼強度檢測

密碼強度檢測工具可依據密碼長度、使用的字元種類與常見的弱密碼模式,免費為你的密碼評分。所有檢測都在瀏覽器本機完成,不會將密碼內容傳送到任何伺服器,安心又安全。

密碼強度檢測是什麼

密碼強度檢測是一款免費工具,會依據你輸入密碼的字元數、使用的字元種類,以及常見的弱密碼模式(連續排列、重複字元、鍵盤排列順序、已知外洩密碼),評估這組密碼有多難被猜中。檢測結果會以「非常弱」到「非常強」共5個等級呈現,同時顯示預估資訊熵(位元數),以及在不同攻擊情境下大約需要多久才會被破解的時間估算。

相對於既有的crypto.generator.password(隨機密碼產生器)是用來「產生」新密碼的工具,本工具則是反方向的應用——用來「檢測」你已經想好或正在使用的密碼強度。輸入的密碼完全不會傳送到外部,所有檢測程序都在你的瀏覽器內部完成。

密碼強度檢測的使用方式

  1. 輸入想檢測的密碼 在輸入欄位中輸入字串,檢測結果就會即時更新顯示。
  2. 用顯示按鈕確認輸入內容 如果想確認有沒有打錯字,可以按下「顯示」按鈕讓字元變成可見狀態。
  3. 查看強度計量表與注意事項 確認5個等級的計量表,以及偵測到的弱密碼模式清單。
  4. 查看破解所需的時間估算 分別確認在線上與離線攻擊情境下,暴力破解大約需要多久時間。
  5. 視情況調整為更安全的密碼 如果強度不夠,可以嘗試增加字元數、增加字元種類,或避開常見的弱密碼模式重新設定。

用好本工具的小技巧

  • 不必直接輸入正在使用的真實密碼,只要用結構相似(長度、字元種類、排列方式相同)的假密碼,也能大致掌握強度趨勢。雖然本工具的檢測完全在裝置端完成、輸入真實密碼並不會外洩,但如果你還是會擔心,這個方法可以讓你更安心。
  • 就算被判定為「非常強」,只要這組密碼同時用在其他服務上,一旦其中一個平台外洩,其他帳號也會跟著暴露在風險中。請務必替每個服務設定不同的密碼。
  • 把長度增加1個字元,通常比多加1個符號更能有效提升強度。如果不確定該怎麼調整,建議優先拉長密碼,而不是急著加入更多字元種類。
  • 檢測結果中「暴力破解所需時間預估」只是理論上的參考值。實際攻擊者常會併用字典攻擊、個人資料推測等手法,請不要過度依賴這個數字。
  • 把crypto.generator.password(隨機密碼產生器)產生的候選密碼貼到這裡確認,可以立刻驗證產生出來的密碼是否真的達到你想要的強度。

密碼強度檢測的應用場景

註冊新帳號前先確認密碼

在註冊新服務之前,可以事先確認想使用的密碼強度是否足夠。

盤點既有密碼

重新檢視用了很久的密碼,看看以現在的標準來說是否仍然足夠安全,是很好的提醒時機。

公司內部密碼政策的說明教材

可以搭配實際的檢測結果,向同事說明「長度比複雜度更重要」這個觀念。

驗證密碼產生工具的成果

把crypto.generator.password產生的候選密碼貼過來,就能立刻確認是否達到預期的強度。

名詞解說

資訊熵
用來表示密碼有多難被猜中的位元單位指標。字元數與字元種類越多,數值就越大,需要嘗試的組合數也會呈指數成長。
暴力破解
一種機械式地嘗試所有可能組合、藉此找出正確密碼的攻擊手法。
字典攻擊
優先嘗試常見單字、常用片語,或過去外洩密碼清單中內容的攻擊手法。單純的單字或已知的弱密碼,會比一般暴力破解更快被找出來。
憑證填充攻擊
利用某個服務外洩的電子郵件與密碼組合,嘗試登入其他服務的攻擊方式。重複使用同一組密碼,正是讓災情擴大的主要原因。
加鹽(Salt)
在將密碼雜湊化儲存時額外加入的隨機字串。即使是相同的密碼,儲存下來的雜湊值也會不一樣,藉此防止利用事先計算好的對照表(彩虹表)發動攻擊。
密碼管理器
能為每個服務產生、記憶並自動輸入不同高強度密碼的軟體。可以在避免重複使用密碼的同時,享有高強度密碼帶來的保護。
Passkey(通行密鑰)
不使用密碼,而是結合裝置的生物辨識或螢幕鎖定機制來驗證身分的登入方式。一般認為對釣魚攻擊與密碼外洩有較高的防護力。

常見問題

不會。所有檢測都是由你瀏覽器內的JavaScript直接完成,輸入的字串完全不會傳送到伺服器。只要關閉頁面,輸入的內容也會一併消失。

並不是。這項檢測終究只是依據字元數、字元種類與已知弱密碼模式所做的理論參考。像是釣魚攻擊或服務端本身的資料外洩,都與密碼強度無關,仍有可能造成損害。建議搭配雙重驗證一起使用。

這是用來量化密碼有多難被猜中的指標。位元數每增加1,理論上需要嘗試的組合數大約會變成2倍。一般認為60位元以上就具備實用等級的強度。

因為某個服務外洩的電子郵件與密碼組合,很可能被拿去對其他服務進行「憑證填充攻擊」(試圖用同一組帳密登入)。就算密碼本身強度很高,只要重複使用,一旦有一處外洩,其他帳號也會跟著陷入風險。

加入符號確實能增加可用的字元種類,但效果通常不如增加長度來得顯著。建議先確保足夠的長度,有餘力的話再進一步增加字元種類。
工具君

閒話一下 ― 密碼「複雜度」的迷思

過去許多服務都強制要求密碼必須同時包含大寫、小寫、數字與符號。然而這套規則忽略了一個事實:人類其實很不擅長記憶脫離慣性模式的字串。結果是,許多人都會不約而同地採用「Password1!」這類容易預測的變化方式——把單字字首改成大寫,再於結尾隨便加一個數字和一個符號。攻擊者也早就摸透這種習慣,所以這類變化往往在暴力破解的最初階段就會被優先嘗試。

有鑑於此,美國國家標準與技術研究院(NIST)於2017年發布的指引(SP 800-63B)大幅調整了方向。內容明確指出,與其強制定期更換密碼、要求各種複雜度規則,不如單純確保「長度」更能帶來實質的強度提升。這其實是個有趣的反直覺現象:由幾個不相關單字串成的較長密碼短句,對人類來說反而比短又隨機的字串更好記,對電腦來說卻更難破解。

話雖如此,把又長又複雜的密碼完全交給人腦去記,這種設計本身終究有其極限。近年來,透過密碼管理器產生並保管隨機字串,或是結合生物辨識的Passkey(通行密鑰)等「不需要記密碼」的驗證方式,都正快速普及。透過這款工具了解自己密碼的弱點,也能成為思考下一步該如何升級的契機。