Nếu từng sử dụng mã thông báo phần cứng để phê duyệt các giao dịch ngân hàng kỹ thuật số hoặc chạm vào YubiKey để tạo mã đăng nhập, tức là đã sử dụng công nghệ mật khẩu một lần dựa trên HMAC (HOTP). Nhằm giúp hiểu cách sử dụng HOTP để bảo vệ tài khoản, bài viết này sẽ tìm hiểu cách thức hoạt động của HOTP, các lợi ích và hạn chế của công nghệ này, đồng thời so sánh với các phương thức OTP khác.

HOTP là gì?

HOTP là viết tắt của mật khẩu một lần dựa trên HMAC. Đây là phương thức xác thực hai yếu tố (2FA) giúp tạo mã đăng nhập một lần khi có yêu cầu.

HMAC, hay Mã xác thực thư dựa trên băm, là một kỹ thuật mã hóa sử dụng khóa bí mật và hàm băm để tạo ra một giá trị an toàn, chống giả mạo. HOTP áp dụng HMAC cùng với một bộ đếm để đảm bảo mỗi mã xác thực là duy nhất và chỉ có thể sử dụng một lần.

Vì các mã HOTP vẫn có hiệu lực cho đến khi được sử dụng hoặc thay thế, nên chúng rất phù hợp cho công việc từ xa và các môi trường khác không có sự đồng bộ hóa thời gian đáng tin cậy hoặc kết nối liên tục.

HOTP hoạt động như thế nào?

Xác thực HOTP dựa trên hai thành phần được chia sẻ: khóa bí mật và bộ đếm. Cả thiết bị của người dùng và máy chủ xác thực đều lưu trữ các giá trị này và sử dụng chúng để tạo ra cùng một mã một lần một cách độc lập.

Thiết lập: Khi thiết lập một mã thông báo phần cứng, khóa bí mật sẽ được chia sẻ giữa thiết bị và máy chủ ứng dụng, đồng thời được lưu trữ an toàn ở cả hai bên.

Tạo mã: Thiết bị sử dụng một hàm băm mật mã gọi là HMAC để kết hợp khóa bí mật với giá trị bộ đếm hiện tại. Kết quả là một mật khẩu một lần ngắn và không thể dự đoán trước.

Xác thực: Khi nhập mã HOTP, máy chủ sẽ thực hiện cùng một phép tính bằng bản sao khóa bí mật và bộ đếm của chính máy chủ đó. Nếu các mã khớp nhau, quyền truy cập sẽ được cấp.

Giải thích về hệ thống bộ đếm HOTP

HOTP dựa trên một hệ thống bộ đếm duy nhất được chia sẻ giữa thiết bị và máy chủ xác thực. Mỗi khi tạo mã mới, bộ đếm sẽ tăng lên. Sau khi đăng nhập thành công, máy chủ cũng cập nhật bộ đếm của mình. Miễn là bộ đếm của thiết bị và máy chủ luôn đồng bộ, các mã sẽ khớp và cấp quyền truy cập.

Có thể hình dung HOTP như một cuốn sổ phiếu mua hàng được đánh số mà người dùng xé ra và sử dụng theo thứ tự. Phiếu đã sử dụng không thể tái sử dụng, và phải sử dụng phiếu tiếp theo. Hệ thống bộ đếm HOTP hoạt động tương tự.

Xác thực HOTP so với các loại OTP khác

HOTP so với OTP

Mật khẩu một lần (OTP) là một thuật ngữ rộng để chỉ các loại mật khẩu dùng một lần khác nhau được sử dụng cho 2FA. HOTP là một loại OTP cụ thể, dựa trên hệ thống bộ đếm để tạo mã.

HOTP so với TOTP

Mật khẩu một lần dựa trên thời gian (TOTP) tự động tạo mã mới sau mỗi 30 đến 60 giây. Ví dụ phổ biến nhất của TOTP là các mã được tạo bởi các ứng dụng xác thực. Ngược lại, HOTP chỉ tạo mã mới khi có yêu cầu, bằng cách sử dụng bộ đếm thay vì bộ hẹn giờ.

Sự khác biệt này ảnh hưởng đến tính bảo mật của từng phương thức OTP. Việc TOTP nhanh chóng hết hạn khiến những kẻ tấn công có rất ít cơ hội. Ngược lại, mã HOTP có thể duy trì hiệu lực trong nhiều ngày hoặc thậm chí nhiều tuần.

Tuy nhiên, HOTP đáng tin cậy hơn trong các tình huống thiết bị có đồng hồ không chuẩn xác. Ví dụ, thiết bị ở các vị trí từ xa có kết nối internet kém.

HOTP so với mã SMS và email

Mã OTP được gửi qua SMS và email rất dễ bị chặn vì phải truyền qua mạng di động và internet. HOTP tạo mã ngay trên thiết bị, giúp tăng tính bảo mật đồng thời cung cấp quyền truy cập ổn định ngay cả khi mạng bị gián đoạn.

Các lợi ích và hạn chế của HOTP là gì?

Lợi ích của xác thực HOTP

Có một số ưu điểm khi sử dụng HOTP làm phương thức OTP ưu tiên:

  • Hoạt động ngoại tuyến: HOTP có thể hoạt động ngoại tuyến, rất lý tưởng cho các vị trí có quyền truy cập internet hạn chế.
  • Không áp lực thời gian: Mã HOTP không tự động hết hạn, vì vậy người dùng có thể thoải mái nhập mã.
  • Thuật toán được công nhận: HOTP được định nghĩa bởi RFC 4226(cửa sổ mới), đảm bảo tính tương thích giữa các nhà cung cấp phần mềm và mã thông báo phần cứng từ các nhà cung cấp khác nhau.
  • Ít sự phụ thuộc hơn: Hệ thống dựa trên bộ đếm của HOTP không phụ thuộc vào đồng hồ chính xác hay kết nối liên tục, giúp hệ thống hoạt động ổn định hơn trong một số môi trường nhất định.

Hạn chế của xác thực HOTP

Như với mọi công nghệ khác, HOTP cũng đi kèm một số lưu ý quan trọng:

  • Hiệu lực vô thời hạn: Mã HOTP có thể duy trì hoạt động vô thời hạn nếu không có mã mới nào được tạo. Điều này giúp kẻ tấn công có nhiều thời gian hơn để khai thác các mã bị đánh cắp.
  • Đồng bộ hóa bộ đếm: Nếu tạo mã mà không sử dụng, bộ đếm trên thiết bị và máy chủ có thể bị mất đồng bộ, dẫn đến lỗi xác thực.
  • Quản lý thủ công: Vì các mã không tự động hết hạn, người dùng phải nhớ tạo mã mới sau mỗi lần sử dụng.

Nâng cao bảo mật mật khẩu

Mặc dù HOTP có thể không mang lại lợi ích bảo mật từ việc tự động hết hạn hay sự tiện lợi của mã SMS, nhưng hệ thống dựa trên bộ đếm của nó lại đem đến những ưu thế độc đáo. Đây là hệ thống 2FA đã được chứng minh hiệu quả với khả năng truy cập ngoại tuyến đáng tin cậy, đồng thời việc không có áp lực thời gian có thể là lựa chọn ưu tiên của một số người.
Để dễ dàng quản lý mật khẩu và mã 2FA tại một vị trí đã mã hóa duy nhất, hãy cân nhắc sử dụng Proton Pass. Trình quản lý mật khẩu an toàn với bộ xác thực 2FA tích hợp giúp bảo vệ tất cả thông tin đăng nhập và mã 2FA bằng công nghệ mã hóa đầu cuối toàn diện. Việc giữ cho cuộc sống số luôn an toàn và thuận tiện chưa bao giờ đơn giản hơn thế.