f. Điểm mạnh và điểm yếu của thuật toán RC4
2.2.2.2. Quá trình hoạt động của CCMP
Tại phía gửi, khi thông điệp cần gửi đi được chuyển xuống CCMP, quá trình diễn ra như sau:
Mỗi thông điệp cần gửi đi có ghi nhãn “plaintext frame” trên hình 2.11 được gán một số thứ tự gói (PN) có độ lớn 48bit. Số thứ tự gói cũng giống như TKIP IV, là duy nhất và không được sử dụng lại cho từng khóa phiên.
Trường Dữ liệu xác thực bổ sung được tạo ra chứa giá trị những thông tin trong khung tin 802.11 cần được kiểm tra tính toàn vẹn nhưng không được mã hóa (AAD) bao gồm phiên bản giao thức, loại khung tin, các bit hệ thống, số hiệu mảnh, các bit thứ tự, địa chỉ MAC …
Tiếp đó, giá trị CCMP nonce được tạo ra ứng với bước “create none” trên hình 2.10. Đây chính là số đếm sử dụng trong chế độ đếm để mã hóa dữ liệu
Các giá trị này cùng với phần dữ liệu của thông điệp được chuyển vào bộ CCM, trong đó phần thân thông điệp được mã hóa AES sử dụng khóa phiên và CCMP nonce, còn trường AAD và dữ liệu được tạo mã kiểm tra toàn vẹn 8 byte MIC nhờ CBC-MAC sử dụng khóa phiên.
Hình 2.10: Cấu trúc khung tin CCMP
Hình 2.11: Quá trình mã hóa CCMP
Tại phía nhận, khi nhận được khung tin, quá trình giải mã và kiểm tra diễn ra như sau: Khung tin nhận được bởi tầng MAC sẽ được kiểm tra giá trị FCS trước khi
chuyển xuống cho CCMP xử lý.
Trường AAD được tạo ra từ khung tin nhận được. Giá trị CCMP nonce được tính toán.
Phía nhận giải mã dữ liệu sử dụng khóa phiên và CCMP nonce.
Giá trị MIC được tính toán trên trường AAD và dữ liệu đã giải mã rồi so sánh với giá trị MIC trong khung tin nhận được. Nếu 2 giá trị này khác nhau, quá trình xử lý dừng.
Giá trị số thứ tự gói được kiểm tra để chống lại hình thức tấn công replay. Khung tin nguyên thuỷ được hình thành.