Các phương thức xác thực

Một phần của tài liệu tìm hiểu những vấn đề kỹ thuật cơ bản có liên quan đến việc thực hiện IP-VPN (Trang 102 - 104)

Có hai phương thức xác thực nguồn gốc dữ liệu: xác thực dựa trên mật khẩu và xác thực dựa trên giao thức hỏi đáp.

a) Phương thức xác thực dựa trên mật khẩu

Đối với phương thức này, tồn tại 2 nguy cơ mất an toàn như sau:

- Nguy cơ thứ nhất: Mật khẩu phải truyền qua một kênh không an toàn. Ví dụ trong trường hợp đăng nhập từ xa sử dụng giao thức telnet yêu cầu truyền nhận dạng (ID) và mật khẩu (password) của người sử dụng ở dạng bản rõ tới máy đích. Như vậy nguy cơ mất an toàn là cao vì phải truyền mật khẩu qua Internet - một kênh không an toàn. Phía thu Kênh truyền Phía phát 1 0 1 0 1 1 1 0 0 1 0 1 0 0 1 1 0 1 1 1 0 1 0 0 0 1 0 1 0 1 Hàm băm Chữ ký Giá trị băm Mật mã cùng với khóa riêng 1 0 1 0 1 1 1 0 0 1 0 1 0 0 1 1 0 1 1 1 0 1 0 0 0 1 0 1 0 1 Chữ ký Giá trị băm Giải mã cùng với khóa công cộng Giá trị băm So sánh

- Nguy cơ thứ hai: mật khẩu phải được lưu trong một phương tiện lưu trữ của máy chủ, thông thường là máy chủ đăng nhập (login server). Việc lưu trữ mật khẩu cũng là một nguy có mất an toàn cao.

b) Phương thức xác thực dựa trên các giao thức hỏi đáp

Để xác thực qua một kênh không an toàn, có thể sử dụng một giao thức hỏi đáp để kiểm tra xem đối tác cần xác thực có sở hữu một giá trị bí mật để xác thực đối tác đó hay không. Phương thức này không yêu cầu phải trao đổi các giá trị bí mật thông qua kênh không an toàn. Giao thức hỏi đáp này sử dụng mã xác thực bản tin MAC hoặc chữ ký số.

- Giao thức hỏi đáp sử dụng mã xác thực bản tin MAC

Hình 4.15: Giao thức hỏi đáp MAC

Phương pháp này sử dụng một khóa bí mật chung giữa hai đối tác. Chẳng hạn khi một người sử dụng muốn đăng nhập vào một máy chủ, máy chủ sẽ gửi một câu khẩu lệnh (challenge) tới người sử dụng, dứoi dạng một giá trị ngẫu nhiên (gọi là nonce). Để đề phòng tấn công kiểu lặp lại, mỗi giá trị nonce thường không được sử dụng đến lần thứ hai. Người sử dụng tạo ra một trả lời (response) bằng cách ghép các giá trị ngẫu nhiên RS (nhận được từ máy chủ) với thông số nhận dạng ID của người đó, sau đó đưa tới một hàm băm có sử dụng khóa được khởi tạo bởi một khóa bí mật. Bản thân hàm băm để tăng tính an toàn. Kết quả của hàm băm là mã MAC, cùng với thông số nhận dạng ID sẽ được gửi tới máy chủ. Với đặc tính một chiều của MAC, dữ liệu được truyền đi trên kênh không an toàn sẽ không để lộ bất cứ thông tin nào về khóa bí mật.

Giá trị ngẫu nhiên (Nonce)

Kênh không an toàn

IDU RU RS

Key Keyed Hash Function

IDU RU MAC IDU RU RS

RS

Key Keyed Hash Function MAC MAC Khẩu lệnh Đáp U ser Server

Máy chủ dựa vào các thông tin mà nó có (bao gồm ID, RU, RS, khóa bí mật) để tính giá trị MAC, sau đó so sánh với MAC mà người sử dụng gửi đi. Nếu người sử dụng có đúng khóa bí mật sử dụng chung thì hai giá trị này trùng khớp với nhau và quá trình xác thực thành công.

- Giao thức xác thực sử dụng chữ ký số

Giao thức hỏi đáp cũng có thể dựa trên chữ ký số, sử dụng mật mã khóa công khai. Người sử dụng là người duy nhất có khóa bí mật, còn một server bất kỳ đề có khóa công khai tương ứng của người sử dụng đó nếu muốn xác thực. Người sử dụng tạo ra một mã hash từ các thông tin: ID, RS (nhận được từ máy chủ như một khẩu lệnh), RU. Bằng cách mật mã giá trị hash với khóa bí mật, sẽ tạo thành một chữ ký số để gửi lại máy chủ (như một trả lời).

Các hệ thống mật mã khóa công khai đã trở nên thông dụng vì khóa công khai không cần phải giữ bí mật và do đó có thể được phân phối một cách rộng rãi. Vì vậy, khi một máy chủ xác thực một người sử dụng bằng cách kiểm tra chữ ký trên cơ sở khóa công khai của người sử dụng đó thì vấn đề đặt ra là liệu cặpkhóa công khai/ bí mật sử dụng trong quá trình xác thực có thực sự thuộc về người sử dụng này hay không.

Hình 4.16: Giao thức hỏi đáp sử dụng chữ ký số

Nếu khóa công khai sử dụng trong quá trình xác thực được lấy từ một thư mục công cộng thì một tấn công kiểu trung gian (man-in-the-middle attack) có thể dễ dàng thay thế khóa công khai của người sử dụng bằng một khóa công khai của kẻ tấn công. Đây chính là nguyên nhân dẫn đến việc hình thành các chứng thực (certificate). Các chứng thực thiết lập một mối liên hệ tin cậy giữa nhận dạng người sử dụng và khóa công khai của người đó.

Một phần của tài liệu tìm hiểu những vấn đề kỹ thuật cơ bản có liên quan đến việc thực hiện IP-VPN (Trang 102 - 104)