IN1[0]…IN1[47] = SQN[0]…SQN[47]

Một phần của tài liệu nghiên cứu một số phương pháp bảo mật mạng thông tin di động 3g tại việt nam (Trang 43 - 45)

5. Dòng lệnh chế độ bảo mật (UIAs, IK, UEAs,

IN1[0]…IN1[47] = SQN[0]…SQN[47]

IN1[48]…IN1[63] = AMF[0]…AMF[15] IN1[64]…IN1[111] = SQN[0]…SQN[47] IN1[112]…IN1[128] = AMF[0]…AMF[15]

Năm hằng số 128 bit c1, c2, c3, c4, c5 đƣợc định nghĩa nhƣ sau: c1[i] = 0 với 0 ≤ i ≤ 127

c2[i] = 0 với 0 ≤ i ≤ 127, ngoại trừ c2[127] = 1 c3[i] = 0 với 0 ≤ i ≤ 127, ngoại trừ c3[126] = 1 c4[i] = 0 với 0 ≤ i ≤ 127, ngoại trừ c4[125] = 1 c5[i] = 0 với 0 ≤ i ≤ 127, ngoại trừ c5[124] = 1 Năm số nguyên r1, r2, r3, r4, r5 đƣợc định nghĩa nhƣ sau:

r1 = 64; r2 = 0; r3 = 32; r4 = 64; r5 = 96

Năm khối 128 bit OUT1, OUT2, OUT3, OUT4, OUT5 đƣợc tính tốn nhƣ sau: OUT1 = E[TEMP  rot(IN1  OPC,r1)  c1]K  OPC

OUT2 = E[rot(TEMP  OPC,r2)  c2]K  OPC OUT3 = E[rot(TEMP  OPC,r3)  c3]K  OPC OUT4 = E[rot(TEMP  OPC,r4)  c4]K  OPC

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Các đầu ra của các hàm khác nhau đƣợc định nghĩa nhƣ sau: Đầu ra của f1 = MAC-A, trong đó: MAC-A[0]…MAC-A[63] = OUT1[0]…OUT1[63];

Đầu ra của f1*

= MAC-S, trong đó: MAC-S[0]…MAC-S[63] = OUT1[64]..OUT2[127];

Đầu ra của f2 = RES, trong đó: RES[0]…RES[63] = OUT2[64]…OUT2[127]; Đầu ra của f3 = CK, trong đó: CK[0]…CK[127] = OUT3[0]…OUT3[127]; Đầu ra của f4 = IK, trong đó: IK[0]…IK[127] = OUT4[0]…OUT4[127]; Đầu ra của f5 = AK, trong đó: AK[0]…AK[47] = OUT5[0]…OUT5[47];

Đầu ra của f5* = AK, trong đó: AK[0]…AK[47] = OUT5[0]…OUT5[47] (2.4). (f1* là hàm nhận thực bản tin trong trƣờng hợp phải đồng bộ lại, f5* là hàm tạo khóa đƣợc sử dụng để tính tốn khóa AK trong các thủ tục đồng bộ lại).

- Việc sử dụng OP: OPC = OP  E[OP]K. Cấu trúc này không thể đảo ngƣợc đƣợc ở cả OP và K thậm chí khi 2 giá trị này đƣợc biết. Trong trƣờng hợp đó không cần thiết phải lƣu giữ OP ở mỗi USIM. Điều này có nghĩa là thậm chí ngay cả khi USIM bị thỏa hiệp, thì giá trị của OP vẫn đƣợc giữ bí mật. Giá trị của OPC

f1 EK rotate by r1 Hình 2.15 : Thuật tốn MILENAGE SQN||AMF||SQM||AMF f1* EK OP OPC EK RAND OPC c1 OPC f2 f5 EK rotate by r2 OPC c2 OPC EK rotate by r5 c5 OPC OPC f5* EK rotate by r1 f4 OPC c4 OPC OPC EK rotate by r3 c3 f3 OPC OPC

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

đƣợc XOR với đầu vào và đầu ra của các hàm kernel, do đó cung cấp bảo vệ hơn nữa chống lại các tấn công. Ngƣời ta khuyến nghị rằng OPC nên đƣợc tính tốn rời rạc khỏi USIM nhƣ là quá trình riêng trƣớc, điều này sẽ đơn giản hóa thuật toán ở thẻ card và tránh đƣợc việc lƣu giữ OP ở card. OP đƣợc khuyến nghị giữ bí mật, nhƣng MILENAGE đƣợc thiết kế để bảo mật thậm chí khi giá trị của OP đƣợc biết bởi nhà phân tích mật mã học. Nhà khai thác cũng có thể lựa chọn các giá trị OP khác nhau cho các thuê bao khác nhau hoặc các nhóm thuê bao khác nhau.

- Quay vòng và dịch các hằng số: Các hằng số quay vòng r1 đến r5 và các hằng số phụ c1 đến c5 đƣợc lựa chọn để dảm bảo sự rời rạc giữa tất cả hàm mật mã liên quan. Ngƣời ta chỉ ra rằng, tất cả các giá trị đƣợc lựa chọn sẽ bảo vệ chống lại các xung đột ở đầu vào (và do đó bảo vệ đầu ra) của các tính tốn EK cuối cùng.

- Bảo vệ chống lại các tấn công kênh bằng cách lựa chọn một hạt nhân cho phép thực hiện bảo vệ trong khoảng thời gian ràng buộc.

- Số lƣợng các toán tử hạt nhân: Đối với mỗi hàm, giá trị ngẫu nhiên RAND đi qua hai vòng của hàm hạt nhân trƣớc khi các giá trị của đầu ra đƣợc cung cấp. mật mã hóa OP trong thủ tục sẽ cung cấp thêm mức độ bảo mật. Các đầu vào khác tới f1 đƣợc XOR với các giá trị ngẫu nhiên E[RAND  OPC]K và một hằng số không biết.OPC trƣớc khi chúng đi vào hàm kernel. Tổ chức Task Force chỉ ra rằng các tấn công nào đó chống lại kiến trúc đƣợc đề nghị liên quan đến 264 tính tốn.

- Chế độ hoạt động: Cấu trúc f1 và f1* là tƣơng đƣơng với chế độ CBC MAC tiêu chuẩn đƣợc áp dụng cho các khối đầu vào RAND và SQN||AMF||SQN||AMF. Các hàm f2 đến f5 đƣợc định nghĩa là loại hàm mật mã kép của thách thức ngẫu nhiên với một cấu trúc chế độ bộ đếm bằng cách quay vòng và cộng hằng số trƣớc khi mật mã hóa lần 2, chế độ bộ đếm này còn đƣợc gọi là chế độ XOR. Đây là chế độ hoạt động đã chứng tỏ đƣợc tính bảo mật tốt với các dạng tấn công.

Một phần của tài liệu nghiên cứu một số phương pháp bảo mật mạng thông tin di động 3g tại việt nam (Trang 43 - 45)