Để đảm bảo tính bí mật và tính toàn vẹn dự liệu, WEP mã hóa từng frame (frame là đơn vị được đóng gói và truyền bởi tầng MAC) dữ liệu bằng thuật toán và khóa chia sẻ giữa AP và STA và đóng gói thành gói dữ liệu WEP gửi cho bên nhận. Bên nhận nhận được gói dữ liệu WEP có thể giải mã và kiểm tra tính toàn vẹn dữ liệu của thông tin nhờ phân tích gói dữ liệu WEP.
Quá trình mã hóa gói dữ liệu WEP của bên gửi được mô tả trong hình 2.11a, gồm những bước sau [18]:
Bước 1: Với mỗi frame dữ liệu M (dạng bản rõ), WEP sử dụng thuật toán CRC32 để mã hóa thành bản mã có độ dài 32 bit, được gọi là giá trị kiểm tra tính toàn vẹn ICV (Integrity Check Value), ta viết ICV = CRC32(M). ICV sẽ được ghép với dữ liệu M, ta viết P = M || ICV
Bước 2: Bên gửi duy trì một giá trị vector khởi tạo IV (Initialization Vector) có độ dài 24bit, IV có không gian giá trị gồm 224 phần tử và được sinh ngẫu nhiên với từng frame. Sau đó WEP sử dụng thuật toán
RC4 với tham số vào IV||KWEP sẽ được khóa trộn cho frame dữ liệu đó,
ký hiệu K = RC4(IV||KWEP)
STA AP
1. Auth Request : Auth Alg = 0; Trans Num=1
2. Auth Request : Auth Alg = 1; Trans Num=2; Challenge= [Số ngẫu nhiên]
3. Auth Request : Auth Alg = 1; Trans Num=3; Res’=RC4[IV||K] Challenge
4. Auth Request : Auth Alg = 1; Trans Num=4; Status=1
Hình 2.10b : Phương pháp xác thực khóa chia sẻ - SKA
Comment [u15]: Prapul Chanda (2005), "Bulletproof wireless security: GSM, UMTS, 802.11, and Ad Hoc Security", Newnes Publisher, pp 169-170
Bước 3: Bên gửi mã hóa dữ liệu bằng cách cách XOR 2 kết quả của bước
1 và bước 2, ta viết C= P K, ta được bản mã C. Bên gửi sẽ giửi cho
bên nhận thông điệp Output = IV || C
Bên nhận khi nhận được các gói dữ liệu WEP, sẽ tiến hành giải mã và kiểm tra tính toàn vẹn của dữ liệu theo phương pháp ngược lại, được mô tả trong hình 2.11b