Q:1. Thuật toán Bcrypt là gì và tại sao nó an toàn nhất cho mật khẩu?
A:Bcrypt là thuật toán băm mật khẩu một chiều được thiết kế dựa trên thuật toán mã hóa Blowfish. Điểm đặc biệt của Bcrypt là cơ chế làm chậm thời gian tính toán băm (cost factor), ngăn cản hiệu quả các đòn tấn công brute-force quy mô lớn bằng phần cứng GPU chuyên dụng.
Q:2. Hệ số Rounds (Cost Factor) tăng lên có tác dụng gì?
A:Hệ số Rounds quyết định số lần lặp hàm băm Bcrypt (2^rounds lần lặp). Rounds càng cao, máy tính càng tốn nhiều thời gian và tài nguyên CPU để tính ra một bản băm. Giới hạn rounds tối ưu khuyến nghị cho các website hiện nay là từ 10 đến 12.
Q:3. Cú pháp bắt đầu bằng $2a$ trong mã hash có ý nghĩa gì?
A:Đó là định danh phiên bản của thuật toán Bcrypt. Tiêu chuẩn $2a$ là định dạng Bcrypt nguyên bản phổ biến nhất, tiếp theo là số Rounds (ví dụ: 10), sau đó là chuỗi Salt dài 22 ký tự và chuỗi mật mã băm hoàn chỉnh phía sau.