密碼與隨機數產生器
使用瀏覽器的安全隨機數,產生密碼和範圍內的隨機整數。
產生密碼
產生的密碼絕不會被儲存或上傳。重新載入後便會消失。
產生隨機整數
產生的數字絕不會被儲存或上傳。重新載入後便會消失。
儲存選項
只會儲存長度、字元類型和範圍等選項,且僅儲存在此瀏覽器中。產生的值絕不會被儲存。
如何使用密碼與隨機數產生器
密碼和數字是由瀏覽器的 crypto.getRandomValues 所產生的安全隨機數建立。產生的值只會顯示在此畫面,絕不會被儲存或上傳。
- 選擇長度和字元類型,然後按下「產生密碼」。
- 輸入範圍和數量,然後按下「產生數字」,即可在範圍內抽取整數。
- 複製結果,貼到密碼管理員或任何需要的地方。
熵是如何計算的?
我們計算包含所有選取字元類型的長度 N 字串數量,並以該數量的以 2 為底的對數作為熵(單位為位元)。只有一種字元類型時,這等於長度 × log2(字元數);由於保證包含每種選取的類型會略微減少數量,因此數值會稍低一些。
這只是理論上的估計,假設攻擊者知道長度和字元類型,且必須隨機猜測;並不保證安全。此方法下並非每種組合的機率都完全相同,因此實際值可能比顯示的略低。無論熵值多高,在其他地方重複使用的密碼,或因外洩、網路釣魚或惡意軟體而曝光的密碼,都得不到保護。
隨機整數的熵是每次抽取的選項數量取 log2 之後的總和,並且包含抽取的順序。
數字是如何均勻抽取的?
將隨機數對範圍大小取餘數,會使某些值出現得更頻繁,這稱為模偏差。本工具使用拒絕取樣:捨棄超過範圍大小最大倍數的抽取結果並重新抽取,讓每個值的機率相同。不重複的抽取則使用 Fisher–Yates 方法,一次抽取一個值。
限制
- 密碼長度為 8 到 128 個字元。
- 隨機整數的範圍為 -9,007,199,254,740,991 到 9,007,199,254,740,991,範圍大小最多為 9,007,199,254,740,991,且一次最多抽取 1,000 個數字。
- 只使用符號 !@#$%^&*()-_=+[]{}:;,.?,部分網站可能不接受全部符號。
- 由於本工具未附帶經過審核的字詞清單,因此不提供由單字組成的密碼短語模式。
- 若瀏覽器沒有安全的隨機數產生器,不會使用備用方案,而是顯示錯誤。
常見問題
產生的密碼會被上傳或儲存嗎?
不會。它們只在此瀏覽器中建立,且只顯示在畫面上。儲存按鈕只會儲存長度和字元類型等選項,絕不儲存產生的值。重新載入後便會消失,如有需要,請立即貼到密碼管理員。
為什麼要排除外觀相似的字元?
這會移除 I、l、1、O 和 0 等在某些字型中難以區分的字元,減少手動抄寫時的錯誤。字元變少,熵值會略微降低。
可以用於正式抽獎嗎?
不建議。這裡沒有稽核紀錄,也沒有外部驗證。