Chuyển đến nội dung
ToolMug

Tạo và kiểm tra Bcrypt

Tạo mã băm bcrypt cho mật khẩu hoặc kiểm tra mật khẩu có khớp mã băm hiện có không — hữu ích khi gỡ lỗi đăng nhập hoặc tạo mật khẩu quản trị. Mọi phép tính chạy trong trình duyệt; mật khẩu không được gửi tới máy chủ.

Chạy trong trình duyệt — không có dữ liệu nào bạn nhập bị tải lên

Tạo mã băm

10

Mỗi bước tăng gấp đôi công việc. 10–12 là mức thường dùng cho đăng nhập hiện nay.

Kiểm tra mật khẩu với mã băm

Cách sử dụng

  1. Trong phần Tạo mã băm, nhập mật khẩu, chỉnh cost bằng thanh trượt rồi nhấn Tạo mã băm.
  2. Sao chép mã băm. Mỗi mã dùng salt ngẫu nhiên mới nên cùng một mật khẩu tạo ra mã khác nhau mỗi lần.
  3. Để kiểm tra, dán mã băm bcrypt bên phải và nhập mật khẩu. Kết quả cho biết chúng có khớp không.

Giải thích tùy chọn

Cost
Từ 4 đến 15, mặc định 10. Khối lượng tính là 2 lũy thừa cost nên mỗi bước làm thời gian tăng gấp đôi. Trang hiển thị thời gian băm trong trình duyệt để tham khảo.
Tiền tố phiên bản
Mã mới bắt đầu bằng $2b$. Khi kiểm tra, mã $2a$, $2b$ và $2y$ do password_hash của PHP tạo đều dùng được.
Giới hạn 72 byte
bcrypt chỉ dùng 72 byte đầu của mật khẩu (UTF-8 nên một số ký tự chiếm 2–4 byte). Trang cảnh báo khi mật khẩu dài hơn; phần còn lại bị bỏ qua.

Cấu tạo mã băm

$2b$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy

Câu hỏi thường gặp

Vì sao cùng mật khẩu lại cho mã khác nhau mỗi lần?

bcrypt tạo salt ngẫu nhiên 16 byte cho mỗi mã và lưu salt trong mã (22 ký tự sau cost). Khi kiểm tra, salt được lấy từ mã để tính lại, nên tất cả mã đó đều xác minh được.

Có thể giải mã bcrypt không?

Không. bcrypt là mã băm một chiều; cách kiểm tra duy nhất là băm một mật khẩu thử rồi so sánh. Dịch vụ quảng cáo “giải mã” bcrypt chỉ đang thử lần lượt các mật khẩu phổ biến.

Nên dùng cost bao nhiêu?

Quy tắc thường dùng là để một lần băm mất khoảng 100 ms trên máy chủ; hiện nay thường tương đương 10–12. Quá thấp làm brute force dễ hơn, quá cao làm đăng nhập chậm và tăng tải máy chủ.

bcrypt khác MD5 hoặc SHA-256 thế nào?

MD5 và SHA-256 được thiết kế để nhanh — một GPU có thể thử hàng tỷ lần mỗi giây — nên không phù hợp để tự lưu mật khẩu. bcrypt cố ý chậm và có salt tích hợp, được thiết kế cho lưu mật khẩu.

Mật khẩu của tôi có được tải lên không?

Không. Băm và kiểm tra chạy bằng JavaScript trong trình duyệt và vẫn hoạt động ngoại tuyến.

Quyền riêng tư

Công cụ này chạy hoàn toàn trong trình duyệt của bạn. Tệp và văn bản được xử lý ngay trên thiết bị và không bao giờ được tải lên máy chủ của chúng tôi.

Công cụ liên quan