OTP được nhiều tổ chức khuyến cáo sử dụng nhằm tăng tính bảo mật cho tài khoản khách hàng của họ. Sự ra đời của các thiết bị bảo mật theo công nghệ OTP tạo điều kiện thuận lợi cho người dùng trong các giao dịch điện tử.
Nguyên lý hoạt động của OTP
Sau khi đã đăng ký dịch vụ, mỗi lần muốn đăng nhập (log in), người dùng sẽ được cung cấp một mật khẩu tạo ra bởi đầu đọc và thẻ thông minh hay thiết bị tạo mật khẩu dạng cầm tay (token) nhờ vào kết nối internet với máy chủ cung cấp dịch vụ OTP; hoặc cũng có thể thông qua thẻ OTP được tạo sẵn hay điện thoại di động. Mật khẩu này sẽ tự mất hiệu lực sau khi người dùng đăng xuất (log out) ra khỏi hệ thống. Như vậy, nếu bị lộ mật khẩu thì người có được mật khẩu đó cũng không thể dùng được, và do đó giải pháp OTP có tính bảo mật cao.
Quá trình tạo mật khẩu mới sẽ lặp lại mỗi lần người dùng đăng nhập vào hệ thống được bảo mật bằng OTP. Công nghệ OTP được dùng nhiều trong chứng thực trực tuyến (thương mại trực tuyến). Hiện nay người dùng các thiết bị cầm tay như iPhone, Blackberry cũng có thể tự cài đặt cơ chế bảo mật OTP bằng các chương trình như VeriSign, RSA SecureID hay SafeNet MobilePASS.
Ngày càng có nhiều giải pháp mới giúp tăng cường tính bảo mật của mật khẩu. Nhưng dù với bất cứ giải pháp nào thì người dùng cũng nên tự bảo vệ mình bằng cách lựa chọn và ghi nhớ mật khẩu của mình thật hiệu quả, cũng như tăng cường các biện pháp phòng vệ trước sự đe dọa của hacker và các chương trình keylogger.
Sử dụng công nghệ OTP khiến cho việc truy cập bất hợp pháp đến những tài nguyên được giới hạn, ví dụ như một tài khoản máy tính trở nên khó khăn hơn. Thông thường, mật khẩu cố định có thể bị người dùng bất hợp pháp truy cập trong trường hợp họ có đủ thời gian và số lần truy cập.
Các kỹ thuật mật mã sử dụng trong công nghệ OTP
- Kiểu thứ nhất, dùng một thuật toán để tạo ra một mật khẩu mới dựa trên mật khẩu trước đó, dựa trên phương pháp của Leslie Lamport là dùng một hàm một chiều (hàm f). Hệ thống OTP làm việc bằng cách khởi đầu với một giá trị s, sau đó sản sinh ra các mật khẩu với giá trị: f(s), f(f(s)), f(f(f(s))),.., rất nhiều lần tương đương với số lần sử dụng. Chú ý rằng, các mật khẩu này khi dùng thì được lấy theo thứ tự ngược lại. Nếu như một người nào đó thấy được mật khẩu sử dụng một lần, họ chỉ có thể truy cập được một phiên duy nhất, nó sẽ không thể lặp lại lần nữa
khi phiên truy cập đó kết thúc. Để có được mật khẩu trong dãy từ mật khẩu của lần truy cập trước đó, người đó phải tìm cách để tính ngược được hàm nghịch đảo (f-1). Vì hàm f là hàm một chiều nên điều này cực kỳ khó để thực hiện. Nếu f là một hàm băm mật mã (cryptographic hash function) thì nó hầu như không thể nào tính toán được.
- Kiểu thứ hai được dựa trên sự đồng bộ thời gian giữa nhà cung cấp dịch vụ (authentication server) và khách hàng (client) được cung cấp mật khẩu. Mật khẩu sử dụng một lần kiểu đồng bộ thời gian luôn có mối quan hệ mật thiết với một thiết bị phần cứng gọi là token (ví dụ một người được cung cấp thiết bị token cá nhân để tạo một mật khẩu sử dụng một lần). Bên trong thiết bị này là 1 đồng hồ chính xác được đồng bộ với đồng hồ của nhà cung cấp dịch vụ. Trong hệ thống OTP này, thời gian là một phần quan trọng của thuật toán tạo ra mật khẩu, từ đó việc tạo ra mật khẩu mới dựa trên thời gian hiện tại khác với việc dựa trên mật khẩu trước đó hay là một từ khóa. Trường hợp này, điện thoại di động hoặc PDA cũng có thể được dùng để tạo ra OTP....
- Kiểu thứ ba cũng sử dụng một thuật toán nhưng mật khẩu thì được căn cứ dựa trên một giao thức sử dụng tham số gọi là “thách thức” (challenge). Ví dụ, một số ngẫu nhiên được chọn bởi máy chủ xác thực hoặc các chi tiết của cuộc giao dịch và/hoặc một bộ đếm.
- Ngoài ra còn một phương pháp khác là dùng một giao thức xác thực sử dụng mật mã đối xứng. Phương pháp này có thể áp dụng theo tiêu chuẩn ISO/IEC 9798- 2: Xác thực lẫn nhau dùng mật mã đối xứng. Mã khối đối xứng có thể dùng AES.
Thường các nhà cung cấp dịch vụ cung cấp tất cả các phần mềm ở dạng mã nguồn mở, các thư viện client cần thiết cho việc thực hiện chứng thực trong các ứng dụng và nền tảng khác nhau.
Ưu điểm của công nghệ OTP
- An toàn: Giải quyết tốt các vấn đề giả mạo, đánh cắp, Key logger. Đối với hai yếu tố xác thực, thiết bị này có thể được kết hợp với một mã PIN hoặc mật khẩu.
- Dễ dàng sử dụng: Việc nhận dạng và xác thực được thực hiện trong vài giây tránh được nguy cơ bị lỗi khi gõ các mã OTP dài qua các mã từ một thiết bị chứng thực vào một máy tính (Ví dụ OTP Token sử dụng màn hình hiển thị). Nó hoạt động với tài nguyên và đăng nhập được trên tất cả các nền tảng máy tính, và trình duyệt không cần phần mềm cài đặt Client. Nhanh chóng và tích hợp dễ dàng vào bất kỳ ứng dụng web nào (Windows, Linux, Mac, Internet Explorer, Firefox,...).
- Linh hoạt: Người dùng dễ dàng sử dụng cho các máy tính khác nhau và dễ mang theo bên mình.
- Mã nguồn mở: Sẵn sàng tích hợp với nhiều ứng dụng mã nguồn mở.
Các giải pháp có thể ứng dụng OTP gồm: Web mail server; CRM (Hệ quản lý khách hàng); ERP (Hoạch định nguồn lực doanh nghiệp); Hệ thống quản lý tài liệu; Thương mại điện tử...
An toàn thông tin trên mạng máy tính là một lĩnh vực rộng lớn, nó bao gồm tất cả các kỹ thuật, các phương pháp, phương tiện bảo vệ thông tin. Nó liên quan đến các kiến thức về khoa học mật mã, công nghệ mạng, các ứng dụng trên mạng. Kỹ thuật mật mã đóng một vai trò quan trọng trong việc bảo vệ thông tin trên mạng. Một trong các khâu then chốt khi xây dựng các sản phẩm an toàn thông tin là thiết kế các mô hình mật mã để cho phép bảo vệ thông tin theo đúng các yêu cầu đã được đưa ra.
Phương thức xác thực cho các ứng dụng Web với chi phí hợp lý nhưng vẫn đảm bảo an toàn, dễ dàng tích hợp vào nhiều hệ thống ứng dụng web cho mọi bài toán như mã nguồn mở, công nghệ Java, .NET hay PHP được phát triển dựa vào cơ chế phát sinh mật khẩu 1 lần, với thiết bị OTP USB Token. Phương pháp này đặc biệt phù hợp với các doanh nghiệp vừa và lớn, khi mà hạ tầng CNTT đã phát triển với nhiều ứng dụng đang cùng hoạt động liên tục và không gián đoạn, đồng thời như: Hệ thống ERP, CRM, HRM, DMS.... Việc sử dụng OTP USB Token giải quyết tốt vấn đề an toàn khi đăng nhập, và tránh phải sử dụng quá nhiều mật khẩu, cho các ứng dụng khác nhau.