Xác thực dựa trên mật khẩu là phƣơng pháp xác thực ngƣời dùng phổ biến nhất hiện nay. Hệ xác thực dựa trên mật khẩu đƣợc xây dựng trên mô hình chia sẻ mật khẩu giữa ngƣời sử dụng và hệ thống, hệ thống sẽ lƣu các bản ghi chứa mật khẩu chia sẻ của ngƣời dùng, mật khẩu này sẽ đƣợc ngƣời sử dụng dùng để cung cấp cùng với tên định danh khi đăng nhập trong bƣớc xác thực.
Các hệ xác thực dựa trên mật khẩu thƣờng đƣợc phân biệt bởi phƣơng thức lƣu trữ mật khẩu trong hệ thống. Ở các hệ thống thế hệ trƣớc, mật khẩu thƣờng đƣợc lƣu dƣới dạng bản rõ (plaintext) trên hệ thống file hoặc trong một cơ sở dữ liệu. Việc lƣu nhƣ vậy khá nguy hiểm, bởi ai có thẩm quyền truy cập hệ thống (Quản trị viên, hoặc hacker khi chiếm đƣợc quyền kiểm soát) đều có thể lấy cắp đƣợc mật khẩu và thông tin của ngƣời dùng. Để khắc phục nhƣợc điểm này, các hệ thống ngày nay thƣờng lƣu mật khẩu dƣới dạng mã băm sử dụng hàm băm 1 chiều (Ví dụ là MD5, SHA-256) của mật khẩu ngƣời dùng. Theo đó, khi ngƣời dùng nhập mật khẩu đăng nhập, mật khẩu đó sẽ đƣợc băm thành mã băm, sau đó hệ thống sẽ so sánh mã băm đó với mã băm mật khẩu đƣợc lƣu trong hệ thống. Biện pháp này đảm bảo rằng mật khẩu nguyên gốc của ngƣời dùng không bị lộ, ngay cả khi ngƣời quản trị hay hacker xem đƣợc bản chứa mật khẩu đƣợc lƣu trong hệ thống.
Mô hình xác thực dựa trên mật khẩu hiện nay đã bộc lộ một số yếu điểm về an ninh. Kẻ tấn công có nhiều phƣơng pháp chiếm quyền kiểm soát của ngƣời sử dụng bằng cách đánh cắp mật khẩu. Phƣơng pháp đơn giản nhất là kẻ tấn công sẽ sử dụng
phƣơng pháp nghe lén đƣờng truyền, nếu mật khẩu không đƣợc mã hóa trên đƣờng truyền, kẻ tấn công có thể dễ dàng lấy đƣợc mật khẩu của ngƣời sử dụng. Nếu mật khẩu đã đƣợc mã hóa trên đƣờng truyền, kẻ tấn công có phƣơng pháp khác là sử dụng tấn công bằng từ điển (Dictionary attack – Là cách tấn công sử dụng 1 từ điển các mật khẩu thƣờng đƣợc sử dụng – Hoặc sử dụng phƣơng pháp tấn công ngày sinh (Birthday attack) [31] để tìm ra điểm xung đột của thuật toán băm.
Tuy nhiên, có một kỹ thuật để cải tiến nâng cao độ an toàn trong hệ thống xác thực dựa trên mật khẩu, đó là sử dụng mật khẩu một lần (One time password). Nguyên lý của hệ mật khẩu một lần là mỗi mật khẩu đƣợc chỉ có hiệu lực 1 lần, trong một khoảng thời gian nhất định. Mật khẩu một lần đảm bảo việc cho dù kẻ tấn công có lấy đƣợc mật khẩu trên đƣờng truyền, thì kẻ đó cũng không sử dụng lại mật khẩu đó. Mật khẩu một lần đƣợc hệ thống sinh ra theo một thuật toán ngẫu nhiên, hoặc giả ngẫu nhiên, có kích thƣớc cố định và đƣợc thông báo lại cho ngƣời sử dụng bằng một kênh truyền thông nào đó nhƣ qua tin nhắn di động, qua internet, hoặc qua các thiết bị chuyên dụng. , ví dụ nhƣ thiết bị Secure ID của hãng bảo mật RSA, hay OTP token của hãng VeriSign.