跳到主要內容

隨機工具 / 011

隨機密碼產生器

一鍵產生高強度隨機密碼,可自訂長度,使用瀏覽器原生加密亂數,密碼不會離開你的電腦。

16
1100
產生的密碼

尚未產生

為什麼做這個

很多線上密碼產生器用 Math.random() 產生密碼,這在密碼學上不算安全的亂數來源。這個版本改用瀏覽器原生的 crypto.getRandomValues(),並用拒絕抽樣避免 modulo bias。

這個工具怎麼用

密碼的強度取決於長度與字元種類。同樣是亂數,8 位的密碼在現代硬體上數小時就能被暴力破解,16 位則需要數萬年。先把長度拉到 16 以上,再決定要不要加符號。

大小寫、數字、符號四種字元類型每多開一種,可能的組合數就往上跳一個量級。如果某個網站不接受特殊符號,關掉符號、把長度再拉長幾位,強度一樣守得住。

「排除易混淆字元」會拿掉 0 與 O、1 與 l 這幾組,適合需要手抄或唸給別人聽的場合。代價是可用字元變少,建議搭配更長的長度使用。

產生的密碼只存在於這個分頁的記憶體裡,不會寫進瀏覽器的儲存空間。關掉分頁就消失,請先複製再離開。

常見問題

這個工具產生的密碼安全嗎?

密碼使用瀏覽器內建的 crypto.getRandomValues() 產生,這是專為加密用途設計的亂數來源,不是一般的 Math.random(),並以拒絕抽樣避免取模造成的字元分布偏差。

密碼會被記錄下來嗎?

不會。這個站沒有資料庫、沒有後端 API,也沒有帳號系統。產生的密碼只存在於當前分頁的記憶體,重新整理或關閉分頁就消失。

應該設定多長?

一般網站建議 16 位以上;金融帳號或主信箱建議 20 位以上並開啟全部字元類型。如果是需要自己記住的密碼,拉長度比加符號有效得多。

為什麼要排除易混淆字元?

0 與 O、1 與 l 在多數字體下難以分辨。需要手抄、唸給客服聽或印在紙本上時開啟這個選項,可以避免輸入錯誤。