Tạo & kiểm tra Bcrypt
Băm một mật khẩu bằng bcrypt và xác minh một mật khẩu so với một hash bcrypt, hoàn toàn trong trình duyệt của bạn.
Công cụ liên quan
Cách dùng Bcrypt
- 01
Chọn Băm để tạo một hash, hoặc Xác minh để kiểm tra một hash.
- 02
Nhập một mật khẩu, và một hash khi xác minh.
- 03
Đọc hash bcrypt hoặc kết quả khớp.
Băm và kiểm tra mật khẩu
Một công cụ bcrypt băm mật khẩu ở mức chi phí bạn chọn, và kiểm tra một mật khẩu với một chuỗi băm bcrypt có sẵn. Mọi thứ chạy tại chỗ trong trình duyệt của bạn, nên mật khẩu ở lại trên thiết bị.
Vì sao dùng bcrypt cho mật khẩu
Bcrypt là một hàm băm mật khẩu thích ứng, được thiết kế riêng cho việc lưu trữ mật khẩu. Khác với những hàm băm nhanh như SHA-256, nó cố tình chạy chậm và có sẵn phần muối bên trong, đúng thứ bạn cần khi bảo vệ mật khẩu đã lưu.
Hệ số chi phí
Hệ số chi phí (số vòng) quy định mỗi lần băm tốn bao nhiêu công. Mỗi vòng thêm vào lại nhân đôi khối lượng tính toán, nên tăng chi phí sẽ khiến các đợt tấn công dò cạn quy mô lớn và tấn công bằng GPU chậm đi rất nhiều, trong khi một lần đăng nhập vẫn đủ nhanh. Giá trị từ 10 đến 12 là lựa chọn phổ biến.
Muối và việc kiểm tra
Bcrypt trộn một phần muối ngẫu nhiên vào mỗi lần băm, nên cùng một mật khẩu sẽ cho ra chuỗi băm khác nhau mỗi lần. Điều đó vô hiệu hóa các bảng cầu vồng tính sẵn, và việc kiểm tra vẫn chạy được vì phần muối được lưu ngay trong chuỗi băm.
Để kiểm tra một mật khẩu, chế độ xác minh đọc phần muối và chi phí từ chuỗi băm đã lưu, băm mật khẩu cần kiểm tra theo đúng cách đó rồi so sánh, và đó là lý do bạn chỉ cần chuỗi băm cùng mật khẩu chứ không cần phần muối gốc.
Lưu ý về an toàn
Việc băm và kiểm tra chạy hoàn toàn trong trình duyệt của bạn, nên không có gì được tải lên. Dù vậy, hãy tránh dán mật khẩu thật của môi trường chạy thật trên một máy tính dùng chung.
Câu hỏi thường gặp
Số vòng là gì?
Hệ số chi phí: mỗi vòng thêm nhân đôi công sức cần để tính hash, làm cho các cuộc tấn công vét cạn chậm hơn. 10 đến 12 là lựa chọn phổ biến.
Tại sao hash của cùng một mật khẩu khác nhau mỗi lần?
Bcrypt bao gồm một salt ngẫu nhiên trong mỗi hash, nên đầu ra khác nhau ngay cả với cùng một mật khẩu. Việc xác minh vẫn hoạt động vì salt được lưu bên trong hash.
Dùng cái này có an toàn không?
Việc băm chạy hoàn toàn trong trình duyệt của bạn, nên mật khẩu không được tải lên. Tuy vậy, hãy tránh dán mật khẩu sản xuất thật trên máy tính dùng chung.