跳到正文
馬克工具箱

隨機密碼產生器

用密碼學安全的隨機數生成高強度密碼。可以選擇長度和字元型別、排除容易看錯的字元,並顯示密碼的熵值。密碼在你的裝置上生成,不會發送到任何地方。

在瀏覽器本地執行,輸入的內容和檔案都不會上傳

非常強熵 104 位元

按每秒 100 億次暴力破解:比宇宙年齡還長

16

使用步驟

  1. 設定長度:儲存在密碼管理器裡的帳號,16 位以上是不錯的預設值。
  2. 選擇包含的字元型別,以及是否排除 I、l、1、O、0 等容易混淆的字元。
  3. 如果網站不接受某些字元(比如引號、空格),填到「排除指定字元」裡。
  4. 複製密碼,或一次生成多個並全部複製。

引數說明

長度
每增加一位,可能的密碼數量就成倍增長。長度比符號更重要:16 位純小寫字母比 10 位混合字元更強。
排除易混字元
去掉 I、l、1、|、O、0、o 和引號,便於口頭告知或從紙上抄寫,會略微降低熵值。
每類字元至少出現一次
保證每種選中的字元型別至少出現一個,滿足很多註冊頁面「必須包含大小寫字母和數字」的要求。
熵
生成結果中的隨機性位元數,等於長度 × log₂(字元集大小)。60 位元一般,80 以上強,100 以上非常強。

長度與字元型別的對比

僅由對應字元組成的密碼的熵:

字元集 8 位 12 位 16 位 20 位
純數字(10) 27 位元 40 位元 53 位元 66 位元
小寫字母(26) 38 位元 56 位元 75 位元 94 位元
字母 + 數字(62) 48 位元 71 位元 95 位元 119 位元
四類全選(89) 52 位元 78 位元 104 位元 130 位元

多加 4 位長度,比給短密碼加符號更有效。常見的 6 位純數字支付密碼只有約 20 位元,只能依靠錯誤次數限制來保護。

常見問題

生成的密碼真的隨機嗎?

是的。密碼來自瀏覽器的密碼學安全隨機數產生器 crypto.getRandomValues,並用拒絕取樣選取字元,保證每個字元出現的機率完全相同。

你們能看到或儲存我的密碼嗎?

不能。密碼由你裝置上的 JavaScript 生成,不會傳輸到任何地方,也不會被儲存。

密碼多長才夠?

儲存在密碼管理器裡的帳號,16–20 位隨機字元已經足夠。需要記在腦子裡的主密碼,建議用由多個隨機單片語成的長口令。

破解時間是怎麼算的?

按每秒 100 億次猜測進行暴力破解所需的平均時間,大致相當於用高效能顯示卡離線破解快速雜湊。線上攻擊網站時由於有頻率限制會慢得多,但應按最壞情況考慮。

一個強密碼能在多個網站通用嗎?

不要這樣做。一旦某個網站洩露,攻擊者會拿它去所有網站嘗試(撞庫)。每個帳號用不同的密碼,交給密碼管理器記住。

隱私說明

本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。

相關工具