đồ án tổng 63 trang có demo
CHƯƠNG I: TỔNG QUAN VỀ 3G
CHƯƠNG II: KHẢO SÁT AN NINH TRONG THÔNG TIN DI ĐỘNG
CHƯƠNG III: KHẢO SÁT AN NINH TRONG 3G UMTS
63 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 3485 | Lượt tải: 5
Bạn đang xem trước 20 trang tài liệu Đồ án Khảo sát an ninh trong Thông tin di động và mạng 3G co demo, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Sau khi thu được bản tin, phía thu sử dụng khóa chia sẻ (giống khóa bên phát) để giải mật mã (biến đổi ngược) và được văn bản gốc.
Phương pháp trên có một số nhược điểm: trước hết không thực tế khi khóa phải có độ dài bằng độ dài số liệu, mặc dù khóa càng dài càng cho tính an ninh cao và càng khó mở khóa. Thông thường các khóa ngắn được sử dụng (64 hoặc 128bit) và chúng được lặp lại nhiều lần cho số liệu. Các phép toán phức tạp hơn có thể được sử dụng vì phép cộng không đủ để đảm bảo. Tiêu chuẩn mật mã hóa số liệu (DES) thường được sử dụng, mặc dù không phải là đảm bảo nhất. Nhược điểm thứ hai là phía phát và phía thu đều sử dụng một khóa chung (khóa chia sẻ).
- Tính thuận nghịch: các hàm số dùng trong mật mã học phải có khả năng đảo ngược (reversible), vì chúng ta cần phải có khả năng vừa mật mã hóa các thông điệp song cũng đồng thời giải mã chúng (với điều kiện chúng ta có chìa khóa đúng của nó).
- Những hạn chế: Hạn chế của các thuật toán khóa đối xứng bắt nguồn từ yêu cầu về sự phân hưởng chìa khóa bí mật, mỗi bên phải có một bản sao của chìa khóa.
Do khả năng các chìa khóa có thể bị phát hiện bởi đối thủ mật mã, chúng thường phải được bảo vệ trong khi phân phối và trong khi dùng. Hậu quả của yêu cầu về việc lựa chọn, phân phối và lưu trữ các chìa khóa một cách không có lỗi, không bị mất mát là một việc làm khó khăn, khó có thể đạt được một cách đáng tin cậy.
2.5.2 Mã hóa bất đối xứng
Mã hóa bất đối xứng sử dụng một cặp chìa khóa có liên quan với nhau về mặt toán học, một chìa công khai dùng để mã hóa (public key) và một chìa bí mật dùng để giải mã (private key). Một thông điệp sau khi được mã hóa bởi chìa công khai sẽ chỉ có thể được giải mã với chìa bí mật tương ứng. Khóa thứ nhất được phân phối rộng rãi trên các đường truyền không an ninh cho mục đích sử dụng công khai. Khóa thứ hai không bao giờ được truyền trên mạng và nó chỉ được sử dụng bởi phía đối tác cần giải mật mã số liệu. Hai khóa này liên hệ với nhau một cách phức tạp bằng cách sử dụng rất nhiều số nguyên tố và các hàm một chiều. Kỹ thuật này dẫn đến không thể tính toán được khóa riêng dựa trên khóa công khai. Khóa càng dài thì càng khó phá vỡ hệ thống. Các hệ thống khóa 64bit như DES, có thể bị tấn công rễ ràng bằng cách tìm từng tổ hợp khóa đơn cho đến khi tìm được khóa đúng. Các hệ thống khóa 128bit phổ biến hơn
Các thuật toán bất đối xứng: RSA, Elliptic Curve, ElGamal, Diffie Hellman …
Hình 2.4 Mô hình mã hóa bất đối xứng
Mã hóa đối xứng chỉ sử dụng một khóa cho việc mã hóa và giải mã.
Ngược lại mã hóa bất đối xứng sử dụng một cặp chìa khóa có liên quan với nhau về mặt toán học.
Một chìa công khai dùng để mã hoá (public key) và một chìa bí mật dùng để giải mã (private key).
Một thông điệp sau khi được mã hóa bởi chìa công khai sẽ chỉ có thể được giải mã với chìa bí mật tương ứng.
Do các thuật toán loại này sử dụng một chìa khóa công khai nên còn có tên gọi khác là thuật toán mã hóa dùng chìa khóa công khai (public-key cryptography).
Về khía cạnh an toàn, các thuật toán mật mã hóa khóa bất đối xứng cũng không khác nhiều với các thuật toán mã hóa khóa đối xứng. Có những thuật toán được dùng rộng rãi, có thuật toán chủ yếu trên lý thuyết; có thuật toán vẫn được xem là an toàn, có thuật toán đã bị phá vỡ...
Nhìn chung, chưa có thuật toán nào được chứng minh là an toàn tuyệt đối Vì vậy, cũng giống như tất cả các thuật toán mật mã nói chung, các thuật toán mã hóa khóa công khai cần phải được sử dụng một cách thận trọng.
- Một số điểm yếu của mã hóa bất đối xứng
Khả năng bị tấn công dạng kẻ tấn công đứng giữa : kẻ tấn công lợi dụng việc phân phối khóa công khai để thay đổi khóa công khai. Sau khi đã giả mạo được khóa công khai, kẻ tấn công đứng ở giữa 2 bên để nhận các gói tin, giải mã rồi lại mã hóa với khóa đúng và gửi đến nơi nhận để tránh bị phát hiện.
Tồn tại khả năng một người nào đó có thể tìm ra được khóa bí mật.
Khả năng một mối quan hệ nào đó giữa 2 khóa hay điểm yếu của thuật toán dẫn tới cho phép giải mã không cần tới khóa hay chỉ cần khóa mã hóa vẫn chưa được loại trừ.
Gần đây, một số dạng tấn công đã đơn giản hóa việc tìm khóa giải mã dựa trên việc đo đạc chính xác thời gian mà một hệ thống phần cứng thực hiện mã hóa.
Để đạt được độ an toàn tương đương, thuật toán mật mã hóa khóa bất đối xứng đòi hỏi khối lượng tính toán nhiều hơn đáng kể so với thuật toán mật mã hóa khóa đối xứng. Vì thế trong thực tế hai dạng thuật toán này thường được dùng bổ sung cho nhau để đạt hiệu quả cao.
- Một số ứng dụng mã hóa bất đối xứng:
Một ứng dụng rõ ràng nhất của mật mã hóa khóa công khai là bảo mật
Các thuật toán tạo chữ ký số khóa công khai có thể dùng để nhận thực. Một người sử dụng có thể mã hóa văn bản với khóa bí mật của mình. Nếu một người khác có thể giải mã với khóa công khai của người gửi thì có thể tin rằng văn bản thực sự xuất phát từ người gắn với khóa công khai đó.
Các đặc điểm trên còn có ích cho nhiều ứng dụng khác như: tiền điện tử, thỏa thuận khóa…
2.5.3 So sánh mã đối xứng và mã bất đối xứng
Hình 2.5 So sánh mã đối xứng và mã bất đối xứng
2.5.4 Chữ kí điện tử (Digital Signature)
Chữ kí điện tử là đoạn dữ liệu ngắn đính kèm với văn bản gốc để chứng thực tác giả của văn bản và giúp người nhận kiểm tra tính toàn vẹn của nội dung văn bản gốc.
Chữ kí điện tử được tạo ra bằng cách áp dụng thuật toán băm một chiều trên văn bản gốc để tạo ra bản phân tích văn bản (message digest), sau đó mã hóa tạo ra chữ kí số đính kèm với văn bản gốc để gửi đi. Khi nhận, văn bản được tách làm 2 phần, phần văn bản gốc được tính lại để so sánh được phục hồi từ việc giải mã chữ kí số.
2.5.4.1 Mô hình chữ kí điện tử
Chữ ký điện tử được tạo ra bằng cách tính toán tóm tắt bản tin gốc thành bản tin tóm tắt (MD).
Hình 2.6 Mô hình chữ kí điện tử
Các MD được kết hợp với thông tin của người ký, nhãn thời gian và thông tin cần thiết khác. MD là một hàm nhận số liệu đầu vào có kích cỡ bất kỳ và tạo ra ở đầu ra một kích cỡ cố định. Tập thông tin này, sau đó được mật mã hóa bằng khóa riêng của phía phát và sử dụng các giải thuật bất đối xứng. Khối thông tin nhận được sau mật mã hóa được gọi là khóa điện tử.
Do MD là một hàm nên nó cũng thể hiện phần nào trạng thái hiện thời của bản tin gốc. Nếu bản tin gốc thay đổi thì MD cũng thay đổi. Bằng cách kết hợp MD vào chữ ký điện tử, phía thu có thể dễ dàng phát hiện bản tin gốc có bị thay đổi kể từ khi chữ ký điện tử được tạo hay không.
2.5.4.2 Nhận thực
Trong an ninh máy tính xác thực là một quy trình nhằm cố gắng xác minh nhận dạng số của phần truyền gửi thông tin trong giao thông liên lạc chẳng hạn như một yêu cầu đăng nhập. Phần gửi cần phải xác thực có thể là một người dùng sử dụng một máy tính, bản thân một máy tính hoặc một chương trình ứng dụng máy tính .
Nhiều phương pháp mật mã đã được xây dựng như chữ ký số và phương pháp xác thực bằng thử thách-trả lời.
2.5.4.3 Nhận thực thông qua bản tin
Việc xác nhận bằng bản tin là một phương pháp đảm bảo toàn vẹn số liệu và nhận thực nguồn gốc số liệu. Phương pháp phổ biến này là sử dụng mật mã thông điệp xác thực MAC.
Số liệu
Số liệu
Số liệu
Giải thuật MAC
Giải thuật MAC
MAC
MAC
MAC
Khóa bí mật chia sẻ
Khóa bí mật chia sẻ
=
Hình 2.7 Phương pháp nhận thực sử dụng MAC.
MAC là một hàm băm được dùng thông dụng để bảo vệ tính toàn vẹn của thông tin truyền đi trong hệ thống viễn thông. MAC sử dụng khóa bí mật chia sẻ (giữa A và B) là đầu vào để tạo ra một mã nhận thực bản tin MAC. MAC được gắn vào bản tin gốc, sau đó được phát đến nơi nhận, phía thu sẽ sử dụng cùng giải thuật MAC tương ứng như phía phát để tính toán MAC dựa trên bản tin gốc thu được, nếu bản tin gốc bị thay đổi trong quá trình truyền dẫn thì MAC được tạo ra ở phía thu sẽ khác với MAC thu được từ phía phát gửi đến. Điều này chứng tỏ số liệu không còn nguyên vẹn nữa.
MD5 (Message-Digest algorithm 5) là một hàm băm mật mã được sử dụng phổ biến với giá trị dài 128bit. Phía phát sẽ gửi bản tin gốc cùng với MD đến phía thu, phía thu tính MD từ bản tin gốc nhận được và so sánh với MD thu được để nhận định bản tin còn nguyên vẹn hay không. MD5 đã được dùng trong nhiều ứng dụng bảo mật, và cũng được dùng phổ biến để kiểm tra tính toàn vẹn của tập tin.
Giải thuật SHA-1 cũng có thể được sử dụng để tính toán MD giống như MD5. Tuy nhiên MD ở đầu ra của nó chỉ là 120bit.
Bằng cách sử dụng hàm làm rối (hàm Hash) một máy tính có thể nhận thực một người sử dụng mà không cần lưu trữ mật khẩu trong văn bản thô. Sau khi tạo ra một tài khoản (account) người sử dụng gõ mật khẩu, máy tính sử dụng hàm Hash một chiều với đầu vào là mật khẩu, để tạo ra giá trị làm rối (giá trị Hash) và lưu giữ giá trị này. Lần sau khi người sử dụng đăng nhập vào máy tính, máy tính sẽ sử dụng hàm Hash với đầu vào là mật khẩu mà người sử dụng gõ vào để tính ra giá trị Hash và so sánh giá trị này với giá trị được lưu. Nếu kết quả giống nhau thì người sử dụng đó được quyền đăng nhập. Do mật khẩu không được lưu trong văn bản thô nên rất khó bị lộ.
Cả MD5 và SHA-1 đều là các hàm Hash không khóa, nghĩa là không có khóa bí mật giữa các bên tham gia thông tin.
2.5.5 Mật mã hóa số liệu
2.5.5.1 Giao thức thiết lập khóa (Key Establishment Protocol)
Giao thức thiết lập khóa cách thức trao đổi khóa giữa hai đối tác thông qua đường truyền, các giao thức đã được các nhà khoa học chứng minh là an toàn đối với mọi sự cố xảy ra trên đường truyền.
Giao thức thiết lập khóa được chia làm 2 loại:
Giao thức thỏa thuận khóa (Key agreement protocol) : khóa được thiết lập không cần sự giúp đỡ của đối tác thứ ba.
Giao thức truyền khóa (Key transport protocol) : khóa được đối tác thứ ba tạo và phân phối.
2.5.5.2 Các kỹ thuật phá mã hiện đại
Những thiết kế mật mã bị bẻ gẫy bao gồm:
- DES: là Tiêu chuẩn mã hóa dữ liệu. DES là một thuật toán khối với kích thước khối 64 bit và kích thước chìa khóa 56 bit. DES là một thuật toán mã hóa đối xứng, tức là cả hai quá trình mã hóa và giải mã đều dùng một chìa khóa. DES cùng với mã hóa bất đối xứng đã mở ra một thời kì mới cho ngành mã hóa thông tin.
DES mã hóa thông tin qua 16 bước, ở mỗi bước một nữa khối thông tin sẽ được chuyển đổi và hoán vị theo một quá trình phức tạp. DES đã trải qua nhiều khảo sát, phân tích kỹ lưỡng và được công nhận là an toàn đối với các dạng tấn công.
- Mã hóa WEP: là một thuật toán bảo nhằm bảo vệ sự trao đổi thông tin chống lại sự nghe trộm, chống lại những nối kết mạng không được cho phép cũng như chống lại việc thay đổi hoặc làm nhiễu thông tin truyền. WEP sử dụng RC4 cùng với một mã 40 bit và một số ngẫu nhiên 24 bit để mã hóa thông tin.
Sơ đồ mã hóa được miêu tả bởi hình sau:
Hình 2.8 Sơ đồ mã hóa bằng WEP
Các mã A5/1, A5/2 được sử dụng trong điện thoại di động GSM.
Vì vậy độ lớn khóa đề nghị đối với việc bảo an lại càng ngày càng phải tăng lên, vì công suất máy tính cần thiết để bẻ gãy các mã càng ngày càng trở nên rẻ tiền hơn và sẵn có.
2.6 Kiến trúc an ninh tổng quát của hệ thống thông tin di động
Kiến trúc an ninh của một hệ thống thông tin di động được chia thành ba mức gồm: mức truyền tải, mức nhà phục vụ và mức ứng dụng, và năm miền sau:
- An ninh truy nhập mạng (NAS): tập các tính năng để đảm bảo các người sử dụng truy nhập an ninh đến các dịch vụ do các hệ thống thông tin di động cung cấp, đặc biệt là chống lại các tấn công trên các đường truy nhập vô tuyến.
- An ninh miền mạng (NDS): tập các tính năng an ninh để đảm bảo an ninh cho các nút mạng trong miền nhà cung cấp dịch vụ trao đổi báo hiệu và đảm bảo chống lại các tấn công trên mạng hữu tuyến.
- An ninh miền người sử dụng (UDS): tập các tính năng an ninh để đảm bảo truy nhập an ninh đến MS.
- An ninh miền ứng dụng (ADS): tập các tính năng an ninh để đảm bảo các ứng dụng trong miền người sử dụng và miền nhà cung cấp dịch vụ trao đổi an ninh các bản tin.
2.7 Chứng thư điện tử
Chứng thư điện tử có cấu trúc dữ liệu bao gồm khóa công khai và những thông tin chi tiết mô tả người chủ sở hữu. Chứng thư điện tử được xem như mã số điện tử nhằm chống lại sự giả mạo sau khi được ký nhận bởi CA trong môi trường lưới.
Chứng thư X.509 thường được sử dụng khi nhắc đến chứng thư điện tử, cơ chế hoạt động tương tự như hộ chiếu, trong đó cung cấp thông tin xác định tài nguyên trong môi trường lưới. Tuy nhiên, khác biệt giữa chứng thư điện tử và hộ chiếu trong cách sử dụng là chứng thư điện tử được phép công bố rộng rãi trên môi trường lưới, trong khi người ta thường rất ngại phải đưa cho người khác hộ chiếu của mình. Chứng thư điện tử không ghi những thông tin nhạy cảm và do đó không gây nguy cơ mất an toàn khi đưa ra công bố rộng rãi.
Chứng thư điện tử được tạo bởi thực thể duy nhất (Distinguished Name – DN) và phần mở rộng chứng thư chứa những thông tin về cá nhân hay máy chủ đã được chứng nhận.
2.7.1 Các bước tạo chứng thư của máy chủ hay máy trạm từ CA
Người dùng trong lưới cần chứng nhận kết quả tạo cặp khoá (khoá công khai và khoá riêng, chứng thư điện tử sẽ chứa khoá chung).
Người dùng sẽ ký nhận khoá công khai và những thông tin khác của mình trong chứng thư theo yêu cầu của CA. Thao tác ký nhận khoá công khai nằm trong chứng thư được thực hiện bằng cách người dùng giữ khoá riêng, tương ứng với khoá công khai.
Chứng chỉ đã được ký này sẽ được chuyển đến cho CA. Khoá được người dùng cất giữ và cần được bảo vệ cẩn thận.
CA xác nhận người dùng đang giữ khoá riêng tương ứng khoá công khai trong chứng thư.
CA xác định danh tính duy nhất của người dùng bằng cách xác định thông qua địa chỉ email, số điện thoại. Ngoài ra, CA cũng sử dụng những thông tin của những tổ chức khác để xác danh tính duy nhất của người dùng.
Sau khi đã kiểm tra danh tính duy nhất của người dùng, CA tạo chứng thư bằng việc ký nhận khoá công khai của người dùng và kết hợp với danh tính duy nhất của người dùng. Sau đó, chứng thư được chuyển đến RA và trả về cho người dùng.
2.7.2 Xác nhận người dùng
Quá trình trên đảm bảo tính chính xác và hợp lệ của chứng thư. Có thể so sánh với quá trình chính quyền cấp hộ chiếu cho công dân. Hộ chiếu này thực hiện trong quá trình đăng nhập khi cá nhân đến các quốc gia khác. Cũng gần giống như hộ chiếu, chứng thư điện tử dùng trong quá trình đăng nhập vào các tài nguyên.
2.7.3 Các dạng chứng thư
Có hai dạng chứng thư được sử dụng trong môi trường lưới. Loại chứng thư thứ nhất xác định người dùng trong môi trường lưới. Loại thứ hai dành cho máy chủ trên lưới.
Chứng thư dành cho người dùng: người sử dụng cần chứng thư người dùng nhằm xác định thành viên trong lưới. Chứng thư này cung cấp tên người dùng trong lưới, không phải tên máy chủ hay tên máy trạm trong lưới.
Chứng thư dành cho máy chủ: khi người dùng muốn thực hiện chương trình trên môi trường quản lý khóa công khai trên máy chủ, cần phải đăng ký chứng thư cho máy chủ. Chứng thư cho máy chủ được đăng ký với đầy đủ thông tin định danh vị trí máy chủ của người dùng và thông tin định danh chứng thư của họ.
2.7.4 Thu hồi chứng thư
Các máy tính trong môi trường lưới thực hiện quá trình xác thực lẫn nhau và trao đổi chứng thư điện tử. Do đó, quá trình này không cần tham khảo đến danh sách các chứng thư, thường được lưu trữ bằng dịch vụ cây thư mục. Vì vậy, công việc thu hồi các chứng thư không dùng hoặc quá hạn không thể làm tự động.
Trong vài kiến trúc quản lý khóa công khai, dịch vụ cây thư mục được dùng để lưu trữ các chứng thư thu hồi. Nhờ đó, các thành viên có thể tham khảo được các chứng thư không còn dùng hoặc quá hạn.
2.7.5 Xác nhận đường dẫn
Quá trình xác nhận đường dẫn chính là từng bước xác nhận chứng thư và chứng thư ủy quyền hợp lệ.
Điều này được thực hiện theo các bước xác nhận từ CA gốc cho đến các mắc xích trong xâu các chứng thư ủy quyền tiếp theo. Chứng thư ủy quyền là một chức năng bổ sung trong các kiến trúc quản lý khóa công khai.
2.8 Kết luận
Chương II tập trung chủ yếu khảo sát các vấn đề trong an ninh di động và những rủi ro về an ninh trong mạng GSM. Các mối đe dọa an ninh ngày càng tăng cao, bên cạnh đó các biện pháp an ninh được trình bày nhằm đảm bảo thông tin được giữ bí mật đến người nhận. Một số các công nghệ an ninh như: các mô hình mã hóa đối xứng và bất đối xứng, mô hình chữ ký điện tử cũng được áp dụng. Các vấn đề về khảo sát an ninh sẽ được tìm hiểu kỷ hơn ở mạng 3G trong chương tiếp theo giúp ta thấy được sự tiến bộ của mạng 3G.
CHƯƠNG III: KHẢO SÁT AN NINH TRONG 3G UMTS
3.1 Nguyên tắc và mục tiêu an ninh cho 3G UMTS
3G giúp tăng tốc độ truyền nhận dữ liệu cho hệ thống GSM bằng cách dùng kỹ thuật CDMA hoạt động ở băng tần rộng thay thế cho TDMA. Trong các công nghệ thông tin di động thế hệ ba thì 3G nhận được sự ủng hộ lớn nhất nhờ vào tính linh hoạt của lớp vật lý trong việc hỗ trợ các kiểu dịch vụ khác nhau đặc biệt là dịch vụ tốc độ bit thấp và trung bình.
3.2 Giải pháp an ninh cho giao diện vô tuyến 3G UMTS
3.2.1 Giải pháp
Mật mã bản tin được thực hiện ở cả hai chiều bằng luồng khóa KS
Bảo vệ toàn vẹn được thực hiện ở cả hai chiều bằng nhận thực bản tin toàn vẹn
Mạng nhận thực người sử dụng
Mật mã hóa UTRAN
Người sử dụng nhận thực mạng
3.2.2 Mạng nhận thực người sử dụng
Nhận thực được thực hiện ngay sau khi mạng phục vụ (SN) nhận dạng thuê bao. Quá trình này được thực hiện khi VLR (trong miền CS) hoặc SGSN (trong miền PS) gửi yêu cầu nhận thực đến AuC. Tiếp đến VLR/SGSN gửi bản tin yêu cầu nhận thực người sử dụng đến UE. Trong bản tin này có chứa RAND và AUTN.
Khóa chủ (K) trong USIM sẽ được sử dụng kết hợp với hai thông số RAND&AUTN) để tính toán ra thông số trả lời của người sử dụng (RES) bằng cách sử dụng hàm mật mã f2. RES có độ dài (32-128bit), sau khi được tạo ra ở USIM nó được gửi ngược trở lại VLR/SGSN. Tại đây nó được so sánh với giá trị kỳ vọng XRES do AuC tạo ra và gửi đến. Nếu hai thông số này trùng nhau, thì nhận thực thành công.
U
S
I
M
VLR/
SGSN
f2
RAND
AUTN
f2
K
=
Nhận thực
Thành công
Đúng
RAND
AUTN
RAND
AUTN
K
Hình 3.1 Nhận thực người sử dụng tại VLR/SGSN.
3.2.3 Người sử dụng nhận thực mạng
USIM: là một ứng dụng của công nghệ UMTS, hoạt động trên thẻ thông minh UICC trong điện thoại 3G. Nó chứa dữ liệu về người sử dụng, thông tin xác thực và cung cấp dung lượng để lưu tin nhắn.
Để được nhận thực bởi người dùng, mạng phải gửi đến USIM mã nhận thực bản tin dành cho nhận thực (MAC-A), mã này có trong thẻ nhận thực mạng AUTN cùng với RAND mà mạng gửi đến. Sau đó USIM sẽ sử dụng hàm f1 với đầu vào là khóa chủ K cùng với AUTN và RAND để tính ra XMAC-A (giá trị kỳ vọng). Tiếp đến nó tiến hành so sánh XMAC-A và MAC-A, nếu chúng giống nhau thì nhận thực thành công.
RAND
AUTN
K
AUTN
RAND
AUTN
K
VLR/SGSN
f1
U SIM
f1
Nhận thực thành công
Đúng
A
A
=
Hình 3.2 Nhận thực mạng tại USIM.
3.2.4 Mật mã hóa UTRAN
3.2.4.1 Kiến trúc mạng truy nhập vô tuyến UTRAN
UTRAN là mạng truy nhập vô tuyến được thiết kế mới cho UMTS, nó có nhiệm vụ thực hiện các chức năng liên quan tới truy nhập mạng qua giao diện vô tuyến. Như vậy thông qua UTRAN thì các thiết bị đầu cuối mới có thể truy nhập được mạng và sử dụng dịch vụ. UTRAN được xây dựng để có cấu trúc và giao diện thuận tiện cho việc sử dụng các công nghệ truy nhập vô tuyến mới CDMA đồng thời cũng kết nối để sử dụng các dịch vụ cũ. Nó giúp cho một thiết bị đầu cuối thiết lập kết nối, sử dụng dịch vụ. Nó có thể chia thành hai thành phần chính:
- Nút B: là thành phần mạng thực hiện nhiệm vụ thu phát song trong một hay nhiều cell. Hay nói cách khác, nó có nhiệm vụ tập hợp và chuyển các giao diện vô tuyến giữa mạng và thuê bao Uu thành các giao diện Iu và ngược lại. Thành phần có chức năng tương tự trong GSM là BTS.
- Bộ điều khiển mạng vô tuyến RNC: Sở hữu và quản lý các tài nguyên vô tuyến trong vùng phục vụ của nó, tức là các Nút B nối tới nó. RNC là điểm truy nhập tất cả các dịch vụ do UTRAN cung cấp cho mạng lõi Core Network. Chức năng này tương đương với thành phần BSC trong GSM.
Cấu trúc của mạng truy nhập vô tuyến:
Mạng truy nhập vô tuyến được giới hạn bởi hai giao diện: một là giao diện Uu giữa UTRAN và thiết bị đầu cuối UE, hai là giao diện Iu giữa UTRAN và phần mạng lõi CN.
Cấu trúc của UTRAN gồm một hay nhiều khối RNS nối tới mạng lõi CN qua giao diện Iu. Mỗi khối RNS gồm một RNC và nhiều Nút B nối tới RNC qua giao diện Iub. Nút B gồm nhiều cell, các cell có thể sử dụng thu phát theo công nghệ FDD (Frequency Division Duplex) hoặc TDM (Time Division Duplex). Trong UTRAN, các RNC có thể kết nối với nhau thông qua giao diện Iur. RNC là phần tử duy nhất trong mạng UMTS điều khiển nguồn tài nguyên vô tuyến. Nó quản lý nhiều Nút B và thông qua giao thức điều khiển tài nguyên vô tuyến RRC (Radio Resource Control) để định nghĩa các bản tin và các thủ tục giữa đầu cuối và UTRAN.
- Các chức năng của RNC là:
Quản lý tài nguyên vô tuyến qua giao diện Iub
Điều khiển các Nút B
Quản lý lưu lượng
Thực hiện việc phân tập dữ liệu đến một hay nhiều Nút B
Gán mã định kênh
Thu thập các bản tin đo lường
Nút B là một trạm thu phát sóng, nó tương đương với BTS trong hệ thống GSM. Trong một Nút B có thể có một hay nhiều cell. Chức năng chính của nó là thực hiện các chức năng của lớp vô tuyến như mã hóa kênh, đan xen, thích ứng tốc độ, trải phổ. Ngoài ra nó còn tham gia thực hiện một số chức năng quản lý tài nguyên vô tuyến như điều khiển công suất vòng trong… Thêm vào đó vì bản thân Nút B chứa cả lớp vô tuyến vật lý nên nó cũng phải thực hiện một số chức năng như phát hiện lỗi trên đường truyền vô tuyến, đo song vô tuyến và gửi bản tin lên trên, đồng bộ thời gian, tần số.
Giao thức vô tuyến dùng trong mạng truy nhập vô tuyến.
Các giao thức phải được xây dựng để đáp ứng các yêu cầu sau:
Tốc độ bit có thể thay đổi trong kênh riêng. Đặc tính này đặc biệt có ích khi đầu cuối yêu cầu phục vụ nhiều dịch vụ đồng thời và nó giúp tối ưu việc sử dụng tài nguyênCó khả năng ghép nhiều kênh truyền logic trên một kênh truyền tải riêng.
Có khả năng ghép nhiều kênh truyền tải dành riêng trên một kênh vật lý.
Kênh chung đường xuống được chia sẻ bởi nhiều người như vậy sẽ tiện lợi cho các ứng dụng Internet.
Kênh chung đường lên có thể được dung để cung cấp dịch vụ về dữ liệuCác giao thức vô tuyến trong UTRAN được khuyến nghị theo ba lớp của mô hình mở. Đó là các lớp : Vật lý (physical layer), Dữ liệu (data link layer), mạng (network layer).
3.2.4.2 Mật mã hóa
Quá trình mật mã được thực hiện tại UE và RNC. Để thực hiện mật mã cả USIM lẫn RNC phải tạo ra các luồng khóa (KS). Quá trình này được minh họa trong hình 3.3.
Văn bản được mật mã
f8
KS
LENGTH
DIRECTION
BEARER
COUNT-C
CK
Văn bản thô
Hình 3.3 Bộ mật mã luồng khóa trong UMTS.
3.2.4.3 Bảo vệ toàn vẹn
Bảo vệ toàn vẹn được thực hiện trên lớp kết nối tài nguyên vô tuyến (RRC) giữa UE và RNC. Để nhận thực toàn vẹn bản tin, phía phát (USIM hoặc RNC) phải tạo ra mã nhận thực bản tin dành cho toàn vẹn (MAC-I), gắn vào bản tin đã được mật mã và gửi tới phía thu (RNC hoặc USIM). Tại phía thu mã XMAC-I được tính toán và so sánh với MAC-I nhận được. Nếu hai mã này trùng nhau thì bản tin được coi là toàn vẹn. Quá trình tạo ra MAC-I và XMAC-I được thực hiện bằng hàm f9.
COUNT-I
IK
DIRECTION
FRESH
MAC-I
Phía phát
Bản tin báo hiệu thu
COUNT-I
IK
DIRECTION
FRESH
XMAC-I
Phía thu
MAC-I
f9
f9
=?
Nhận thực thành công
Đúng
Bản tin báo hiệu phát
Hình 3.4 Nhận thực toàn vẹn bản tin.
• Overview of 3G security features
3.3 Các giải pháp an ninh 3G UMTS
3.3.1 Tính bảo mật thông tin
Bảo mật là sự hạn chế khả năng lạm dụng tài nguyên và tài sản. An toàn của một hệ thống thông tin thực chất là sự đảm bảo an ninh ở mức độ chấp nhận được. Muốn hệ thống thông tin an toàn thì trước hết phải có sự đảm bảo thông tin trên cơ sở mạng truyền dữ liệu thông suốt. Hệ thống được coi là bảo mật (confident) nếu tính riêng tư của nội dung thông tin được đảm bảo theo đúng các tiêu chí trong một thời gian xác định.
Bảo mật trong 3G UMTS bằng cách mật mã hóa các cuộc truyền thông giữa thuê bao và mạng, bằng cách sử dụng nhận thực tạm thời TMSI thay cho sử dụng nhận dạng toàn cầu IMSI. Mật mã hóa được thực hiện giữa USIM và RNC, bảo mật người sử dụng được thực hiện giữa USIM và VLR/SGSN.
Như vậy, an toàn bảo mật hệ thống thông tin là đảm bảo hoạt động lưu thông và nội dung bí mật cho những thành phần của hệ thống ở mức độ chấp nhận được.
3.3.2 Xác thực
Xác thực bao gồm hai quá trình sau:
- Mạng xác thực người sử dụng
- Người sử dụng xác thực mạng
Để xác thực người sử dụng và ngược lại, mạng phải gửi đến UE một bản tin yêu cầu nhận thực có chứa mã nhận thực MAC-A. Sau đó, USIM sẽ tính toán con dấu kiểm tra nhận thực XMAC-A và so sánh hai mã này nếu trùng nhau thì quá trình nhận thực thành công.
Các thủ tục này đều xảy ra trong cùng một trao đổi bản tin giữa mạng và người sử dụng, thủ tục này gọi là “nhận thực một lần gửi” để giảm các bản tin cần truyền. Sau các thủ tục này, người sử dụng sẽ tin tưởng rằng mạng mà nó nối đến được tin tưởng, để phục vụ thay cho mạng nhà của nó. Đồng thời, mạng cũng tin tưởng nhận dạng của người sử dụng là hợp lệ. Mạng lõi rất cần biết số nhận dạng thực sự của người sử dụng để tin tưởng rằng người sử dụng này sẽ trả tiền cho các dịch vụ mà nó cung cấp. Mặt khác người sử dụng cũng muốn nhận thực để tin tưởng rằng các dịch vụ mà nó trả tiền sẽ được cung cấp.
3.3.3 Toàn vẹn thông tin (Integrity)
Toàn vẹn thông tin trong 3G UMTS là tạo ra các con dấu bổ sung cho các bản tin. Các con dấu này có thể được tạo ra tại các nút biết được các khóa, được rút ra từ một khóa chủ biết trước (K). Các khóa này được lưu trong USIM và AuC. Bảo vệ toàn vẹn đặc biệt cần thiết, vì mạng phục vụ thường được khai thác bởi một nhà khai thác khác với nhà khai thác của thuê bao. Thuộc tính cần được bảo vệ toàn vẹn là các bản tin báo hiệu.
3.4 Các giải pháp kỹ thuật trong 3G UMTS
3.4.1 Mã Turbo
Mã hóa Turbo chỉ được sử dụng trong các hệ thống thông tin di động thế hệ ba khi hoạt động ở tốc độ bit cao với yêu cầu tỉ số lỗi bit BER nằm trong khoảng 10-3 đến 10-6.
Bộ mã hóa turbo thực chất là bộ mã xoắn móc nối song song PCCC (Parallel Concatenated Convolutional Code) với các bộ mã hóa thành phần 8 trạng thái được sử dụng.
3.4.2 Mã xoắn
Mã xoắn (Convolutional Code) (n,k,m) cũng có n đầu ra, k đầu vào như mã khối (n,k) nhưng n đầu ra của mã xoắn phụ thuộc không chỉ vào k đầu vào tại thời gian đó mà còn phụ thuộc vào m khối bản tin trước đó. Mã xoắn (n,k,m) được xây dựng bởi mạch dãy. Mạch này dùng thanh ghi dịch m bit làm bộ nhớ, các đầu ra của các phần tử nhớ được cộng với nhau theo quy luật nhất định để tạo nên chuổi mã, sau đó các chuổi này được ghép xen với nhau để tạo nên chuổi mã đầu ra.
3.4.3 Mã vòng
Mã vòng là phương pháp mã hóa cho phép kiểm tra độ dư vòng (CRC – Cyclic Redundance Check) và chỉ thị chất lượng khung ở các khung bản tin.
Mã hóa mã vòng (n,k) dạng hệ thống gồm ba bước :
- Nhân đa thức thông tin u(x) với xn-k.
- Chia xn-k.u(x) cho đa thức sinh g(x), ta được phần dư b(x).
- Hình thành từ mã b(x) + xn-k
Tất cả ba bước này được thực hiện bằng mạch chia với thanh ghi dịch (n-k) tầng có hàm hồi tiếp tương ứng với đa thức sinh g(x).
Sơ đồ mạch mã hóa vòng:
G1
G1
G1
G1
b1
b1
b1
b1
+
+
+
+
b0
b0
b0
b0
+
+
+
+
b2
b2
b2
b2
+
+
+
+
G2
G2
G2
G2
Gn-k-1
Gn-k-1
Gn-k-1
Gn-k-1
+
+
+
+
bn-k-1
bn-k-1
bn-k-1
bn-k-1
Thông tin xn+k.u(x)
Thông tin xn+k.u(x)
Thông tin xn+k.u(x)
Thông tin xn+k.u(x)
Các số kiểm tra chẵn lẻ
Các số kiểm tra chẵn lẻ
Các số kiểm tra chẵn lẻ
Các số kiểm tra chẵn lẻ
+
+
+
+
Một khâu của thanh ghi dịch
Một khâu của thanh ghi dịch
Một khâu của thanh ghi dịch
Một khâu của thanh ghi dịch
Cổng XOR
Cổng XOR
Cổng XOR
Cổng XOR
Mối liên kết
g = 1 : Có liên kết
g = 0 : Không liên kết
g
g
g
g
Hình 3.5 Mạch mã hóa vòng với đa thức sinh
Cổng
Cổng
Cổng
Cổng
Nguyên lý hoạt động:
Bước 1 : Cổng đóng cho thông tin qua mạch, k chữ số thông tin u0, u1,...,un-k được dịch vào mạch từ thiết bị đầu cuối để nhân trước u(x) với xn-k. Ngay sau khi thông tin được đưa vào mạch thì n-k chữ số còn lại trong thanh ghi là những con số kiểm tra chẵn lẻ.
Bước 2 : Cắt đứt đường hồi tiếp bằng cách điều khiển cho các cổng gi hở (không cho thông tin qua).
Bước 3 : Dịch các con số kiểm tra chẵn lẻ và đưa ra đường truyền. Các chữ số kiểm tra này kết hợp với k chữ số thông tin tạo thành vector mã.
3.5 Các hàm mật mã
An ninh của 3G UMTS được thực hiện bởi tập các hàm và các giải thuật mật mã. Các hàm để tạo ra các thông số AKA là: f1, f2, f3, f4, f5, f1* và f5*, hàm f1* và f5* được sử dụng để tạo khóa phục vụ quá trình đồng bộ lại.
Các hàm f8 và f9 được sử dụng trong USIM và RNC. Các hàm này sử dụng khóa chủ (K). Lý do là để tránh phân bổ khóa này trên mạng và để giữ nó an toàn trong USIM và AuC.
3.5.1 Vec-tơ nhận thực (AV)
Các thông số được sử dụng: hô lệnh ngẫu nhiên (RAND); trả lời kỳ vọng từ người sử dụng (XRES); khóa mật mã (CK); khóa toàn vẹn (IK); và thẻ nhận thực mạng (AUTN).
SQN
AK
IK
CK
Tạo SQN
Tạo RAND (f0)
f1
f2
f3
f4
f5
XOR
AV = RAND || XRES || CK || IK || AUTN
AUTN = SQN AK|| AFM || MAC -A
AMF
MAC-A
XRES
AK
K
Hình 3.6 Quá trình tạo các AV trong AuC.
Hàm f0 tạo ra hô lệnh ngẫu nhiên (RAND).
Hàm f1 với các thông số đầu vào là: RAND; trường quản lý nhận thực (AMF); số trình tự SQN và khóa chủ (K) được lưu sẵn trong AuC sẽ cho ra ở đầu ra mã nhận thực bản tin dành cho nhận thực (MAC-A).
Các hàm tiếp theo từ f2 đến f5 với cùng các thông số đầu vào là RAND và K sẽ cho ra ở đầu ra các thông số lần lượt như sau: XRES; CK; IK; AK. AK được tạo ra sau đó được XOR với SQN để tạo ra SQN AK và có các thông số của AV.
3.5.2 Sử dụng hàm bảo mật f8
Dùng hàm mật mã f8 để tiến hành mật mã hóa và giải mật mã hóa số liệu
Văn bản được mật mã
f8
COUNT-C
BREAKER
DIRECTION
LENGTH
CK
f8
COUNT-C
BREAKER
DIRECTION
LENGTH
CK
Văn bản thô
Văn bản thô
KS
KS
Phía phát
Phía thu
Văn bản được mật mã
Hình 3.7 Quá trình mã hóa và giải mật mã hóa bằng hàm f8
- Các thông số đầu vào của hàm f8:
Số trình tự mật mã hóa (COUNT-C) (32bit), số này tăng mỗi khi gửi đi hoặc thu về một bản tin được bảo mật. Có hai bộ đếm cho đường lên và đường xuống.
Khóa mật mã (CK) (128bit) được tạo ra ở AuC và được gửi đến VLR/SGSN trong các vec-tơ nhận thực (AV). Sau khi quá trình nhận thực thành công, khóa này được gửi đến RNC. USIM tạo ra các khóa này trong thời gian nhận thực, khi thực hiện chuyển giao khóa mật mã (CK) được truyền từ RNC hiện thời đến RNC mới để đảm bảo tiếp tục truyền thông. CK không thay đổi khi chuyển giao.
- Thông số ở đầu ra của hàm f8: là luồng khóa KS, luồng khóa này được thực hiện XOR với văn bản thô rồi phát lên giao diện vô tuyến. Luồng khóa KS của bộ mật mã hóa là duy nhất đối với từng khối. Với các thông số đầu vào khác nhau ta sẽ thu được ở đầu ra các KS khác nhau.
Vì thế cả phía phát lẫn phía thu phải đồng bộ bằng cùng một bộ đếm tại mọi thời điểm để tạo ra cùng một COUNT-C, bằng không không thể giải mật mã hóa được. Đồng thời, cả USIM và RNC phải sử dụng đồng thời cùng một giải thuật mật mã. USIM thông báo cho RNC về các giải thuật mật mã mà nó hỗ trợ.
RNC sau đó chọn giải thuật mật mã sẽ sử dụng theo ưu tiên của nhà khai thác và quy định địa phương. Quá trình này được gọi là nhận dạng giải thuật mật mã (UEA).
3.5.3 Sử dụng hàm f9 để tính toán mã toàn vẹn
Hàm toàn vẹn (f9) được sử dụng để bảo vệ toàn vẹn các bản tin. Bảo vệ toàn vẹn là bắt buộc trong 3G 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 dấu ấn” 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. Quá trình kiểm tra toàn vẹn bản tin bằng hàm toàn vẹn f9 được mô tả trong hình sau:
COUNT-I
IK
DIRECTION
FRESH
MAC-I
Phía phát
Bản tin báo hiệu thu
COUNT-I
IK
DIRECTION
FRESH
XMAC-I
Phía thu
MAC-I
f9
f9
=?
Nhận thực thành công
Đúng
Bản tin báo hiệu phát
Hình 3.8 Nhận dạng toàn vẹn bản tin với sử dụng hàm toàn vẹn f9.
- Các thông số đầu vào của hàm f9 bao gồm:
Số trình tự toàn vẹn (COUNT-I) (32bit), số này tăng mỗi khi gửi đi hoặc thu về một bản tin được bảo vệ toàn vẹn. Có hai bộ đếm cho đường lên và đường xuống.
Khóa toàn vẹn (IK) (128bit) được tạo ra ở cả AuC lẫn USIM.
VLR/SGSN nhận IK trong AV từ AuC gửi đến, sau quá trình nhận thực thành công nó được gửi đến RNC. Khi xảy ra chuyển giao, khóa toàn vẹn IK được chuyển từ RNC hiện thời đến RNC mới, khóa này không đổi khi chuyển giao.
- Thông số ở đầu ra của hàm f9: là mã nhận thực bản tin toàn vẹn số liệu (MAC-I) và XMAC-I (giá trị 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 ở phía phát (USIM hoặc RNC) và được so sánh với XMAC-I tại phía thu (RNC hoặc USIM).
Phía phát tạo ra MAC-I với bản tin đầu vào và phía thu sử dụng chính 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 thì bản tin sẽ bị từ chối. cả phía phát lẫn phía thu phải đồng bộ bằng cùng một bộ đếm tại mọi thời điểm để tạo ra cùng một COUNT-I. Đồng thời, do giải thuật 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 giải thuật khác nhau. Để nhận dạng các giải thuật khác nhau được sử dụng, mỗi giải thuật toàn vẹn UMTS (UIA) có một nhận dạng riêng 4bit. 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.
3.5.4 Các thông số an ninh trong USIM
f2
f3
f4
XOR
RAND
AK
IK
CK
XRES
XMAC-A
f5
SQN AK
AMF
MAC-A
Kiểm tra MAC-A=XMAC-A
Kiểm tra chấp nhận SQN
f1
AUTN
Các khóa đầu ra trong USIM gồm khóa chủ (K). Các thông số còn lại phải nhận từ AuC.
Hình 3.9 Quá trình tạo các thông số an ninh trong USIM.
USIM nhận được cặp (RAND||AUTN), nó bắt đầu tạo ra khóa dấu tên (AK) bằng hàm f5 dựa trên số ngẫu nhiên RAND thu được.
Bằng cách XOR AK với SQN , AK có được từ thẻ nhận thực AUTN ta thu được SQNHE của AuC. Sau đó, hàm f1 được sử dụng với các đầu vào là K, RAND, AMF, SQN cho ra ở đầu ra mã nhận thực bản tin kỳ vọng (XMAC-A). Nó tiến hành so sánh số này với MAC-A có trong AUTN.
Nếu hai số này trùng nhau, USIM nhận thực rằng bản tin (cặp RAND||AUTN) nhận được từ chính HE đang quản lý nó. Quá trình được tiếp tục bằng các hàm tạo khóa khác. Nếu hai số này không trùng nhau thì bản tin “từ chối nhận thực của người sử dụng kèm theo nguyên nhân” được gửi trở lại VLR/SGSN. Nếu nhận thực thành công, USIM tiến hành kiểm tra SQNHE có nằm trong dải của SQNMS . Nếu số trình tự này nằm trong dải quy định, USIM sẽ tiến hành tạo ra các thông số tiếp theo bằng cách sử dụng các hàm f2 (tạo ra RES), f3 (tạo ra CK), f4 (tạo ra IK), f5 (tạo ra AK).
3.6 Tổng quan về AKA
Các thủ tục về AKA và Thủ tục đồng bộ lại, AKA đều liên quan đến USIM là một ứng dụng của công nghệ UMTS.
3.6.1 Các thủ tục AKA
Các thủ tục AKA xảy ra tại USIM, SGSN/VLR và HLR/AuC.
Hình 3.10 Tổng quan quá trình nhận thực và thỏa thuận khóa AKA.
Nhận thực và thỏa thuận khóa AKA được quản lý bởi VLR/SGSN mà thuê bao nối tới. Trước hết VLR/SGSN phụ trách máy di động gửi bản tin “yêu cầu số liệu nhận thực IMSI” đến HLR.
Sau khi nhận được bản tin này HLR sẽ định vị tới AuC (nơi chứa số liệu thuê bao) và yêu cầu các AV từ trung tâm này. Nếu AuC đã lưu các AV cho thuê bao nó sẽ trả lời bằng cách gửi một hay nhiều AV trở lại VLR/SGSN.
Thông thường nhiều AV được gửi đi một lần (có tới 5AV), nhờ vậy giảm bớt được số lần yêu cầu AuC và giảm thiểu lưu lượng mạng. Tuy nhiên, nếu tải AuC cao nó có thể chỉ gửi đi một AV. Nếu chưa có sẵn AV trong cơ sở dữ liệu của mình AuC sẽ tiến hành tạo ra các AV mới.
Sau khi đã nhận được các AV từ HLR gửi đến, VLR/SGSN sẽ lưu chúng trong cơ sở dữ liệu của mình và chọn một trong số chúng kèm theo hai thông số RAND và AUTN để gửi tới USIM trong bản tin gọi là “yêu cầu nhận thực RAND(i)||AUTN(i)” thông qua UTRAN.
Sau khi nhận được bản tin này, USIM tiến hành kiểm tra thẻ nhận thực mạng AUTN để nhận thực mạng. Bằng cách mở thẻ AUTN ra và tiến hành so sánh MAC-A với XMAC-A do nó tạo ra.
Nếu hai thông số này không trùng nhau thì nhận thực mạng bị từ chối. Điều này có nghĩa là khóa chủ (K) ở cả hai miền không giống nhau. Vì thế bản tin này không bắt nguồn từ môi trường nhà (HE) của thuê bao. Khi đó, nó hủy thủ tục nhận thực mạng và gửi đi bản tin “từ chối nhận thực của người sử dụng, kèm theo lý do” về phía VLR/SGSN. Nhận được bản tin này VLR/SGSN gửi “báo cáo nhận thực thất bại kèm lý do” tới HLR. Và có thể khởi đầu lại các thủ tục AKA. Quá trình này được gọi là USIM từ chối trả lời. Nếu MAC-A và XMAC-A trùng nhau thì quá trình nhận thực mạng thành công. Tiếp theo USIM tiến hành tạo ra các trả lời từ người sử dụng để nhận thực mạng (RES) và gửi nó ngược trở lại VLR/SGSN. Tại đây RES sẽ được so sánh với X-RES (có trong AV do HLR gửi đến). Nếu chúng giống nhau thì thuê bao được nhận thực.
Như vậy hai nửa nhận thực đã hoàn tất. Khi đó VLR/SGSN nhận các khóa mật mã và toàn vẹn (CK, IK) từ AV và gửi chúng đến HE đang quản lý thuê bao. Các khóa này được sử dụng để mật mã hóa truyền thông và kiểm tra sự toàn vẹn của bản tin.
3.6.2 Thủ tục đồng bộ lại, AKA
Các chuỗi trình tự trong USIM (SQNMS) và trong AuC (SQNHE) không trùng nhau trong một dải quy định thì thủ tục đồng bộ lại xảy ra.
Sự khác nhau này được phát hiện trong USIM khi nó tiến hành so sánh hai số trình tự này với nhau.
USIM
VLR/SGSN
HLR/AuC
Kiểm tra SQN trong dải đúng, nếu sai phát AUTS
Xóa AV cũ, lưu AV mới nhận từ AuC
1.Nếu SQE MS không đặt lại thành SQE HE thì lấy AV lưu.
2. Nếu đặt lại thì tạo AV mới xóa AV cũ.
Yêu cầu nhận thực người sử dụng (RAND||AUTN)
Sự cố đồng bộ
Yêu cầu số liệu nhận thực (RAND||AUTN)
Trả lời số liêụ nhận thực (Qi)
Yêu cầu nhận thực người sử dụng
1
2
3
4
1
Hình 3.11 Thủ tục đồng bộ lại của AKA.
Khi VLR/SGSN gửi đi “yêu cầu nhận thực người sử dụng RAND(i)||AUTN(i)” đến USIM. Sau khi nhận được bản tin này USIM tiến hành kiểm tra tính xác thực của bản tin. Nếu đây là bản tin được tạo ra tại HE quản lý nó thì hai số trình tự SQNHE và SQNMS phải nằm trong một giải, nếu SQNHE nằm ngoài dải của SQNMS thì thủ tục đồng bộ lại được tiến hành. Khi đó USIM sẽ tạo ra một thẻ đồng bộ lại (AUTS) và gửi nó đến VLR/SGSN. Sau khi nhận được sự cố đồng bộ VLR/SGSN tìm một hô lệnh ngẫu nhiên thích hợp từ bộ nhớ của mình và bổ sung nó vào bản tin “yêu cầu số liệu nhận thực” và gửi bản tin này (“yêu cầu số liệu nhận thực RAND(i)||AUTS”) đến HLR/AuC đang quản lý thuê bao. Khi AuC nhận được AUTS từ bản tin trên, nó tiến hành so sánh hai số trình tự. Nếu thấy rằng AV tạo ra tiếp theo có thể tiếp nhận được, nó sẽ gửi AV này đến VLR/SGSN.
Nếu không có AV nào trong số các AV được lưu nằm trong dải được USIM tiếp nhận, AuC sẽ tiến hành kiểm tra sự toàn vẹn của bản tin.
Quá trình này để đảm bảo rằng chính USIM muốn thủ tục đồng bộ lại, nếu nhận thực này thành công, chuỗi SQNHE được đặt vào SQNMS. Sau đó, AuC sẽ xóa các AV cũ đồng thời tạo ra các AV mới.
Vì việc tạo ra nhiều AV trong thời gian thực có thể chiếm tải lớn đối với AuC, nên có thể chỉ một AV được gửi đi trong lần trả lời đầu tiên. Khi đó, AV mới được gửi đến từ AuC sẽ được gắn thêm thông số Qi.Khi VLR/SGSN nhận được các AV mới được gửi đến từ AuC, nó sẽ xóa tất cả các AV cũ để đảm bảo rằng các AV này không dẫn đến sự cố đồng bộ lại khác. Sau đó, VLR/SGSN lại thực hiện lại từ đầu thủ tục AKA bằng cách gửi “yêu cầu nhận thực người sử dụng RAND(i)||AUTN(i)” đến USIM…Tiếp theo ta đi tìm hiểu về sử dụng lại các AV do USIM từ chối do kiểm tra số trình tự. Việc sử dụng lại các AV này cản trở mạng thực hiện AKA với sử dụng lặp lại một AV.Tuy nhiên, việc sử dụng lại Av lại cần thiết, ví dụ khi VLR/SGSN gửi bản tin “yêu cầu nhận thực người sử dụng” đến USIM, nhưng lại không nhận được trả lời của USIM do mạng bị sự cố. Khi vượt quá thời gian tạm dừng để chờ trả lời, VLR/SGSN sẽ tìm cách gửi lại USIM cặp (RAND(i)||AUTN(i)) một lần nữa. Nếu thực chất USIM đã nhận được AV này lần đầu, nó coi rằng số trình tự nhận được nằm ngoài dải. Trong trường hợp này để khởi đầu thủ tục đồng bộ lại, USIM khởi đầu bằng cách so sánh hô lệnh ngẫu nhiên vừa nhận được (RAND) với RAND nhận được trước đó. Nếu chúng trùng nhau, nó chỉ cần gửi đi trả lời của người sử dụng (RES) được lưu lại lần cuối cùng. Vì thế cần lưu tất cả các thông số được đặt ra tại USIM. Trong 3G UMTS ngay cả khi thực hiện cuộc gọi khẩn cũng cần thực hiện thủ tục nhận thực. Nhưng nếu nhận thực bị sự cố (do không có USIM hoặc do không có thỏa thuận chuyển mạng) kết nối vẫn sẽ được thiết lập. Cuộc gọi sẽ chỉ bị hủy nếu bảo mật và toàn vẹn thất bại.
3.6.3 Nhận thực và thỏa thuận khóa
Thủ tục nhận thực và thỏa thận khóa AKA bao gồm các yếu tố sau:
- Đăng ký người sử dụng trong mạng phục vụ: khi một thuê bao lần đầu tiên nối đến mạng phục vụ (mới bật máy hay di chuyển sang nước khác) nó phải tiến hành đăng ký với mạng phục vụ.
- Sau mỗi yêu cầu dịch vụ: là khả năng để thuê bao ứng dụng các giao thức cao hơn vì thế phải thực hiện AKA.
- Yêu cầu cập nhật vị trí: khi đầu cuối thay đổi vùng định vị nó cần cập nhật vị trí của mình vào HLR và VLR.
- Yêu cầu đăng nhập và hủy đăng nhập: đây là các thủ tục kết nối và hủy kết nối thuê bao đến mạng phục vụ.
- Yêu cầu thiết lập lại kết nối: yêu cầu này được thực hiện khi số lượng các nhận thực địa phương được thực hiện cực đại.
3.7 Giải thuật RSA (Rivest Shamir Adleman )
3.7.1 Giới thiệu giải thuật RSA
Thuật toán RSA là một thuật toán mã hoá công khai được sử dụng khá rộng rãi.(Thuật toán mã hoá công khai là thuật toán mã hoá sử dụng cặp khoá riêng (private key) và khoá công khai (public key) nhằm hai mục đích: khoá riêng dùng để chứng thực còn khoá công khai được dùng để mã hoá dữ liệu).
3.7.2 Sơ đồ mã hóa RSA
Hình 3.12 sơ đồ mã hóa RSA
3.7.3 Bước khởi đầu của thuật toán- Chọn hai số nguyên tố ngẫu nhiên p và q có hàng trăm chữ số và tính tích n = p*q. Sau đó tính PHI(n) = (p-1)(q-1).- Tìm số d sao cho d và PHI(n) là nguyên tố cùng nhau (d,PHI(n)) = 1.- Tìm số e thõa mãn d*e = =1 (Mod n)Trong đó d và e lần lượt là các khóa giải mã và khóa công khai.
Hàm mã hóa là Ek = Me mod n.Hàm giải mã là: Dk = (Ek)d mod n.3.7.4 Mô tả thuật toánBước 1: Chọn p,q là hai số nguyên tố và tính n=p*q.Số n được gọi là Modul của hệ mã.Bước 2: Tìm ngẫu nhiên số e thỏa mãn các điều kiện sau đây:1 < e < n.Tính f(n) = (p-1)* (q-1). e và f(n) nguyên tố cùng nhau, số e tìm được gọi là số mũ mã hóa.Bước 3: Tính d sao cho d*e mod f(n) = 1;Với 1 < d < n. d được gọi là số mũ giải mã.Khi đó khóa công khai là cặp (e,n) và khóa mật là cặp số (d,e).3.7.5 Cách mã hóa và giải mãGọi x thuộc [0,…, n-1] là số cần mã hóa; E và D lần lượt là các hàm mã hóa và hàm giải mã.Thao tác mã hóa:Người gửi sử dụng khóa công khai (e,n) của người nhận để mã hóa thông tin x cần gửi đi. Như vậy, người gửi sẽ gửi cho người nhận một thông điệp dưới dạng mã hóa là: c = E(x) = xe mod nThao tác giải mã:Người nhận sử dụng khóa mã mật của mình để giải mã bản mã vừa nhận được thành bản rõ của nó.
Tức là tính: x = D(c) = cd mod n.
3.8 An ninh trong 3G UMTS
An ninh trong 3G UMTS được thực hiện với ba tính năng sau:
3.8.1 An ninh MAC (MACsec)
Nhiệm vụ của MACsec là bảo vệ bí mật cũng như toàn vẹn các tác nghiệp MAC. Bảo vệ MACsec được thực hiện trong ba chế độ sau: Chế độ thứ nhất an ninh không được đảm bảo, chế độ thứ hai chỉ bảo vệ toàn vẹn, chế độ thứ ba cả bí mật lẫn toàn vẹn đều được đảm bảo. Để đảm bảo bí mật, tiêu đề của các tác nghiệp MAC được mật mã hóa. Một tiêu đề an ninh được bổ sung để chỉ dẫn cách giải mật mã.
Để đảm bảo toàn vẹn, một MAC nữa được tính toán dựa trên tải tin của các tác nghiệp MAC gốc và tiêu đề an ninh.
3.8.2 An ninh IP (IPsec)
IPsec được sử dụng để bảo vệ các gói IP, các phần chính của IPsec là tiêu đề nhận thực (AH), tải tin an ninh đóng bao (ESP) và trao đổi khóa Internet (IKE).
Quá trình bảo vệ các gói IP này được thực hiện bởi ESP, được đảm bảo cả bí mật lẫn toàn vẹn, còn AH chỉ đảm bảo tính toàn vẹn. Cả AH và ESP đều cần các khóa để thực hiện nhận thực và mật mã hóa các gói. Vì thế trước khi sử dụng ESP và AH cần đàm phán các khóa này.
Quá trình này được thực hiện một cách an ninh thông qua IKE được xây dựng trên ý tưởng mật mã hóa khóa công cộng nhằm trao đổi thông tin an ninh trên đường truyền không an ninh.Tồn tại hai chế độ ESP: chế độ truyền tải và chế độ truyền tunnel. Trong chế độ truyền tải toàn bộ gói IP (trừ tiêu đề) đều được mật mã hóa. Sau đó một tiêu đề ESP mới được bổ sung giữa tiêu đề IP và phần vừa được mật mã hóa. Sau cùng mã nhận thực bản tin (MAC) được tính toán cho toàn bộ, trừ tiêu đề IP và MAC được đặt vào cuối gói. Tại phía thu, tính toán toàn vẹn được đảm bảo bằng cách loại bỏ tiêu đề IP khỏi đầu gói và MAC khỏi cuối gói. Sau đó thực hiện hàm MAC và so sánh đầu ra của nó với MAC trong gói. Nếu toàn vẹn thành công, tiêu đề ESP được loại bỏ và phần còn lại được giải mã.
Trong chế độ truyền tunnel, một tiêu đề mới được bổ sung tại đầu gói.
Sau đó quá trình này được tiến hành như ở chế độ truyền tải cho gói mới nhận được. Điều này có nghĩa là tiêu đề IP của gói gốc được bảo vệ.
Truyền thông ESP được thực hiện giữa hai đầu cuối sử dụng chế độ truyền tải. Để thực hiện quá trình này hai phía truyền thông phải biết được địa chỉ IP của nhau và thực hiện chức năng IPsec.
3.8.3 An ninh truy nhập mạng (Network Access Security)
Vấn đề về an ninh truy nhập mạng trong 3G UMTS bao gồm các yếu tố sau:
- Tính tin cậy nhận dạng người sử dụng: các thông tin nhận dạng cố định khác liên quan đến người sử dụng không được phơi bày cho những kẻ nghe lén.
- Nhận thực tương hỗ: Cả đầu cuối di động và trạm gốc của mạng phục vụ được nhận thực đối với nhau, ngăn ngừa các cuốc tấn công mạo nhận trên cả hai phía của phiên truyền thông.
- Tính tin cậy của số liệu báo hiệu và số liệu người sử dụng: Thông qua mật mã mạnh mẽ, cả nội dung của phiên truyền thông thuê bao lẫn thông tin báo hiệu liên quan được bảo vệ trong khi truyền dẫn qua đoạn nối vô tuyến.
- Toàn vẹn số liệu và nhận thực khởi đầu: Thực thể nhận trong một phiên truyền thông có thể xác nhận rằng các bản tin nhận được không bị thay đổi khi truyền và rằng nó thực sự được khởi đầu từ phía được yêu cầu.
3.9 Các hạn chế về an ninh trong 3G UMTS
An ninh trong mạng 3G đã được tăng cường từ các hệ thống mạng 2G để hỗ trợ xác thực của các thiết bị mạng và kích thước phím nâng cao. Tuy nhiên, mô hình cơ bản của an ninh cho hệ thống 3G vẫn còn dựa trên chuyển mạch kênh. We propose a security model in this paper based on forward security that is more efficient to support packet switched services for beyond 3G networks with negligible overhead on the user equipment or AAA (authentication, authorization, and accounting) server.
Forward security is applicable with secret keys changing with time periods and could be easily verifiable by the verifier using the single fixed key.Chuyển tiếp an ninh được áp dụng với các phím bí mật thay đổi với những khoảng thời gian và có thể dễ dàng kiểm chứng được do xác minh bằng cách sử dụng phím duy nhất cố định. The intruder/eavesdropper who is able to compromise a packet would not be able to derive the meaning of the whole data content since the cipher key/integrity key compromised is only applicable to the packet sent at the current time period.
3.10 Kết luận chương
An ninh 3G dựa trên công nghệ đa truy nhập phân chia theo mã băng rộng sử dụng cho phần giao diện vô tuyến cho hệ thống thông tin di động thế hệ 3 UMTS. Các giải pháp an ninh cho giao diện vô tuyến và an ninh 3G UMTS được đề cập trong chương nhằm nâng cao tính năng an ninh. Với các giải pháp kỹ thuật dựa trên mã xoắn, mã vòng và mã turbo cùng các hàm mật mã để tính toán mã toàn vẹn đảm bảo tính năng an ninh và toàn vẹn thông tin.
Trong chương giới thiệu thuật toán RSA là một thuật toán mã hoá công khai
để mã hoá dữ liệu và quan trọng hơn là phần sơ đồ mã hóa thuật toán. Một số vấn đề về an ninh truy nhập mạng, an ninh IP và an ninh MAC đã thể hiện được tính an ninh cho 3G UMTS.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI
Thông tin di động luôn ngày càng phát triển đặc biệt là sự ra đời của mạng 3G đã mang lại cho người dùng di động với nhiều dịch vụ hơn. Vì thế, một trong những vấn đề lớn đặt ra với người dùng di động và các nhà mạng là cần đảm bảo an toàn thông tin dữ liệu cho điện thoại của mình, liên quan đến vấn đề an ninh thông tin, về các mối đe dọa, tấn công mạng, các hàm, thuật toán được sử dụng trong đề tài dùng để mã hóa và toàn vẹn thông tin, đặc biệt là an ninh trong mạng 3G UMTS.Vì đây là mạng hoàn toàn mới ở nước ta nên có nhiều phần còn thiếu xót và em chưa tìm hiểu kỹ nên đề tài được trình bày một số các phần về các đặc điểm cơ bản an ninh trong thông tin di động, an ninh cho giao diện vô tuyến 3G UMTS, các hàm mật mã, các thông số nhận thực, thủ tục AKA, an ninh trong 3G
Trong vài năm tới, mạng 3G UMTS có thể nâng cấp lên HSDPA còn được gọi với tên 4G.
Do đây là một đề tài tương đối mới vớikhả năng và kiến thức còn hạn chế nên đồ án này không thể tránh khỏi những thiếu sót. Em rất mong nhận được sự chỉ bảo tận tình hơn nữa của các thầy, cô giáo và sự đóng góp ý kiến của bạn bè để đề tài này được hoàn thiện hơn nữa.
Cuối cùng, em xin chân thành cảm ơn sự hướng dẫn tận tình của Th.s Nguyễn Hữu Hùng và các thầy cô giáo khoa Điện tử - Viễn thông đã giúp em hoàn thành đồ án này.
TÀI LIỆU THAM KHẢO
[1]. TS. Nguyễn Phạm Anh Dũng, Sách ‘An ninh trong thông tin di động”, Nhà xuất bản Bưu-Điện, 9/2006
[2]. TS. Nguyễn Phạm Anh Dũng, Bài giảng “Thông tin di động” cho đào tạo từ xa, Học Viện Công nghệ Bưu chính Viễn thông 2007
[3]. TS. Nguyễn Phạm Anh Dũng, Giáo trình “Thông tin di động thế hệ ba”, Học Viện Công nghệ Bưu chính Viễn thông , Nhà xuất bản Bưu Điện, 2004
[4]. TS. Nguyễn Phạm Anh Dũng, Sách “Thông tin di động thế hệ ba”, Nhà xuất bản Bưu Điện, 2001
[5]. Timo Halonen, Javier Romero and Juan Melero, "GSM, GPRS and EDGE Performance – Evolution Towards 3G/UMTS”, Second Edition, John Wiley & Sons, 2003.
[6]. Don Zelmer," GPRS, EDGE, & GERAN - Improving the performance of GSM & TDMA Wireless by Packet Capabilities”, SUPERCOMM 2001, Atlanta, Georgia, June 2001
[7]