Giai đoạ nI của IKE(Pha 1)

Một phần của tài liệu nghiên cứu cơ chế hoạt động của giao thức trao đổi khóa ike(internet key exchange) và ứng dụng trong bảo mật thông tin mạng (Trang 46)

Pha IKE thứ nhất xác thực người dùng cuối, sau đó thiết lập một phiên IKE bảo mật cho việc thiết lập SA. Rồi sau đó các nhóm truyền tin thương lượng một ISAKMP SA thích hợp với nhau, nó bao gồm cả thuật toán mã hoá, hàm băm và phương thức xác thực để phục vụ cho việc bảo vệ khoá mật mã. Ở dưới khung làm việc ISAKMP sử dụng SA được thiết lập trong pha này. Sau khi cơ chế mã hoá và hàm băm được đồng ý, một khoá bảo mật chủ chia sẻ được tạo. Các thông tin sau thường được dùng để tạo khoá mật chia sẻ này bao gồm:

- Các giá trị Diffie-Hellman.

- Một số ngẫu nhiên.

- Nếu hai nhóm đồng ý sử dụng một khoá công khai dựa trên xác thực, họ cũng cần trao đổi ID của họ.

Sau khi trao đổi các thông tin cần thiết, cả hai tạo khoá của họ bằng việc dùng các khoá mật đã chia sẽ này. Theo cách thông thương, khoá mật mã được tạo mà không có bất kỳ một sự trao đổi thực sự nào qua mạng.

IKE Phase thứ nhất thoả thuận các tập chính sách IKE, xác thực đối tác và thiết lập kênh an toàn giữa các đối tác. IKE Phase1 gồm 2 chế độ: Main Mode và Aggressive mode. IKE Phase 1 bao gồm các trao đổi sau:

a. Thống nhất các thuật toán mã hoá và xác thực

Trao đổi này để bảo vệ các trao đổi thông tin IKE được thoả thuận giữa các đối tác.

- Ban đầu bên A gửi một Message đến B ở dạng chưa mã hoá(ClearText), Message được đóng gói trong một gói tin IP thông thường và nằm trong phần UDP Payload với giao thức lớp trên là UDP.

Hình 2.2 Thông điệp 1

- Thông điệp này thông báo và yêu cầu bên B lựa chọn các giao thức và các thuật toán được đưa ra ở các trường Proposal và Transform tương ứng, đồng thời tạo ra một giá trị ngẫu nhiên gọi là Cookie A (Initiator Cookie) đưa vào trường ISAKMP Header.

- Tương tự, bên B sẽ trả lời bên A bằng một Thông điệp có cấu trúc tương tự như trên, thông báo sẽ chọn giao thức và thuật toán nào, đồng thời đưa ra một giá trị ngẫu nhiên Cookie B (Responder Cookie) vào trường ISAKMP Header.

b. Trao đổi khoá

IP Header UDP Header ISAK MP Header Proposal

Tạo các khoá bí mật chung. IKE sẽ sử dụng thuật toán Diffie- Hellman (DH) để tạo một khoá bí mật dùng chung giữa bên A và bên B.

- Bên A gửi:

+ Số nguyên tố lớn N.

+ Số g là một phần tử nguyên thuỷ của Z* N .

+ Hàm f(x)= gX mod N với X là số ngẫu nhiên thuộc Z*

N do A chọn và gửi f(x) cho B.

- Bên B chọn ngẫu nhiên y thuộc Z*

N và tính f(y) = gY mod N rồi gửi cho A. Sau khi nhận được giá trị f(x), bên B tính SB = f(x)Y mod N. Còn A, sau khi nhận được giá trị f(y) của B, A tính: SA = f(y)X mod N.

- Dễ dàng chứng minh: SB =SA =S và do đó giá trị này được dùng làm khoá chung bí mật mà chỉ có A và B mới có được.

- Cần chứng minh: SB = SA

- Thật vậy: SB = f(x)Y mod N = (gX mod N)Y mod N = gXY mod N.

Mặt khác : SA= f(y)X mod N = (gY mod N)X mod N = gXY mod N= SB

- Trao đổi khoá bí mật trình bày ở trên được gọi là trao đổi khoá Diffie- Hellman

- Như vậy, bên A và B đều có khoá chung bí mật là S.

IP Header UDP Header ISAKMP Header g x Ni

Hình 2.3 Thông điệp 2

c. Xác thực đối tác (adsbygoogle = window.adsbygoogle || []).push({});

Trong trao đổi này hai bên trao đổi các thông tin nhận dạng của nhau thông qua chữ ký số. Messeage 3 được gửi để nhận dạng.

IP Header UDP Header ISAKMP Header

Identity Certificate Signature

Hình 2.4 Thông điệp 3

Các thông tin nhận dạng là các trường sau: Identity, Certificate, Signature đã được mã hóa bằng các giao thức, thuật toán được xác định tại bước trao đổi

thức nhất và các khoá chung bí mật đã được thiết lập ở bước trao đổi khoá bí mật.

Một phần của tài liệu nghiên cứu cơ chế hoạt động của giao thức trao đổi khóa ike(internet key exchange) và ứng dụng trong bảo mật thông tin mạng (Trang 46)