3. Bảo mật truy nhập khụng dõy WPA (Wi-fi Protected Access)
3.2- Cỏc khoỏ thời gian TK
Khụng giống như WEP, sử dụng một khoỏ chung cho việc mó hoỏ dữ liệu, và thụng thường, một khoỏ khỏc cho việc mó hoỏ dữ liệu quảng bỏ, WPA sử dụng một tập bốn khoỏ khỏc nhau cho mỗi liờn kết AP và một người dựng (gọi là khoỏ ghộp đụi thời gian TK – Temporal Key) và bộ hai khoỏ khỏc nhau cho việc quảng bỏ thụng tin.
Tập hợp cỏc khoỏ ghộp đụi này sử dụng để thực hiện cỏc kết nối đơn lẻ giữa AP và một người dựng và Giao thức chứng thực cú thể mở rộng EAP trờn mạng LAN (EAPOL – EAP over LAN). Cỏc thụng điệp khoỏ chứa :
- Khoỏ mó hoỏ dữ liệu : Một khoỏ 128 bit được sử dụng để mó hoỏ khung tin unicast (mụ tả một kết nối đơn lẻ)
- Khoỏ toàn vẹn dữ liệu : Một khoỏ 128 bit được sử dụng để tớnh toỏn mó toàn vẹn dữ liệu MIC cho cỏc khung tin unicast
- Khoỏ để mó hoỏ khoỏ EAPOL : Một khoỏ 128 bit được dựng để mó hoỏ thụng điệp chứa mó EAPOL
- Khoỏ kiểm tra toàn vẹn khoỏ EAPOL : Một khoỏ 128 bit được sử dụng để tớnh toỏn giỏ trị MIC kiểm tra tớnh toàn vẹn cho cỏc thụng điệp chứa khoỏ EAPOL.
Để đưa ra cỏc cặp đụi khoỏ thời gian TK này, WPA sử dụng cỏc giỏ trị sau :
55
- Cặp đụi khoỏ chớnh (PMK – Pairwise Master Key) : Một khoỏ 256bit được lấy ra từ tiến trỡnh chứng thực EAP-TLS hoặc Protected EAP.
- Nonce 1 : Một số ngẫu nhiờn được đưa ra bởi AP
- MAC 1 : địa chỉ MAC của điểm truy cập khụng dõy AP
- Nonce 2 : Một số ngẫu nhiờn được xỏc định bởi thiết bị truy cập khụng dõy
- MAC 2 : địa chỉ MAC của thiết bị truy cập khụng dõy
Để tiến hành chứng thực 802.1X bằng việc sử dụng mỏy chủ chứng thực từ xa RADIUS , cặp đụi khoỏ chớnh PMK được xỏc định bởi thiết bị kết nối khụng dõy và mỏy chủ RADIUS, tuỳ thuộc việc cỏi nào sẽ gửi PMK đến AP khụng dõy trong thụng điệp chấp nhận truy cập RADIUS. Sau khi nhận được khoỏ PMK, AP khụng dõy bắt đầu trao đổi thụng điệp chứa khoỏ TK, gồm cú cỏc thụng điệp sau :
- Thụng điệp khoỏ EAPOL gửi bởi AP khụng dõy, chứa Nonce1 và MAC 1. Bởi vỡ cỏc khoỏ TK cho kết nối là chưa xỏc định, thụng điệp này gửi dưới dạng bản rừ và khụng chứa bất kỳ một phương phỏp kiểm tra tớnh toàn vẹn nào. Cỏc Client khụng dõy bõy giờ đó cú tất cả cỏc thụng tin để tớnh toỏn cặp khoỏ TK
- Thụng điệp khoỏ EAPOL gửi bới Client khụng dõy chứa Nonce2 và MAC 2. Bởi vỡ phớa bờn Client đó tớnh toỏn được cặp khoỏ TK, nú sử dụng khoỏ kiểm tra khoỏ EAPOL để tớnh ra một giỏ trị mó toàn vẹn bản tin MIC. Điểm truy nhập AP sử dụng Nonce2 và MAC2 để tạo ra TK và thụng qua giỏ trị MIC
- Thụng điệp khoỏ EAPOL gửi bởi AP khụng dõy chứa một MIC và một dóy số khởi tạo ban đầu, bỏo hiệu rằng AP đó sẵn sàng gửi cỏc thụng tin mó hoỏ và cỏc khung khoỏ EAPOL
56
- Thụng điệp khoỏ EAPOL gửi bởi Client khụng dõy chứa một MIC và một dóy số khởi tạo ban đầu, bỏo hiệu là khỏch hàng đó sẵn sàng gửi cỏc thụng tin mó hoỏ và cỏc khung khoỏ EAPOL
Tập hợp cỏc thụng điệp này trao đổi cỏc giỏ trị cần thiết để xỏc định được đụi khoỏ TK, xỏc minh lại rằng mỗi cặp đụi khụng dõy đều biết PMK (thụng qua việc xỏc minh giỏ trị MIC), và bỏo hiệu rằng mỗi cặp khụng dõy này đó chuẩn bị sẵn sàng cho việc mó hoỏ và cung cấp bảo vệ tớnh toàn vẹn thụng điệp cho cỏc khung dữ liệu sau này và cỏc thụng điệp khoỏ EAPOL.
Đối với cỏc kết nối kiểu quảng bỏ, AP khụng dõy phỏt đi một nhúm khoỏ mó 128 bit và một nhúm khoỏ 128 bit để kiểm tra tớnh toàn vẹn, rồi gửi cỏc giỏ trị này đến Client khụng dõy sử dụng một thụng điệp khoỏ EAPOL, mó hoỏ với khoỏ mó EAPOL và được kiểm tra tớnh toàn vẹn thụng qua giỏ trị kiểm tra tớnh toàn vẹn của EAPOL. Client khụng dõy sẽ trả lời việc nhận được thụng điệp EAPOL bằng một thụng điệp EAPOL.
3.3- Tiến trỡnh mó hoỏ và giải mó WPA
WPA cần cỏc giỏ trị sau để tiến hành mó hoỏ và đảm bảo tớnh toàn vẹn của một khung dữ liệu khụng dõy
- Vector khởi tạo IV, bắt đầu bằng 0 và tăng lờn sau mỗi khung tin được gửi đi
- Khoỏ mó hoỏ dữ liệu (cho kết nối unicast) hoặc nhúm cỏc mó hoỏ dữ liệu (cho kết nối kiểu quảng bỏ)
- Địa chỉ đớch và địa chỉ nguồn của khung tin khụng dõy
- Giỏ rị của trường ưu tiờn, được thiết lập bằng 0 và bảo toàn cho cỏc mục đớch sau này
- Khoỏ kiểm tra toàn vẹn dữ liệu (cho kết nối unicast) hoặc nhúm khoỏ kiểm tra (cho cỏc kết nối kiểu quảng bỏ)
57
Hỡnh 11 mụ tả tiến trỡnh mó hoỏ WPA cho một khung dữ liệu dạng kết nối đơn lẻ :
1. Vector khởi tạo IV, địa chỉ bờn nhận, và khoỏ để mó hoỏ dữ liệu được đưa vào một hàm trộn khoỏ WPA, để tớnh ra giỏ trị khoỏ mó cho từng gúi tin.
2. Địa chỉ bờn nhận, địa chỉ bờn gửi, độ ưu tiờn, dữ liệu (gúi tớn 802.11 khụng mó), và giỏ trị kiểm tra tớnh toàn vẹn được đưa vào thuật toỏn toàn vẹn dữ liệu Michael để tạo ra giỏ trị MIC.
3. Giỏ trị kiểm tra tớnh toàn vẹn ICV được tớnh từ việc kiểm tra tổng cỏc bit CRC-32
Hỡnh 11 : Quỏ trỡnh mó hoỏ WAP
4. Vector khởi tạo và khoỏ mó hoỏ cho từng gúi tin được đưa vào bộ sinh số ngẫu nhiờn PRNG để tạo ra một luồng khoỏ cú cựng kớch thước với dữ liệu, số MIC và ICV
IV,DA, Khoỏ toàn vẹn dữ liệu
DA+SA+Ưu tiờn+Dữ liệu, khoỏ toàn vẹn dữ liệu Bộ trộn khoỏ