Trình tạo và xác minh Bcrypt
Bcrypt là gì?
Bcrypt là hàm băm mật khẩu được thiết kế để bảo mật. Không giống như các hàm băm nhanh (MD5, SHA-1), bcrypt chủ ý chậm thông qua hệ số chi phí có thể cấu hình — làm cho các cuộc tấn công brute-force trở nên không thực tế. Mỗi băm bao gồm một salt ngẫu nhiên, vì vậy các mật khẩu giống nhau tạo ra các băm khác nhau. Hệ số chi phí (vòng) nhân đôi thời gian tính toán cho mỗi lần tăng: chi phí 10 mất ~100ms, chi phí 12 mất ~400ms, chi phí 14 mất ~1,5s. Không bao giờ lưu trữ mật khẩu dưới dạng văn bản thuần túy — luôn băm bằng bcrypt hoặc hàm thích ứng tương tự.
Cách sử dụng trình tạo Bcrypt
-
Nhập mật khẩu của bạn vào tab 'Hash' và chọn hệ số chi phí (khuyến nghị 10–12 cho hầu hết các ứng dụng).
-
Nhấp 'Tạo Hash' — bcrypt hash xuất hiện bên dưới và sẵn sàng lưu vào cơ sở dữ liệu của bạn.
-
Để xác minh mật khẩu với một băm hiện có, chuyển sang tab 'Xác minh'.
-
Nhập mật khẩu văn bản thuần túy và bcrypt hash đã lưu, sau đó nhấp 'Xác minh'.
-
Dấu kiểm màu xanh xác nhận khớp; màu đỏ có nghĩa là mật khẩu sai.
Các Câu Hỏi Thường Gặp
Tôi nên sử dụng hệ số chi phí nào? Đối với hầu hết các ứng dụng web, hệ số chi phí từ 10–12 là sự cân bằng tốt giữa bảo mật và hiệu suất. Chi phí 10 (~100ms) là mức tối thiểu được khuyên dùng. Sử dụng 12 (~400ms) cho các tài khoản có giá trị cao. Tránh đi dưới 10, vì nó làm cho các cuộc tấn công brute-force nhanh hơn.
Tại sao hai hash của cùng một mật khẩu trông khác nhau? Bcrypt tự động tạo một salt ngẫu nhiên gồm 22 ký tự cho mỗi hash và nhúng nó vào đầu ra. Điều này có nghĩa là cùng một mật khẩu được hash hai lần sẽ tạo ra các chuỗi khác nhau, đó là do thiết kế — nó ngăn chặn các cuộc tấn công rainbow table.
Định dạng chuỗi hash bcrypt có ý nghĩa gì? Một hash bcrypt trông giống như $2b$12$SaltSaltSaltSaltSaltSaHashHashHashHashHashHashHashHas. $2b$ là phiên bản thuật toán, $12$ là hệ số chi phí, theo sau là 22 ký tự của salt được mã hóa base64 và 31 ký tự của hash.
Tôi có thể sử dụng cái này để xác minh mật khẩu từ cơ sở dữ liệu của tôi không? Có. Dán hash bcrypt được lưu trữ từ cơ sở dữ liệu của bạn và mật khẩu dạng văn bản thuần túy vào tab Xác minh. Công cụ sẽ xác nhận xem chúng có phù hợp hay không, điều này rất hữu ích để gỡ lỗi các vấn đề đăng nhập trong quá trình phát triển.
Keywords: trình tạo bcrypt, bcrypt hash trực tuyến, trình xác minh bcrypt, băm mật khẩu, hệ số chi phí bcrypt, băm mật khẩu bcrypt, kiểm tra bcrypt