安全性 / 密碼

bcrypt雜湊產生器與檢查工具

選擇所需的成本值來產生bcrypt密碼雜湊,或檢查密碼是否符合現有雜湊,全程在瀏覽器中完成。

bcrypt雜湊產生器與檢查工具: bcrypt由Niels Provos和David Mazières於1999年設計,會搭配隨機的16-byte salt,執行2^cost次Blowfish金鑰排程,讓攻擊者每次猜測都必須付出同樣緩慢的運算成本。結果會將版本、成本值、salt和雜湊放在同一個60字元字串中。這裡的實作已與Python bcrypt套件比對確認,包含Unicode和過長密碼的情況。 全程在瀏覽器中於本機執行,檔案不會上傳至伺服器。

使用次數
在瀏覽器中
費用
免費・免註冊
可用狀態
可立即使用
bcrypt 產生器本機處理

全程在瀏覽器中執行

所有內容都在此瀏覽器中執行,密碼和 hash 絕不會傳送到任何地方。成本 10–12 適合大多數登入情境:每提高一級,所需時間就會加倍。

安全儲存密碼

絕不要以純文字儲存密碼,也不要使用MD5或SHA-256等快速雜湊,因為顯示卡每秒可以嘗試數十億次。bcrypt、scrypt和Argon2的運算速度刻意設計得較慢,並加入salt,因此即使資料庫遭竊,也會更難破解。

對於網頁伺服器登入,htpasswd產生器會寫入完整的使用者資料列;若要建立密碼本身,請使用密碼產生器。

讀取bcrypt雜湊

在$2b$12$R9h/cIPz0gi.URNNX3kh2OPST9/PgBkqquzi.Ss7KIUgO2t0jWMUW中,2b是版本,12是成本,接下來的22個字元是salt,最後31個字元是雜湊。由於salt和成本值會隨雜湊一併儲存,伺服器可以提高新密碼的成本,而不會影響舊密碼。

使用方式

  1. 輸入密碼並選擇成本值;10到12適合大多數網站。
  2. 產生雜湊,然後複製到資料庫或設定中。
  3. 若要測試儲存的雜湊,切換至檢查模式、貼上雜湊,再輸入密碼。

隱私與限制

密碼和雜湊會留在您的瀏覽器中,不會傳送至伺服器。

相關工具

常見問題

我應該使用哪個成本值?

使用您的伺服器在每次登入時能負擔的最高值,通常是10–12;OWASP建議至少使用10。每增加1級,所需時間就會加倍,因此請將這裡顯示的時間與您最慢的伺服器比較。

$2a$、$2b$和$2y$有什麼差別?

它們對一般密碼產生的雜湊相同。$2b$代表OpenBSD在2014年針對超長密碼修正的版本;$2y$代表PHP在2011年針對另一個實作中的錯誤所做的修正。PHP和Apache的htpasswd會寫入$2y$,其他大多數函式庫則會寫入$2b$。

為什麼我的長密碼只使用開頭部分也能通過?

bcrypt只會使用前72 bytes,而許多函式庫會靜默截斷更長的密碼;發生這種情況時,工具會顯示警告。英文以外的字母各會佔用2–4 bytes。

免費工具・使用在瀏覽器中次・免註冊