Giao thức Otway-Rees

Bách khoa toàn thư mở Wikipedia
Bước tới: menu, tìm kiếm

Giao thức Otway-Rees là một giao thức xác thực dùng trong các mạng máy tính không an toàn (chẳng hạn như Internet). Nó cho phép các cá nhân có thể trao đổi thông tin để chứng minh nhân dạng của mình đồng thời chống lại việc nghe trộm cũng như gửi lại các gói tin cũ hay sửa đổi các gói tin trên đường truyền.

Theo hệ thống ký hiệu giao thức mật mã, giao thức Otway-Rees được mô tả như sau (trong đó Alice sử dụng máy chủ S để xác thực mình với Bob):

1. A \rightarrow B: M,A,B,\{M,A,B,N_A\}_{K_{AS}}

2. B \rightarrow S: M,A,B,\{M,A,B,N_A\}_{K_{AS}},\{M,A,B,N_B\}_{K_{BS}}

3. S \rightarrow B: M,\{N_A,K_{AB}\}_{K_{AS}},\{N_B,K_{AB}\}_{K_{BS}}

4. B \rightarrow A: M,\{N_A,K_{AB}\}_{K_{AS}}

Một vấn đề của giao thức này là kẻ tấn công có thể can thiệp để khi kết thúc quá trình, AB sở hữu 2 khóa khác nhau. Quá trình xảy ra như sau: Sau khi A và B thực hiện thành công 3 bước đầu tiên, B nhận được khóa K_{AB}. Khi đó, kẻ tấn công giữ lại gói tin số 4 và gửi lại gói tin số 2. Điều này khiến cho S tạo thêm một khóa mới K'_{AB} và gửi tới B. Kẻ tấn công cũng giữ lại gói tin này và gửi cho A phần mà đáng lẽ B phải gửi (cho A). Vì vậy, A cuối cùng cũng nhận được gói tin số 4 nhưng với khóa K'_{AB} thay vì K_{AB}.

Một vấn đề khác nảy sinh là: mặc dù máy chủ nói với B rằng A đã sử dụng một số ngẫu nhiên (nonce), B cũng không thể biết được số đó vừa được tạo ra hay là một gói tin cũ được phát lại.

Xem thêm[sửa | sửa mã nguồn]