CHƢƠNG 3 : AN NINH TRONG MẠNG UMTS
3.9. Các hàm mật mã
3.9.9. Sử dụng hàm f9 để tính toán mã toàn vẹn
Hầu hết các phần tử thông tin báo hiệu điều khiển được gửi giữa UE và mạng đều được coi là nhạy cảm và cần được bảo vệ. Hàm toàn vẹn f9 được sử dụng cho các thông tin báo hiệu được phát đi giữa UE và RNC. Trái lại số liệu của người sử dụng không được bảo vệ toàn vẹn mà nó chỉ được bổ sung ở các giao thức bậc cao hơn nếu cần thiết. Bảo vệ toàn vẹn là bắt buộc ở UMTS cho các bản tin báo hiệu. Hàm f9 được sử dụng giống như AUTN và AUTS. Nó bổ sung các con dấu vào các bản tin để đảm bảo rằng các bản tin này được tạo ra tại nhận dạng hợp lệ. Nó cũng đảm bảo rằng bản tin không phải là giả mạo.
Bộ đếm COUNT-I tăng mỗi khi có bản tin được bảo vệ toàn vẹn. Tồn tại hai bộ đếm cho đường lên và đường xuống. COUNT-I cùng với số nhận dạng hướng đảm bảo rằng các thông số đầu vào luôn thay đổi trong một kết nối để tránh tấn công phát lại. Khoá toàn vẹn được tạo ra ở cả AuC lẫn USIM. VLR/SGSN nhận IK trong AV đến từ AuC và gửi nó đến RNC sau khi nhận thực tương hỗ hoàn tất. Khi xảy ra chuyển giao, khoá toàn vẹn được chuyển từ RNC hiện thời đến RNC mới. IK không thay đổi khi chuyển giao.
Các thông số đầu vào cho hàm toàn vẹn được cho trong bảng:
Thông số Mô tả Số bit
COUNT-I Số trình tự toàn vẹn 32
IK Khóa toàn vẹn 128
FRESH Từ đặc biệt phía mạng 32
DIRECTION Hoặc 0 ( UE RNC) hoặc 1 ( RNC UE) 1
MESSAGE Bản tin báo hiệu cùng với nhận dạng kênh mang vô
tuyến
Từ đặc biệt phía mạng FRESH được sử dụng để chống các tấn công phát lại. Một giá trị FRESH được ấn định cho từng người sử dụng và RNC tạo ra từ này khi thiết lập kết nối. Sau đó nó gửi từ này đến ngưởi dụng bằng “Lệnh chế độ an ninh”. Trong thời gian hiệu lực của giá trị FRESH là một kết nối và FRESH mới sẽ được tạo ra tại kết nối sau. Ngoài ra khi chuyển giao, FRESH sẽ được đặt lại bằng giá trị mới. Số nhận dạng hướng là 1 bit, với “0” cho bản tin từ USIM đến RNC (đường lên) và “1” cho bản tin từ RNC đến USIM (đường xuống).
Số nhận dạng hướng (DIRECTION) được sử dụng để phân biệt bản tin phát và bản tin thu. Điều này cần thiết để tránh việc hàm sử dụng cùng một tham số cho các bản tin phát đi và phát về.
Bản tin đầu vào quan trọng cho hàm. Nhờ hàm này bản tin được bảo vệ toàn vẹn. Nếu ai đó thay đổi bản tin giữa nơi gửi và nơi nhận, nới nhận sẽ không có XMAC-I trùng với MAC-I thu được, vì thế nơi nhận sẽ từ chối bản tin này.
Hình 3.11: Nhận thực toàn vẹn bản tin sử dụng hàm toàn vẹn f9
MAC-I và XMAC-I
Mã nhận thực toàn vẹn bản tin cho toàn vẹn số liệu MAC-I và XMAC-I kỳ vọng được sử dụng sau khi kết thúc các thủ tục AKA. MAC-I được tạo ra tại phía phát và được so sánh với XMAC-I tại phía thu. Phía phát tạo ra MAC-I với bản tin là một đầu vào và phía thu sử dụng bản tin đó đi kèm cho hàm của chính nó để tạo ra XMAC- I. Nếu chúng trùng nhau chứng tỏ rằng bản tin không bị thay đổi và gốc của nó được nhận thực. Nếu không trùng nhau, bản tin bị từ chối.
Nhận dạng thuật toán toàn vẹn UMTS
Vì thuật toán toàn vẹn UMTS xảy ra ở cả USIM và RNC, nên chúng có thể ở các miền của các nhà khai thác khác nhau. Vì thế các nút có thể hỗ trợ các thuật toán khác nhau. Để nhận dạng các thuật toán khác nhau đã được dùng, mỗi UIA (UMTS Integrity Algorithm) được sử dụng, mỗi UIA có một nhận dạng riêng 4 bit. USIM sẽ cung cấp cho RNC thông tin về các UIA mà nó hỗ trợ và sau đó RNC quyết định sẽ sử dụng UIA nào (theo ưu tiên của nhà khai thác dịch vụ).
Handover to UTRAN Complete (hoàn thành chuyển giao đến UTRAN).
Paging Type (kiểu tìm gọi 1)
PUSCH CAPACITY REQUEST
PHYSICAL SHARED CHANNEL ALLOCATION
RRC CONNECTION REQUEST
RRC CONNECTION SETUP
RRC CONNECTION SETUP COMPLETE
RRC CONNECTION REJECT
RRC CONNECTION RELEASE (CCCH only)
SYSTEM INFORMATION (BROADCAST INFORMATION)
SYSTEM INFORMATION CHANGE INDICATION
TRANSPORT FORMAT COMBINATION CONTROL (TM DCCH only)