Table of Contents
Trong bài viết này, GhienCongNghe sẽ cùng các bạn tìm hiểu xem OTP là gì và các ưu và khuyết điểm của loại mật khẩu này.
Mật khẩu thông thường vẫn còn tồn tại nhiều lỗ hổng khác nhau. Điều này chính xác kể cả đối với những người sử dụng những mật khẩu an toàn và bảo mật. Vấn đề chính ở đây là: Nếu bạn chỉ sử dụng một mật khẩu trong một khoảng thời gian dài, bạn sẽ gặp nguy cơ bị người khác truy cập vào mật khẩu của mình. Điều này thường xảy ra trong các vụ replay attack (tấn công phát lại – hình thức tấn công mạng trong đó việc truyền dữ liệu hợp lệ là độc hại hoặc gian lận được lặp đi lặp lại hoặc trì hoãn) với mục đích chiếm hữu mật khẩu của nạn nhân.
Đôi khi bất kể bạn có cẩn trọng như thế nào đi chăng nữa, bạn vẫn có thể trở thành nạn nhân của các vụ tấn công này. Trong những năm gần đây, kể cả các dịch vụ trực tuyến nổi tiếng cũng đã và đang rơi vào tầm ngắm của các vụ tấn công mạng khiến dữ liệu của hàng ngàn khách hàng rơi vào tay kẻ xấu.
Vậy phải làm sao để bảo vệ dữ liệu của bản thân khỏi các cuộc tấn công này? Một phương pháp đó là thay đổi mật khẩu thường xuyên. Tuy nhiên, không ai lại muốn đổi mật khẩu mỗi ngày cả. Một giải pháp khác thuận tiện hơn đó là sử dụng mật khẩu dùng một lần (OTP – One-Time Password).
OTP là gì?
One-Time Password là loại mật khẩu chỉ có thể được dùng một lần và nó sẽ hết hạn ngay sau đó. One-Time Password thường được gọi bằng tên viết tắt là OTP, hoặc mã OTP.
Bước sử dụng OTP được thêm vào để nâng cao tính bảo mật. Nếu người dùng không được cấp quyền nào đó chiếm được mật khẩu thông thường của bạn, chúng vẫn không có mật khẩu OTP được tạo ra để hoàn thành quá trình đăng nhập. Vì lý do này, ngày càng nhiều dịch vụ trực tuyến bắt đầu sử dụng xác thực 2 yếu tố, đặc biệt đối với các dữ liệu nhạy cảm.
Lưu ý: Đừng nhầm lẫn chữ viết tắt OTP của One-Time Password với One-Time Pad, cũng viết tắt là OTP. One-Time Pad là một phương pháp mã hoá được xem là vô cùng bảo mật, nhưng nó cũng phức tạp hơn nhiều so với việc sử dụng One-Time Password.
Mật khẩu OTP hoạt động như thế nào?
Để mật khẩu OTP hoạt động thì cả người dùng lẫn hệ thống máy tính phải biết mật khẩu đó. Có 2 cách để thực hiện quá trình này:
Danh sách mật khẩu
Tạo danh sách mật khẩu là cách dễ nhất để sử dụng OTP. Đây là một danh sách chứa các mật khẩu được tạo sẵn trước đó, cả người dùng và hệ thống máy tính đều nắm rõ danh sách mật khẩu này. Nếu một mật khẩu trong danh sách được sử dụng, nó sẽ bị xoá khỏi danh sách.
Phương pháp này có một khuyết điểm vô cùng dễ nhận thấy: Nếu người dùng làm mất danh sách này, người khác sẽ có thể sử dụng số mật khẩu này để truy cập vào dữ liệu. Mặc dù các danh sách mật khẩu OTP này vẫn còn được nhiều đối với online banking, ngày càng nhiều các nhà cung cấp dịch vụ đang dần chuyển qua loại mật khẩu OTP được tạo liên tục (dynamically generated OTP).
Mật khẩu được tạo liên tục
Ngày nay, mật khẩu OTP động là phương pháp được sử dụng nhiều nhất. Token phần cứng được sử dụng rộng rãi để tạo mật khẩu. Những thiết bị nhỏ gọn này có nhiều hình dạng khác nhau, từ chìa khoá bỏ túi cho đến thiết bị có phím bấm.
Những thiết bị này còn được gọi là OTP token. Điểm chung của các thiết bị này là chúng đều có màn hình hiển thị và tạo mật khẩu OTP để đăng nhập với một cú bấm nút. Mật khẩu được tạo bằng các thiết bị này thường được nhập cùng các yếu tố xác thực khác như là PIN hoặc ID người dùng.
Một thuật toán đặc biệt được sử dụng để tạo mật khẩu OTP động ngay tức khắc. Có 3 tuỳ chọn thuật toán khác nhau:
- Time-based (dựa vào thời gian).
- Event-based (dựa vào hành động).
- Challenge-response (trả lời thử thách).
Time-based
Với phương pháp này, token bảo mật (khách hàng) và server sẽ cùng tạo ra mật khẩu đã được đồng bộ hoá cùng sử dụng một thuật toán giống nhau. Vì thế mật khẩu OTP dựa vào thời gian này sẽ được gửi tới người dùng lẫn server và có thời hạn trong một khoảng thời gian nhất định, thông thường từ 1 đến 15 phút.
Event-based
Mật khẩu OTP dựa vào hành động được tạo ra bằng cách thực hiện một hành động cụ thể nào đó, ví dụ như là nhấn nút trên token bảo mật. Đối với phương pháp này, cả bên người dùng lẫn server đều dùng một thuật toán giống nhau. Mật khẩu được tính toán dựa trên mật khẩu đã được sử dụng trước đó vì thế nó có hiệu lực đối với server.
Challenge-response
Trong phương pháp này, server sẽ chỉ định một yêu cầu (thử thách) nhất định, người dùng sẽ phải trả lời (phản hồi) yêu cầu đó. Khách hàng sẽ nhận được một số liệu nhất định từ server và sử dụng nó để tính ra OTP. Bởi vì server nắm rõ thuật toán và số liệu nhất định, nó sẽ có thể kiểm tra mật khẩu được tạo.
Khi nào nên sử dụng OTP?
OTP được khuyên dùng cho các dịch vụ trực tuyến và trang web liên quan đến dữ liệu vô cùng nhạy cảm và quan trọng. Ví dụ bao gồm:
- Online banking.
- Dịch vụ tài chính như là danh mục đầu tư trực tuyến hoặc trao đổi ngoại tệ.
- Dữ liệu nhạy cảm của công ty.
- Kênh giao tiếp bí mật.
Bạn không cần sử dụng mật khẩu OTP cho mọi website. Tuy nhiên, bạn nên luôn luôn sử dụng mật khẩu bảo mật. kể cả khi dùng một mật khẩu nhiều lần. Nghiên cứu đã chỉ ra rằng, mặc dù tỉ lệ tội phạm mạng vẫn tăng đều nhưng nhiều người dùng vẫn còn chủ quan về vấn đề bảo mật.
Ưu và nhược điểm của OTP là gì?
Ưu điểm:
- Khó bị bẻ khoá trong các cuộc tấn công replay attack.
- Mật khẩu bị mất cắp không thể được sử dụng để đăng nhập các trang và dịch vụ khác nhau.
- Độ bảo mật cao dành cho người dùng.
Nhược điểm:
- Cần sử dụng thêm loại hình công nghệ khác.
- Token bảo mật có thể bị lỗi hoặc hư hỏng.
- Quá trình tạo OTP có thể trở nên rắc rối, phức tạp.
Vậy là chúng ta đã cùng tìm hiểu xong OTP là gì cùng với chức năng và ưu/nhược điểm của loại mật khẩu nâng cao này. Có thể các bạn sẽ hứng thú với các bài viết dưới đây:
>> Ttt là gì mà hay được dùng comment dạo trên Facebook?
>> Captcha là gì mà sao ai cũng phải nhập?
Hy vọng bài viết giải thích OTP là gì sẽ hữu ích với bạn. Nếu có góp ý hay thắc mắc thì hãy để lại Comment cho GhienCongNghe nhé. Đừng quên Like & Share để ủng hộ GhienCongNghe.
Tham khảo Ionos