4. Hướng nghiên cứu của đề tài
2.4.1.4. Mã kiểm tra toàn vẹn Michael
Để thay thế cho mã kiểm tra toàn vẹn CRC vốn dễ bị tấn công, TKIP sử dụng thuật toán Michael để tạo mã toàn vẹn cho thông điệp.
Được phát triển bởi Neils Ferguson với mục đích xây dựng một thuật toán tạo mã kiểm tra toàn vẹn phục vụ cho TKIP, thuật toán Michael chỉ sử dụng các phép toán bit tráo đổi, dịch chuyển và loại trừ nên việc áp dụng không gây ảnh hưởng tới năng lực xử lý thấp của các phần cứng trước đó.
Thuật toán Michael thực hiện việc tính toán ở tầng trên trước khi khung tin được chuyển cho tầng MAC. Thuật toán sử dụng khóa có độ dài 64 bit, thực hiện tính toán trên các khối 32 bit của toàn bộ nội dung thông điệp. Trước khi thực hiện, thuật toán sẽ nối một byte có giá trị 0x5a và từ 4 đến 7 byte có giá trị 0 vào đuôi thông điệp để đảm bảo nội dung được tính toán là bội số của 4. Sau khi tính toán, mã MIC có độ dài 8 byte, được nối vào đuôi gói tin MSDU trước khi truyền dữ liệu đi. Dữ liệu này khi truyền đi có thể bị chia nhỏ, tuy nhiên tại phía nhận, mã MIC chỉ được tính toán khi khung tin đã được tập hợp lại.
Tuy nhiên nhận thấy mã kiểm tra MIC là chưa đủ để chống chọi lại khả năng bị tấn công, chuẩn 802.11i còn đưa thêm vào một bước gọi là Michael Countermeasure (tạm dịch là Phản ứng khi mã MIC sai). Quy trình này thực hiện như sau:
- Mỗi khi phát hiện ra mã MIC sai, giá trị này được đánh dấu và ghi lại. Tuy nhiên trước khi được kiểm tra toàn vẹn, khung tin phải đi qua hai quá trình: kiểm tra toàn vẹn của WEP và kiểm tra chống tấn công replay của TKIP. Do đó, bất kỳ một lỗi MIC nào cũng được coi là nghiêm trọng và cần được sự can thiệp của quản trị viên hệ thống.
- Nếu trong 60 giây, hệ thống bắt gặp mã MIC sai lần thứ 2, countermeasure sẽ thực hiện việc ngắt kết nối trong vòng 60 giây tiếp theo. Việc ngắt kết nối sẽ khiến cho kẻ tấn công không thể thực hiện một cách nhanh chóng. Mặc dù 802.11 quy định thời gian phản ứng khi mã MIC sai là 60 giây, một số nhà sản xuất vẫn cho phép cấu hình lại khoảng thời gian này.
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
- Các trạm sẽ xóa khóa chính trong bộ nhớ và yêu cầu khóa mới từ phía bộ phận xác thực. Bộ phận xác thực sã thực hiện việc sinh lại và phân phối khóa cho các bên.
Thuật toán Michael cung cấp mức độ an ninh 20 bit. Theo đó, sau khoảng 219 lần, kẻ tấn công có thể giả mạo được giá trị MIC. Với giá trị này trên một mạng 802.11b có khả năng truyền 212 gói tin trong một giây, kẻ tấn công chỉ mất khoảng 2 phút để thu được giá trị MIC giả mạo hợp lệ. Tuy nhiên, cơ chế phản ứng khi MIC sai chỉ cho phép tối đa 2 gói tin giả mạo trong 1 phút, và do đó thời gian để kẻ tấn công có thể tạo được một gói tin giả mạo có MIC hợp lệ là 218 phút (tương đương 6 tháng). Do đó cơ chế phản ứng khi MIC sai được gọi là an toàn với kiểu tấn công giả mạo thông điệp.