怎麼用
調條件、按生成、拿去用
沒有帳號要辦。打開頁面時,已經有一組照預設條件生好的密碼在等你
決定長度與字元類型
長度 1 到 128,大寫、小寫、數字、符號各一個開關。強度計即時跟著動,一格 10 bits。
需要的話再加自訂
「指定字符」把字元加進候選池;「前綴/後綴」固定接在頭尾,會佔用總長度。
按「生成密碼」
按下去順手複製到剪貼簿(可關掉)。點密碼本身、或按「重新生成」換一組,都不必離開畫面。

核心設計
每個選項
都在解決一個具體問題
亂數走 CSPRNG
crypto.getRandomValues 加拒絕取樣。直接取餘數會讓前面的字元機率略高 - 生成核心裡沒有 Math.random。
字元分色
字母墨色、數字紫、符號洋紅。不是裝飾是資訊編碼 - 一眼看出組成,手動輸入不易看錯。
強度是分段計,不是進度條
10 格、一格 10 bits,滿格 100 bits。你看到的是猜中它平均要試幾次,不是「綠色代表安全」。
難打錯的密碼
可排除 1il0oO、不讓相鄰字元重複(含前後綴交界),長度夠時每個所選類型至少各出現一個。
生成後還能檢查
「組成分析」列出各類字元各幾個與熵幾 bits。前後綴是攻擊者已知的固定值,不計入強度。
資料去了哪裡
它沒有地方
可以存你的密碼
「不上傳」不是承諾,是做不到
一個沒有後端的網頁,就算想把密碼送出去也找不到收件人 - 這比任何一句隱私權政策都容易驗證沒有後端,也沒有資料庫
整個工具就是一份靜態網頁。沒有 API 可以呼叫,密碼自然沒有對象可以被送出去
密碼不寫進 localStorage
存下來的只有條件。密碼刻意留在記憶體,關掉分頁就沒了
免註冊,離線也生得出來
沒有帳號、沒有追蹤。加到主畫面就是一個 App,飛航模式照常運作

常見問題
你可能想知道的事
我怎麼知道密碼真的沒有被送出去?
這是一份純靜態網頁,沒有後端、沒有資料庫、也沒有任何 API 端點。打開開發者工具的網路分頁,除了載入頁面本身的檔案以外不會有其他連線。
要註冊嗎?沒有網路可以用嗎?
不用註冊、不用付費。從瀏覽器選單「加入主畫面」安裝後,離線也能生成 - 運算本來就在你的裝置上,網路只用來載入頁面。
為什麼不用 Math.random?
Math.random 的輸出可以被推算:取得足夠多的結果就能還原內部狀態。密碼必須用密碼學安全的亂數,所以只用 crypto.getRandomValues,並以拒絕取樣消除模數偏差。
生成過的密碼會留在瀏覽器裡嗎?
不會。localStorage 只存條件(長度、字元類型、前後綴、要不要自動複製),密碼刻意只留在記憶體,關掉分頁就沒了。要保存請自己貼進密碼管理器。
可以一次生成很多組嗎?
目前一次一組。按「重新生成」就用同一份條件換一組 - 與其一次列十組再挑,不如讓「再來一組」快到不需要挑。
現在在用的那一組
是自己想出來的嗎?
免費 · 免註冊 · 離線可用 · 密碼不離開這台裝置
