Upload
hat-bui-co-don
View
9
Download
0
Embed Size (px)
DESCRIPTION
an nih
Citation preview
2.2.2. Mã hóa không đối xứng
Các mật mã không đối xứng (còn gọi là mật mã khóa công khai) giả định sự tồn tại của tập
Λ của cặp khóa (K, k), một khóa để mã hóa (khóa công khai, k) và một khóa để giải mã
(private key, K). Một hệ thống mật mã không đối xứng với cặp khóa trong Λ được xác
định bởi: (Ek: A → B, DK: B → A), (K, k) ∈Λ
như vậy: DK (Ek (x)) = x, ∀x ∈ A; và Ek (DK (y)) = y, ∀x = y∈ B
Ek (x) và DK (y) được tính toán khả thi; và giả định rằng nó là là tính toán không khả thi:
◾để tìm x biết Ek (x) hoặc tìm k biết một tập hợp con của {Ek (x) | x ∈A};
◾tìm y biết DK (y) hoặc tìm K biết một tập hợp con của {DK (y) | y ∈B};
◾để tìm K biết k và tìm k biết K.
Do đó, các chương trình mã hóa và giải mã được cung cấp tương ứng bằng Ek (-) và DK (-).
Một thực thể (hoặc cá nhân), là α, có thể để lại khóa công khai của nó có sẵn để tất cả mọi
người, bằng việc công khai khóa trong một thư mục công khai. Các khóa riêng Kα của α
cần phải được giữ bí mật. Tất cả trao đổi khóa công khai có thể được thực hiện qua một
kênh không an toàn, mà có thể là kênh bất kỳ được xây dựng trên một hệ thống mạng có
thể bị nghe lén. Bất kỳ thực thể nào khác, gọi là β, có thể như thế sử dụng khóa công khai
của α, mã hóa tin nhắn và gửi bản mã đến α. Chỉ có thực thể α sẽ có khả năng giải mã được
bản mã. Tuy nhiên, mật mã khóa công khai đòi hỏi một công cụ bổ sung cho phép β xác
thực các mối quan hệ giữa α, Kα và kα. Có thể cần thêm các công cụ để giúp tạo ra các cặp
khóa, phân phối khóa công khai (nếu cần thiết), và cập nhật và thu hồi các khóa công khai.
Điều này có thể được thực hiện bởi các cơ sở hạ tầng khóa công khai (PKI). Trong phần
dưới đây, chúng tôi sẽ thảo luận về các chức năng chính cho một PKI.
Một trong những mối quan tâm quan trọng nhất trong hệ thống mã hóa công khai là
khoảng cách gắn một khóa công khai với chủ nhân hợp pháp của nó - đó là, làm thế nào để
đảm bảo rằng một khóa công khai cụ thể được sở hữu bởi một thực thể nhất định và không
phải thực thể khác, sau đó có thể giải mã thông điệp rõ ràng gửi đến thực thể đó. Nếu hai
người dùng, là α và β, muốn trao đổi khóa công khai của họ, họ có thể làm điều đó trong
cùng kênh không an toàn (như một kết nối vô tuyến) được sử dụng sau đó để trao đổi các
thông điệp mã hóa của họ. Tuy nhiên, nếu một kẻ địch, là γ, có thể nghe trên các kênh
truyền thông, nó có thể làm cho việc bảo vệ không hiệu quả bằng cách cung cấp một khóa
công khai cho α (như thể nó đến từ β) và một khóa công khai cho β (như nó đi từ α). Đây là
một loại giả mạo danh tính đôi, được gọi là tấn công man-in-the-middle, trong đó một kẻ
địch xuất hiện trong các kênh thông tin liên lạc giữa hai bên và tạo các hành vi với một
thực thể như các thực thể khác.
Một cách rõ ràng hơn, các cuộc tấn công man-in-the-middle được thực hiện như sau. Các γ
tạo ra hai cặp khóa công khai / bí mật (K1γ, k1γ) và (K2γ, k2γ). Thuê bao α truyền khóa kα
công khai của mình đến β, nhưng kẻ địch chặn nó, thay thế khóa hợp pháp với khóa công
khai, kγ của nó, và gửi nó đến thuê bao β. Tương tự như vậy, β gửi khóa công khai kβ của
mình đến α, nhưng kẻ địch γ chặn và thay thế nó với kγ được truyền tới α. Kết quả là, α tin
nhầm khóa công khai của β là k2γ, và β sai lầm cho rằng khóa công khai của α là k1γ, trong
khi cả hai khóa được sở hữu bởi kẻ địch.
Từ thời điểm này, kẻ địch chặn bất kỳ tin nhắn nào được gửi bởi α tới β, giải mã nó với
K1γ, đọc nó, tái mã hóa nó với kβ, và gửi tin nhắn cho β, người sẽ giải mã nó bằng khóa
riêng Kβ của mình. Theo hướng ngược lại, kẻ địch chặn lại bất kỳ thông điệp được gửi bởi
β, giải mã nó với K2γ, đọc nó, tái mã hóa nó với kβ, và gửi tin nhắn đến α, người sẽ giải mã
nó với khóa riêng của mình Kβ. Do đó, kẻ địch có thể đọc bất kỳ tin nhắn trao đổi giữa α
và β, trong khi họ không nhận thức được sự có mặt của kẻ địch và nghĩ rằng trao đổi thông
tin của họ được giữ bí mật.
Một giải pháp cụ thể chống lại cuộc tấn công này liên quan đến một bên thứ ba đáng tin
cậy (hay TTP), mà phải được tin cậy của tất cả các bên. TTP lưu trữ các khóa công khai
của tất cả các thành viên và đảm bảo danh tính của chủ sở hữu của mỗi khóa. Nhiều kỹ
thuật có thể được sử dụng để thực hiện vai trò TTP. Đây có thể là một Trung tâm phân
phối khóa Key Distribution Center (KDC) kết nối với những người tham gia với các kênh
an toàn hoặc một thực thể, được gọi là Certification Authority (CA), mà có thể cung cấp
cho bất kỳ người tham gia một chứng chỉ số có chứa danh tính của chủ sở hữu khóa, khóa
công khai của mình, ngày hiệu lực chứng chỉ và các thông tin hữu ích khác. Chứng chỉ phổ
biến theo chuẩn X.509 (Garfinkel, 2001) được phát triển bởi Liên minh Viễn thông quốc
tế. Tuy nhiên, sự tồn tại của một TTP có thể đại diện cho một điểm yếu của toàn bộ công
hệ thống mật mã chủ chốt. Ví dụ, nếu việc cung cấp các khóa công khai được thực hiện
theo yêu cầu, một kẻ địch có thể ảnh hưởng đến hiệu lực của toàn bộ hệ thống bằng cách
tung ra một tấn công từ chối dịch vụ đối với TTP. Hơn nữa, bằng cách dàn xếp xác nhận
chứng chỉ kẻ tấn công có thể cấp chứng chỉ giả mạo cho bất kỳ định danh nào hắn muốn
thực hiện các cuộc tấn công giả mạo man-in-the-middle. Các giải pháp dựa trên một cơ
quan chứng nhận phần lớn được sử dụng trong các mạng có dây và mạng lưới thông tin
liên lạc không dây. Các giao thức như HTTPS, IPsec và SSL được dựa trên việc sử dụng
các chứng chỉ số. Ví dụ, các chứng chỉ SSL theo tiêu chuẩn X.509 và có thể được cung cấp
bởi nhiều CA thương mại như VeriSign. Ngoài ra, các nhà quản lý công khai và cơ quan
chính phủ có thể cũng phải tạo các CA riêng của họ.
Để truyền tải một cách an toàn một tin nhắn, người khởi tạo các tin lấy khóa công khai của
đích, mã hóa các thông điệp bằng khóa công khai của các điểm đến, và truyền nó đến đích,
có thể giải mã nó với khóa riêng của nó. Ví dụ về các hệ thống mã hóa bất đối xứng bao
gồm RSA (Rivest; Rivest, 1978), Knapsack, ElGamal (ElGamal, 1985), và các mật mã
đường cong elliptic (Hankerson, 2003).
2.2.2.1. Mã hóa RSA
Các hệ mật RSA giả định các kết quả toán học sau đây: Cho n = pq là sản phẩm của hai số
nguyên tố và φ (n) là số các số nguyên có gốc n. Sau đó,
φ (n) = (p - 1) (q - 1)
Nếu một cặp số (e, d) thỏa mãn ed = 1 (mod φ (n)) sau đó cho tất cả m, chúng tôi có
(md)e = 1 mod n
Các mã hóa RSA tiến hành qua hai bước: tạo khóa và sản xuất bản mã. Trong tạo khóa,
một thực thể chọn ngẫu nhiên hai nguyên tố lớnsố p và q, tính n và φ (n), chọn ngẫu nhiên
một số nguyên e <φ (n) để cho giá trị gcd (e, φ (n)) = 1 và tính toán số nguyên d cho ed = 1
(mod φ (n)), và công khai (n, e) là khóa công khai của thực thể. Các thực thể là chắc chắn
để tìm d bằng cách áp dụng các thuật toán Euclid mở rộng. Các thực thể nên xóa p, q, và φ
(n) cho an toàn và giữ bí mật d là khóa riêng của nó.
Trong mã hóa, một thực thể cần phải gửi một thông điệp m<n cho chủ sở hữu của khóa
công khai (n, e) nên tạo ra các bản mã c như sau: c = md (mod n)
Để giải mã c, các thực thể tiếp nhận chỉ đơn giản là có thể thực hiện các tính toán ce mod n.
Ví dụ: Giả sử rằng người dùng α chọn một mô đun n sao cho n = 7 × 13 = 91. Sau đó, φ
(91) = 72. Bằng cách áp dụng các thuật toán Euclid mở rộng, người ta có thể thấy rằng 5
× 29 × 72 + (-2) = 1
Đó là 5 × 29 = 1 (mod 72). Do đó, người sử dụng α đã tính 29 để làm giải mã khóa bí mật
của nó. Người dùng có thể công bố công khai (91,5) là khóa công khai của mình.
Nếungười dùng khác muốn gửi thông điệp tới α m = 7, sau đó đã thực hiện mã hóabằng
cách tính toán c = 75 = 63 (mod 91) Để giải mã bản mã, tính toán sử dụng α tính m = 635 =
7 (mod 91)
2.2.2.2. Mã hóa với ElGamal
Các hệ mật ElGamal là một ứng dụng thú vị của chức năng cửa sập một chiều Diffie-
Hellman. Nó tích hợp ba phần: thiết lập khóa, mã hóa bản rõ, và giải mã bản mã. Trong
giai đoạn mã hóa, người dùng α chọn một cách ngẫu nhiên số nguyên p, tính toán một số
nhân tố ngẫu nhiên g môđun p không null (∈Zp), chọn một số ngẫu nhiên x (∈Zp-1), tính y
= gx (mod p), và công khai (p, g, y) là khóa công khai của α trong khi vẫn giữ x như là
khóa riêng tương ứng. Để gửi tin nhắn bí mật m <p tới người dùngsử dụng α, β chọn một
số k (∈Zp-1) và tính toán các cặp sau đây (c1, c2) của bản mã:
Quá trình giải mã thu được sau khi nhận được cặp (c1, c2) của bản mã bằng máy tính
Đẳng thức trên giữ vì
2.2.3. So sánh mã hóa đối xứng và không đối xứng
- Mã hóa đối xứng và bất đối xứng có cả điểm yếu và mạnh được thể hiện trong phần tiếp
theo. Hệ mật đối xứng chia sẻ những lợi thế sau so với hệ thống mã hóa bất đối xứng:
◾ Tốc độ dữ liệu thông qua cao hơn với thuật toán mã hóa đối xứng và cần điện năng cho
tính toán ít hơn.
◾ Để cung cấp cùng một mức độ bảo mật, kích thước khóa nhỏ hơn đáng kể với thuật toán
mã hóa đối xứng.
- Mặt khác, hệ thống mã hóa bất đối xứng thể hiện tốt hơn trong một số khía cạnh:
◾ Không giống như mật mã đối xứng, mà khóa chia sẻ phải được duy trì như là bí mật,
mật mã không đối xứng chỉ đòi hỏi rằng các khoá riêng được giữ bí mật. Các khóa công
khai có thể (và nên) được công bố.
◾ Một mức độ nào đó, quản lý và phân phối khóa dễ dàng hơn trong mật mã ko đối xứng.
Để xử lý một tin nhắn trao đổi giữa n bên, số lượng khóa đối xứng để quản lý là rất cao
(như có ít nhất n(n - 1) / 2 khóa đối xứng chỉ tính liên kết trực tiếp, trong khi cần các khóa
khác bảo mật nhóm). Ngược lại, sử dụng mã hóa bất đối xứng , số lượng các khóa để quản
lý chỉ là phức hợp O(n), vì chỉ có khóa công khai n là cần thiết cho các TTP.
◾ Một cặp khóa công khai/ bí mật có thể không thay đổi trong nhiều phiên. Phía đối diện,
khóa đối xứng nên được làm mới thường xuyên hơn (dù chỉ một lần mỗi phiên) để đảm
bảo cùng một mức độ bảo mật.
Những lợi thế của hệ thống mã hóa bất đối xứng, tuy nhiên, có liên quan chặt chẽ với mức
độ tin tưởng giao cho TTP xử lý các khóa công khai. Nếu các khóa này được giao cho một
TTP, thì nó phải được tin tưởng vô điều kiện, đặc biệt là khi nó xử lý các khóa bí mật đại
diện cho thuê bao. Trong trường hợp sau, các TTP về mặt lý thuyết có thể mã hóa và giải
mã bất kỳ tin nhắn từ hoặc tới bất kỳ thuê bao nào.
Một ứng dụng mã hóa đã thiết kế có thể tận dụng lợi thế của cả hai phương án: một trao
đổi khóa công khai có thể được sử dụng để thiết lập một khóa đối xứng giữa hai bên, trong
khi truyền thông sau này sẽ được mã hóa bằng khóa đối xứng. Ngoài ra, mật mã khóa công
khai cung cấp một phương tiện tốt để phân phối khóa. Một sự kết hợp chủ yếu sử dụng các
hệ thống mã hóa khóa công khai và đối xứng gọi là kỹ thuật phong bì điện tử số. Sử dụng
kỹ thuật này, người khởi xướng của một yêu cầu liên lạc (là α) cần đầu tiên tải về khóa
công khai kβ của người sử dụng khác (là β); sau đó α sẽ tạo ra một khóa phiên ngẫu nhiên,
bao bọc (hoặc mã hóa) nó sử dụng kβ, và gửi phong bì đến β. Sau khi β đã giải mã các bản
mã và lấy khóa phiên, hai bên sau đó có thể sử dụng nó để trao đổi tin nhắn bí mật trong
suốt phiên giao dịch.
Các cách tiếp cận trình bày ở trên, tuy nhiên, có hai hạn chế. Đầu tiên, quá trình sử dụng
một khóa phiên được tạo ra bởi một bên (người khởi xướng) và bên kia sẽ phải hoàn toàn
dựa vào tính trung thực của người khởi xướng trong khởi tạo khóa. Thứ hai, một kẻ nghe
lén, là người có thể buộc người nhận để lộ khóa riêng của mình, có thể phục hồi các thông
điệp bản rõ. Những hạn chế nêu trên có thể được giảm bớt nếu một phần mật mã công khai
trong chương trình này sử dụng một kỹ thuật như giao thức trao đổi khóa Diffie-Hellman,
ở đó khoá phiên được thu có tính hợp tác (dưới dạng gab (mod p) cho kỹ thuật Diffie-
Hellman, trong đó a và b là giá trị ngẫu nhiên được lựa chọn một cách độc lập bởi α và β,
tương ứng). Thuê bao α và β là ngang nhau tham gia vào việc xây dựng các khóa phiên.
2.4 Chữ ký số
Chữ ký số là một kỹ thuật mã hoá là nền tảng cho chứng thực, điều khiển truy nhập, ủy
quyền, và không thoái thác. Mục đích của chữ ký điện tử số là để cung cấp một phương
tiện cho một thực thể đính kèm danh tính của mình đến môt phần thông tin. Quá trình ký
kết liên quan đến việc truyền một tin nhắn và một số thông tin bí mật được tổ chức bởi các
thực thể thành một nhãn gọi là một chữ ký. Một định nghĩa cơ bản của một chữ ký điện tử
số như sau (Menezes, 1996). Coi:
◾ M là tập hợp các tin nhắn sẽ được ký kết,
◾ S là một tập hợp các yếu tố được gọi là chữ ký (thường là những chuỗi nhị phân của một
chiều dài cố định),
◾ Sgα: M → S là một chuyển đổi từ tập M vào tập S, được gọi là một chuyển đổi ký cho
thực thể α. Biến đổi Sgα được giữ bí mật bởi α và sẽ được sử dụng để tạo ra các chữ ký
liên quan đến những thông điệp trong M.
◾ Vα là một sự chuyển đổi từ tập M × S sang tập hợp {1,0}, được gọi là chuyển đổi thẩm
tra cho chữ ký của α. Nó được sử dụng bởi các tổ chức khác để xác minh các chữ ký tạo
bởi α.
Các phép biến đổi Sgα và Vα xác định một chương trình chữ ký số cho thuê bao α. Hai quá
trình có thể được kết hợp với một chương trình chữ ký cho α, thủ tục ký kết và quy trình
thẩm tra. Với các thủ tục ký kết, người ký tạo ra một chữ ký cho một tin nhắn m trong M
bằng cách tính toán Sgα (m) và truyền cặp (m, Sgα (m)) đến thuê bao β. Việc xác minh chữ
ký Sgα (m) trên một tin nhắn m,một thực thể xác minh β bắt đầu bằng cách nhận Vα, sau
đó anh / cô ấy tính π = Vα (m, Sgα (m)). Sau đó, β chấp nhận chữ ký là được tạo ra bởi α
nếu π = 1 và từ chối nếu π = 0. Các thuộc tính cần thiết cho một chương trình chữ ký (Sgα,
Vα) phải bao gồm những điều sau đây:
◾ Sgα (m) là chữ ký hợp lệ của α trên tin nhắn m khi và chỉ khi Vα (m, Sgα (m))=1.
◾ Tính toán là khả thi cho bất kỳ thực thể nào khác ngoài α để tìm kiếm, cho bất kỳ m tại
M, một chữ ký s trong S sao cho Vα (m, s) = 1.
◾ Chữ ký phải phụ thuộc vào các tin nhắn được ký kết và nên ngăn chặn giả mạo.
◾ Chữ ký cần tương đối dễ dàng để tính toán và tương đối dễ dàng để xác minh.
Các chữ ký phải dễ dàng để lưu trữ về cơ cấu, kích thước, và liên kết đến các tin nhắn liên
quan. Trong các phần dưới đây chúng ta xem xét hai ví dụ đặc biệt của chữ ký kỹ thuật số
dựa trên việc sử dụng chức năng băm cửa sập một chiều và mật mã khóa công khai. Đó là:
sơ đồ chữ ký RSA và chữ ký kỹ thuật số tiêu chuẩn (DSS, 2000), trong đó bao gồm DSA
(Digital Signature Algorithm).
Các sơ đồ hệ chữ ký và xác minh làm việc như sau với một mật mã công khai: Trong hệ
chữ ký, một thực thể muốn ký một tin nhắn m lựa chọn một hệ thống mật mã khóa công
khai và sử dụng khóa riêng của mình để kết hợp một giá trị băm với m và mã hóa giá trị
đó. Sau đó, sẽ gửi tin nhắn và các giá trị được mã hóa tới người nhận. Trong thời gian xác
minh, người nhận lại tính giá trị băm liên quan của m và kiểm tra xem nó phù hợp với các
kết quả thu được sau khi giải mã các giá trị mã hóa nhận được. Do đó, chữ ký số chỉ liên
quan đến hai bên liên lạc (người ký và xác minh) và giả định rằng người xác minh có
quyền truy cập các khóa công khai của người ký. Một chữ ký số đảm bảo tính toàn vẹn của
tin nhắn đã ký. Tuy nhiên nó thất bại trong cung cấp bảo mật vì tin nhắn được gửi đi trong
bản rõ. Bảo mật có thể được cung cấp bằng cách mã hóa toàn bộ tin nhắn (bao gồm cả giá
trị được mã hóa) hoặc là một khóa bí mật được chia sẻ với điểm đến hoặc với khóa công
khai của điểm đến.
Hiệu quả của một chương trình chữ ký số dựa trên khóa công khai phụ thuộc bảo mật khóa
bí mật của người gửi và sự bảo đảm quyền sở hữu khóa công khai. Nếu một người gửi về
sau muốn phủ nhận việc gửi một tin nhắn, anh có thể cho rằng khóa bí mật của mình bị mất
hoặc là khóa công khai sử dụng để xác minh chữ ký không thuộc về anh ta. Kiểm soát
hành chính liên quan đến việc bảo mật khóa bí mật và quyền sở hữu của khóa công khai có
thể được sử dụng để ngăn chặn tình trạng này. Ví dụ về các mục tiêu kiểm soát tại nhằm
bảo đảm rằng (a) mọi tin nhắn ký nên bao gồm một dấu thời gian; (B) mọi mất mát của các
khóa phải được báo cáo ngay cho cơ quan trung tâm xử lý các khóa công khai; và (c) mỗi
khóa công khai được lưu trữ trong một thư mục sau khi xác minh độ tin cậy của các liên
kết với các chủ sở hữu có liên quan và khóa bí mật.
2.5 Xác thực
Xác thực thực thể có thể được định nghĩa là quá trình mà qua đó danh tính của một thực
thể (chẳng hạn như một thuê bao điện thoại di động, một máy tính, một ứng dụng, hoặc
một mạng) được chứng minh. Xác thực liên quan đến hai bên, một bên yêu cầu (còn gọi là
bên chứng minh prover) và một bên nhận (còn gọi là bên xác minh verifier). Bên yêu cầu
trình bày danh tính của mình và bằng chứng danh tính đó. Bên xác minh kiểm tra xem bên
yêu cầu có phải người mà anh ta tuyên bố là hay ko, bằng cách xác nhận bằng chứng. Xác
thực là một khái niệm rất đặc biệt. Nó khác với nhận định, với mục tiêu xác định liệu một
cá nhân được biết đến bởi hệ thống anh ta truy cập hay ko. Nó cũng khác nhau từ ủy
quyền, có thể được định nghĩa là quá trình cấp quyền cho người dùng truy nhập đến các tài
nguyên cụ thể, trong hệ thống, dựa trên hồ sơ của mình và các chính sách điều khiển truy
nhập tài nguyên.
Xác thực tin nhắn cung cấp sự đảm bảo rằng một tin nhắn đã không bị thay đổi trong quá
trình truyền dẫn của nó. Hai sự khác biệt chính có thể được quan sát thấy giữa xác thực
thực thể và xác thực tin nhắn, được cung cấp bởi các kỹ thuật được mô tả trong chương
này: (a) xác thực tin nhắn không cung cấp sự đảm bảo thời gian liên quan đến thời điểm tin
nhắn đã được tạo ra, ký, gửi đi, hoặc chuyển đến một địa điểm và (b) xác thực thực thể liên
quan đến việc không có thông tin có ý nghĩa khác ngoài yêu cầu của một thực thể nhất
định.
Ví dụ về các hệ thống xác thực (hoặc thực hiện chứng thực) bao gồm sinh trắc học, nơi mà
danh tính của một cá nhân có thể được chứng minh bằng cách sử dụng tính năng sinh học
như vân tay, hình dạng chữ, mô hình võng mạc, nhận dạng giọng nói, hoặc nhận dạng
khuôn mặt. Hầu hết các hình thức xác thực đang được sử dụng rộng rãi. Chữ ký điện tử số
tạo ra một loại chứng thực. Chúng đang bắt đầu thay thế mật khẩu như là một phương tiện
hiệu quả để xác thực và điều khiển truy nhập vào các mạng và hệ thống thông tin. Chữ ký
số cho phép thuê bao nhận dữ liệu qua một mạng lưới thông tin liên lạc để xác định chính
xác nguồn gốc của thông tin và kiểm tra xem nó đã được thay đổi trong quá trình truyền
hay không.
Bởi vì xác thực đã bắt đầu trở thành một thành phần thiết yếu của hoạt động doanh nghiệp
và người tiêu dùng, tất cả các công nghệ được phát triển để cung cấp dịch vụ xác thực sẽ
phải chứng minh khả năng hiệu quả và an toàn của chúng. Tuy nhiên, các chức năng được
sử dụng để thực hiện xác thực có thể được nhóm lại thành ba loại: (a) xác thực dựa trên mã
hóa tin nhắn, để cho các bản mã đã sản xuất của tin nhắn thực thể phục vụ sự xác thực của
tin nhắn; (b) thực hiện xác thực dựa trên checksum mật mã, trong đó sử dụng chức năng
giống như checksum công khai của tin nhắn và một khóa bí mật cung cấp một giá trị có
chiều dài cố định để phục vụ như là một xác thực; và (c) thực hiện xác thực dựa trên chức
năng băm, mà sử dụng các chức năng một chiều công khai để ánh xạ một tin nhắn có chiều
dài bất kỳ thành một giá trị chiều dài cố định phục vụ như là xác thực của tin nhắn.
Một giao thức xác thực thực thể là một quá trình thời gian thực cung cấp sự bảo đảm rằng
các thực thể được chứng thực là hoạt động vào thời điểm khi thực thể đó đã thực hiện một
số hành động kể từ khi bắt đầu thực hiện giao thức. Từ điểm nhìn của bên xác minh, kết
quả của một giao thức xác thực thực thể là sự chấp thuận danh tính của bên yêu cầu như
xác thực hoặc sự không chấp nhận nó. Các giao thức xác thực cần thỏa mãn các mục tiêu
sau đây:
◾ Xác suất mà bất kỳ bên thứ ba khác với bên yêu cầu, sử dụng các giao thức xác thực và
mạo danh bên chứng minh, có thể gây ra sự xác minh để xác thực các bên thứ ba như là
bên chứng minh, là không đáng kể.
◾ Bên xác minh không nên có thể sử dụng lại các thông tin được cung cấp bởi bên chứng
minh để mạo danh anh ta đến một bên thứ ba.
◾ Một tin nhắn đã ký không thể được phục hồi từ các mã chữ ký trong xác minh chữ ký.
Một chữ ký điện tử số có thể được định nghĩa như là một sự tăng cường tin nhắn mật mã
để nhận dạng người ký. Nó xác thực tin nhắn trên một cơ sở bit (tức là, mỗi bit được xác
thực) và cho phép bất cứ ai xác minh chữ ký, với sự hạn chế mà chỉ có những người ký có
thể áp dụng nó. Chữ ký số khác biệt ở việc xác thực. Nó xác định người ký với các tin
nhắn đã ký kết. Bằng việc ký kết một tin, những người ký tên đánh dấu nó theo cách độc
đáo của riêng mình và làm cho nó đặc trưng cho mình. Các khái niệm về xác thực người ký
và xác thực tài liệu bao gồm các dịch vụ không thoái thác, cung cấp một bằng chứng về
nguồn gốc hoặc trả hàng dữ liệu để bảo vệ người gửi chống lại sự phủ nhận sai của người
nhận đã nhận được dữ liệu, hoặc để bảo vệ người nhận chống lại một sự từ chối sai bởi
người gửi rằng dữ liệu đã được gửi đi. Thông thường, một chữ ký số được gắn vào tin nhắn
của nó và lưu trữ hoặc truyền gửi tin nhắn này. Tuy nhiên, nó cũng có thể được gửi hoặc
lưu trữ như một phần tử dữ liệu riêng biệt vì nó duy trì một liên kết đáng tin cậy với tin
nhắn của nó.
Ngoài các tính năng trên, xác thực và chữ ký số có thể được phân loại thành các kỹ thuật
yếu và mạnh mẽ, trong khi các phương pháp xác thực thực thể có thể được chia thành ba
loại, tùy thuộc vào mô hình chúng được dựa trên. Chúng là những loại sau đây:
1. Xác thực dựa trên đối tượng đã biết: phương pháp trong loại này sử dụng như là một đầu
vào những gì những người dùng đưa ra (thông qua giao thức hồi đáp thách thức) để xác
thực. Các phương pháp dựa trên đối tượng đã biết bao gồm mật khẩu tiêu chuẩn, số nhận
dạng cá nhân (PIN), các khóa bí mật, và các khóa riêng.
2. Xác thực dựa trên đối tượng có sở hữu: Kỹ thuật trong lớp này sử dụng các thiết bị vật
lý để xác thực một thực thể. Ví dụ như các thẻ tín dụng, thẻ thông minh, và các thiết bị tùy
chỉnh cầm tay cung cấp PIN thay đổi theo thời gian.
3. Xác thực dựa trên đối tượng sinh trắc học: Phương pháp loại này sử dụng đặc điểm sinh
học để đạt được xác thực người dùng. Ví dụ về các đặc điểm bao gồm dấu vân tay, mẫu
võng mạc, giọng nói, hình dạng chữ viết.
2.7. Ủy quyền và điểu khiển truy nhập trong thông tin di độngSau khi một thuê bao điện thoại di động đã được chứng thực bởi một mạng không dây, một
quá trình về việc cấp quyền phải được thực hiện để kiểm tra xem anh ta được ủy quyền sử
dụng tài nguyên hoặc truy nhập vào một dịch vụ anh ta đã yêu cầu hay ko. Trong khi xác
thực là đơn giản, ủy quyền và điều khiển truy nhập có thể được điều khiển bởi một tập hợp
các quy tắc xác định các chính sách truy nhập / ủy quyền.
2.7.1 Điều khiển truy nhập Thông thường, hệ thống điều khiển truy nhập không dây bao gồm ba thực thể hợp lý - một
điểm quản lý, một thiết bị đáng tin cậy cá nhân (PTD), và một bộ điều khiển truy nhập.
Các điểm quản lý xác định các hệ thống máy tính, từ đó các thông tin ủy quyền và xác thực
được cấp cho thuê bao điện thoại di động dưới hình thức chứng chỉ. Các điểm quản lý sử
dụng một cơ sở dữ liệu để lưu trữ thông tin. Các thiết bị đáng tin cậy cá nhân thường là
một thiết bị cầm tay mà khách hàng mang theo người và sử dụng để truy nhập vào hệ
thống thông tin liên lạc. Các bộ điều khiển truy nhập xác thực và ủy quyền cho người sử
dụng.
Thông thường, một chính sách an ninh chung được thiết lập cho mạng và tất cả các quy tắc
về việc cấp quyền truy nhập áp dụng trong mạng cần tuân thủ nó. Các quy tắc truy nhập ủy
quyền có thể bao gồm một số quy tắc cá nhân áp dụng cho dữ liệu cá nhân hoặc các cấu
hình. Việc thiết lập một chính sách điều khiển truy nhập phụ thuộc vào các đặc tính của
các mạng thông tin liên lạc, các dịch vụ truy nhập, và sự phân bố của dịch vụ đó. Việc ủy
quyền để truy nhập tài nguyên và dịch vụ có thể được thực hiện theo nhiều cách thức và
yêu cầu đệ trình thông tin có thể được kiểm tra bằng cách sử dụng cơ sở dữ liệu thích hợp,
thư viện / danh sách, hoặc chứng chỉ. Thật vậy, các chứng chỉ số có thể được sử dụng để
chứng minh danh tính của người dùng, cung cấp các quyền của người sử dụng, và đặt hạn
chế về việc uỷ quyền cho các dịch vụ cụ thể.
Danh sách điều khiển truy nhập: Một người quản trị mạng có thể quản lý cho từng dịch vụ
và tài nguyên một danh sách bảo vệ mô tả các nguồn lực / dịch vụ và người dùng có thể sử
dụng chúng. Danh sách này có thể được lưu trữ trong cơ sở dữ liệu đặc biệt hoặc đơn giản
là lưu giữ trong một tập tin. Danh sách ủy quyền có thể được thiết lập để cho phép truy
nhập tùy thuộc vào loại thông tin khác nhau. Nó có thể được giới hạn cho các nhóm người
sử dụng, hoặc các thiết bị kết nối từ nút từ xa trong mạng di động. Cập nhật các quyền điều
khiển truy nhập có thể khó khăn để thực hiện được, đặc biệt là khi danh sách truy nhập
được phân phối. Truyền bá các bản cập nhật có thể cần thiết theo một cách đồng bộ.
Đăng nhập một lần: Nhà cung cấp dịch vụ (như ngân hàng, các nhà khai thác mạng, và
thương nhân) có thể cho phép sự truy nhập của thuê bao khách hàng với các dịch vụ sau
khi đăng nhập với tên truy nhập và mật khẩu. Cho phép khách hàng sử dụng cùng tên
người dùng và mật khẩu ở những nơi khác nhau, giúp ghi nhớ chúng, có thể tạo ra một vấn
đề an ninh. Một nhà cung cấp dịch vụ độc hại, ví dụ, có thể truy nhập thông tin của khách
hàng về một dịch vụ khác, bằng cách sử dụng tên đăng nhập và mật khẩu (hoặc thử các
mật khẩu tương tự). Sự cần thiết phải ghi nhớ và sử dụng nhiều lần đăng nhập có thể làm
cho khả thi bằng sử dụng các khái niệm về ký trên dịch vụ, cho phép khách hàng truy nhập
vào một số dịch vụ sau khi chứng thực đơn lẻ. Đối với điều này, một máy chủ chứng thực
có trách nhiệm cung cấp cho khách hàng một bằng chứng về danh tính của anh ta, mà có
thể được chuyển đến các máy chủ khác như một sự thay thế cho mật khẩu của anh ta. Bằng
chứng này của danh tính phải được mã hoá để nó có thể được chuyển cho khách hàng mà
không có một mối lo ngại rằng nó có thể bị phá hỏng.
Kerberos là một hệ thống nổi tiếng có sử dụng các khái niệm đăng nhập một lần (Neuman,
1994). Các máy chủ của một hệ thống Kerberos tin vào máy chủ Kerberos với danh tính
của các khách hàng khác. Kerberos sử dụng vé để cung cấp một cách an toàn danh tính của
một khách hàng đến một máy chủ. Các khách hàng có được vé ban đầu của mình từ máy
chủ Kerberos bằng cách gửi danh tính của mình đến máy chủ và sau đó giải mã đáp ứng
với mật khẩu của mình. Các vé ban đầu, gọi là vé cấp vé, sau đó được sử dụng với các máy
chủ cấp vé để được bổ sung vé cấp vé cho các máy chủ khác. Vé được mã hóa với khóa
riêng của một máy chủ. Nó chứa tên của các khách hàng, tên của máy chủ, địa chỉ của
khách hàng, một dấu thời gian, một thời gian sống và một khóa phiên ngẫu nhiên. Một vé
có thể được sử dụng để xác thực khách hàng chỉ với một máy chủ nhiều lần trong suốt thời
gian sống của vé. Khi sử dụng các máy chủ khác, vé mới cần phải được lấy từ máy chủ cấp
vé.
Chứng chỉ ủy quyền: Chứng chỉ ban đầu được thiết kế như các ràng buộc đã ký điện tử số
giữa một chủ thể và một khóa công khai. Chứng chỉ có thể được sử dụng cho các mục đích
khác nhau bao gồm cả ủy quyền. Chúng có thể có các hình thức khác nhau. Được sử dụng
nhất là các chứng chỉ X.509 và PGP. Chứng chỉ ràng buộc một chủ thể và một khóa được
gọi là chứng chỉ ID. Chúng chứng minh rằng theo tổ chức phát hành của chúng, các đối
tượng của chứng chỉ được giữ khóa bí mật liên quan đến một khoá công khai trong chứng
chỉ. Các khóa công khai có thể được sử dụng để mã hóa thông tin bí mật hướng đến đối
tượng của một chứng chỉ. Tuy nhiên, đôi khi danh tính của chủ sở hữu của một khóa công
khai là không đủ. Thông tin về việc một đối tượng được phép truy nhập là cần thiết.
Simple Public Key Infrastructure (SPKI) giải quyết vấn đề này. Bởi vì một chứng chỉ thuộc
tính liên kết với các ủy quyền, các chủ thể cùng với một chứng chỉ ID liên kết các chủ thể
và khóa với nhau, chứng chỉ thuộc tính có thể được kết hợp với các chứng chỉ ID để hoàn
thành một ràng buộc giữa việc cấp quyền và khóa. Nếu các chứng chỉ này được kiểm soát
bởi tổ chức phát hành khác nhau, cả hai phải được tin tưởng với các quyết định uỷ quyền.
Trong trường hợp chứng chỉ ủy quyền, sự cho phép được ánh xạ trực tiếp tới một khóa,
được sử dụng như một ID cho một cá nhân.
2.7.2 Ủy quyền dựa trên chứng chỉSimple Public Key Infrastructure (Ellison, 1999), đại diện một thay sự thế cho các cơ sở hạ
tầng khóa công khai loại bỏ khái niệm về tên tổng thể và làm giảm sự phức tạp do tiêu
chuẩn X509. Nó cũng trình bày một khuôn khổ có lợi cho việc cung cấp ủy quyền. SPKIs
kết hợp các khái niệm về tên địa phương. Các chứng chỉ số đã được đề cập trong tiểu mục
này, cố gắng đưa ra một cái nhìn tổng thể về chứng chỉ thống nhất các khái niệm của
chứng chỉ X509 và SPKI bằng cách mở rộng chúng và giảm thiểu những hạn chế. Các
chứng chỉ số kết hợp một số tính năng bổ sung vào các lĩnh vực xác nhận, ủy nhiệm, và ủy
quyền áp dụng cho thông tin di động. Vì lợi ích của tính thống nhất, chúng tôi cho rằng có
ba loại chứng chỉ số: (a) chứng chỉ đặt tên, trong đó cung cấp cho các tên (địa phương); (b)
chứng chỉ cấp quyền, trong đó cấp ủy quyền cụ thể từ các công ty phát hành cho một khách
hàng điện thoại di động. Nó bao gồm cả các lĩnh vực cụ thể cho uỷ quyền; và (c) chứng chỉ
danh sách thu hồi, trong đó báo cáo về chứng chỉ không hợp lệ thuộc hai loại chứng chỉ
trước.
Chúng ta hãy xem xét rằng một thực thể di động được có một (nhà) không gian tên, và
rằng ý nghĩa của tên nhà có thể thay đổi từ một khách hàng khác. Chúng tôi xác định một
tên đầy đủ tư cách là một biểu hiện hợp chất của các hình thức:
tên k n1 ... ns
k là một khóa công khai và n1 ... ns là (nhà) tên (Ellison, 1999). Đặt tên, ủy quyền, chứng
nhận thu hồi có các hình thức sau đây của thông điệp ký:
k là một khóa công khai đại diện cho tổ chức phát hành, những người nên đã ký chứng
nhận bằng cách sử dụng khóa riêng gắn liền với công khóa k, n là một tên địa phương của
các tổ chức phát hành, p là một tên đầy đủ của một thuê bao di động, Val là một lĩnh vực
mô tả các ràng buộc có hiệu lực trên giấy chứng nhận (theo địa chỉ nơi để kiểm tra thu hồi,
nếu cần thiết), Act cho một tập hợp các hành động mà các công ty phát hành ủy quyền cho
thuê bao di động để thực hiện (chẳng hạn quyền truy cập vào một nguồn tài nguyên hoặc
thực hiện một thủ tục), Del là một trường ủy quyền, trong đó chỉ ra những điều kiện mà đối
tượng được ủy quyền để truyền sự ủy quyền các hành động thực hiện trong Act tới những
nơi khác. Cuối cùng, cj (= (kj, hj), j <s), đại diện cho một cặp có chứa khóa công khai và
giá trị băm của một chứng chỉ công bố bởi tổ chức phát hành là không hợp lệ.
Một mô tả hành động này là một cặp:
ở đó act-name là định danh của hành động, các in-parameter là các thông số đầu vào cần
thiết để thực hiện các hành động, và π là một thuộc từ xác định các yêu cầu để đáp ứng
trước khi cho phép thực hiện các hành động. Việc xác minh chứng chỉ ủy quyền liên quan
đến môi trường địa phương đó có trách nhiệm thực hiện các hành động và các thông số quy
định tại in-parameter.
Ủy thác Del chỉ là một tuyên bố được thỏa mãn trước khi thuê bao di động (có chứng chỉ
ủy quyền) có thể ủy thác / ủy quyền của mình cho một thuê bao di động khác. Trường ủy
thác có thể thay đổi từ một tuyên bố tĩnh để giảm xuống một bit (điều này thể hiện cách
tiếp cận truyền thống cho SPKI), kiểm soát sự chuyển giao của ủy quyền, đến một vị từ
phụ thuộc thời gian liên quan đến các thuộc tính khác nhau và các tiêu chí ủy quyền dựa
trên sử dụng chứng chỉ, thời gian, và môi trường. Các trường xác nhận Val chứa giá trị thời
gian, mô tả như là một khoảng thời gian trong đó chứng chỉ là hợp lệ. Nó có thể bao gồm
các ràng buộc khác nhau, tùy thuộc vào mục đích của chứng chỉ. Trường Val có thể chứa
một vị từ gọi là now (t), được sử dụng để đại diện ủy quyền phải được thực hiện chỉ một
lần trong một thời gian ngắn bắt đầu từ thời điểm t. Điều này có nghĩa rằng, ngay sau khi
sự thi hành của hành động yêu cầu chấm dứt, hiệu lực chứng nhận được huỷ bỏ. Rõ ràng là
việc sử dụng và ngữ nghĩa của thuộc từ now (t) phải được kiểm soát chặt chẽ bởi hệ thống
cho phép nó.
Hoạt động khác nhau có thể được thực hiện trên chứng chỉ ủy quyền và đặt tên nói trên.
Các hoạt động này bao gồm khởi tạo chứng chỉ, thu hồi chứng chỉ và kiểm tra on-line. Một
số hoạt động khác có thể được xác định dựa trên nhu cầu của các dịch vụ truy cập. Trong
số các hoạt động này, người ta có thể đề cập đến việc kiểm tra on-line, bao gồm cả việc
kiểm tra tính hợp lệ, ủy quyền, và trạng thái. Quá trình khởi tạo được khởi xướng bởi
người sử dụng và quản lý bởi người ký chứng nhận, người sẽ phải chịu trách nhiệm về việc
xác minh thích hợp, đặc biệt là khi một số quyết định hoặc / và thông tin sẽ được bao gồm
trong trường ủy quyền, ủy thác, và xác nhận của chứng chỉ được yêu cầu. Quá trình khởi
tạo có thể được phân tách ra thành ba tiểu quy trình:
◾ quá trình giao tiếp thuê bao: Đây là một công cụ tương tác nhằm thu thập các thông tin
cần thiết từ thuê bao di động, cung cấp một cách an toàn các chứng chỉ được tạo ra cho
thuê bao di động, và xác minh sự thừa nhận chuyển giao.
◾ quá trình thực hiện kiểm tra: Đây là trách nhiệm đối với xác minh và công nhận nội
dung trường của một chứng chỉ. Nó kiểm tra việc tuân thủ các điều khoản có trong chứng
nhận gốc và các chính sách địa phương điều khiển truy nhập.
◾ quá trình truyền bá: Quá trình này có trách nhiệm cập nhật tất cả các tài liệu lưu trữ, vị
trí, và các dịch vụ về các sự khởi tạo của bất kỳ chứng chỉ nào. Quá trình thu hồi chứng chỉ
là một hoạt động mà có thể đạt được khi kích hoạt bởi các chủ sở hữu chứng chỉ hoặc bởi
người ký chứng chỉ.
Quá trình thu hồi có thể được phân tách ra thành quá trình con đơn giản dựa trên chứng chỉ
sử dụng trong hệ thống mà các chứng chỉ được sử dụng. Sau đây có thể là một cách tiếp
cận để phân hủy nó thành ba tiểu trình: một quá trình sử dụng, nó giao tiếp hệ thống; một
quá trình xác minh, trong đó kiểm tra xem liệu thu hồi được ủy quyền hay không; và một
quá trình công bố, truyền bá các CRL nơi nó là cần thiết.
Quá trình kiểm tra online kiểm tra biểu thức có chứa thông tin về các giao thức hoặc dịch
vụ được sử dụng để thực hiện việc xác minh, và để xác thực danh tính của các nguồn tài
nguyên cần được tư vấn sử dụng các giao thức. Tất cả kiểm tra on-line có thể có các dạng
sau:
<Req (Checker check-type) (Act p k Del Val) opt>
ở đó Checker phát cho một hoặc nhiều nhận dạng tài nguyên thống nhất có thể được liên
lạc để yêu cầu kiểm tra on-line, và kiểm tra kiểu định nghĩa kiểu của tờ séc. Đây có thể là
một sự kiểm tra tính hợp lệ, trong đó xác nhận rằng tất cả các điều kiện xuất hiện trong
trường xác nhận được thỏa mãn; một kiểm tra quyền hạn, trong đó xác nhận rằng tất cả các
hành động xảy ra trong lĩnh vực ủy quyền có thể được ủy quyền phải thực hiện; kiểm tra
ủy thác, xác minh tính hợp lệ của các hạn chế được mô tả trong các trường ủy thác; hoặc
kiểm tra tình trạng, mà các báo cáo về tình trạng của một tài nguyên. Cuối cùng, trường
Opt chứa các thông số giá trị được sử dụng trong việc kiểm tra on-line. Tất nhiên, các
chuỗi (k p Act Del Val) đại diện cho các nội dung của chứng nhận và có thể được giảm
xuống (k p).
5.2.1. Cấu trúc GSM
Hình 5.1: Cấu trúc GSM
Một mạng GSM (như mô tả ở hình 5.1) bao gồm 9 thành phần chính:
Trạm di động (Mobile Station - MS)
Modul nhận dạng thuê bao (Subscriber Identity Module - SIM)
Phân hệ trạm gốc (Base Station Subsystem - BSS)
Bộ điều khiển trạm gốc (Base Station Controller - BSC)
Bộ chuyển đổi mã và phối hợp tốc độ (Transcoding Rate and Adaptation Unit -
TRAU)
Trung tâm chuyển mạch dịch vụ di động (Mobile Service Switching Center - MSC)
(Home Location Register - HLR)
(Visitor Location Register - VLR)
(Equipment Identity Register - EIR).
Cùng với nhau, tất cả các thành phần cấu thành một Mạng thông tin di động mặt đất công
cộng (Public Land Mobile Network - PLMN).
Chức năng các thành phần
- MS (Mobile Station)
Là thiết bị cầm tay trong mạng di động GSM, thực hiện chức năng thu và phát tín
hiệu vô tuyến với một BTS (trong vùng phủ sóng).
Nó có chứa một số IMEI (International Mobile station Equipment Identification)
dùng để nhận dạng thiết bị. Số IMEI là duy nhất cho tất cả các MS trên toàn thế giới.
Mỗi MS muốn hoạt động phải có SIM (Subscriber Identify Mobile) dùng để lưu trữ
thông tin của thuê bao và thông tin của nhà cung cấp
- BTS (Base Transceiver Station)
BTS thực hiện chức năng thu và phát tín hiệu với các MS nằm trong vùng phủ sóng
của nó (gọi là tế bào).
BTS làm việc thụ động, mọi hoạt động của nó được điều khiển bởi BSC
- BSC (Base Station Controller)
Điều khiển các hoạt động của BTS. Mỗi BSC điều khiển được nhiều BTS
Điều khiển công suất phát cho các MS: tiết kiệm pin và tránh lấn áp tín hiệu
Cấp phát kênh tần số cho các BTS và MS
Điều khiển nhảy tần số giữa các MS để giảm nhiễu
Điều khiển nhảy tần số giữa các MS để giảm nhiễu
- MSC (Main Swicthing Center)
Thực hiện chức năng chuyển mạch các cuộc gọi giữa các MS
Đây là nơi duy nhất trong hệ thống di động thực hiện chức năng này
Một MSC quản lý được nhiều BSC trong một vùng
Các MSC ở các vùng sẽ đấu nối với nhau để cho phép thực hiện cuộc gọi liên vùng
Ngoài ra MSC còn nối với mạng PSTN để thực hiện gọi đến điện thoại cố định
- EIR (Equipment Identity Register)
Chứa thông tin về IMEI của các MS trong phạm vi quản lý của một MS
- HLR (Home Location Register)
Chứa thông tin về các thuê bao (SIM) đăng ký trong một MSC
Thông tin trong HLR là ổn định, nhưng nó không chứa vị trí hiện tại mà thuê bao
đang hiện hữu
- VLR (Visiting Location Register)
Chứa thông tin của các thuê bao không có trong HLR nhưng tạm thời có mặt trong
vùng quản lý của MSC
Thông tin của thuê bao trong VLR bị xóa khi thuê bao tắt máy
- AuC (Authentication Center)
Chứa các thông tin để chứng thực thuê bao như: quyền được gọi, quyền được nghe
5.3.2. Mô hình bảo mật GSM
GSM, giống như nhiều mạng di động khác phục vụ cho một số lượng lớn thuê bao, chứa
nhiều tài sản có giá trị mà có thể tạo thành các nguồn dễ bị tổn thương nghiêm trọng và cần
thiết bảo vệ chống lại sự lạm dụng và tấn công độc hại. Hai dạng của yêu cầu này
có giá trị đối với GSM: các yêu cầu cho sự bảo mật của thuê bao di động và các yêu cầu để
bảo vệ tính toàn vẹn dữ liệu. Một thuê bao vào mạng GSM đòi hỏi được bảo vệ trong các
hoạt động sau: thiết lập cuộc gọi, bảo vệ các dịch vụ dựa trên thoại, bảo mật vị trí, bảo mật
mô hình gọi điện thoại, bảo mật danh tính thuê bao, và bảo vệ dữ liệu
Xác thực và bảo mật được thực hiện bằng cách tạo cho thuê bao di động và mạng một bí
mật được chia sẻ, đó là một giá trị 128-bit Ku, được lưu trữ trong thẻ SIM. Khóa này là
không thể truy cập trực tiếp đối với thuê bao. Mỗi khi thuê bao kết nối vào mạng, mạng
xác thực thuê bao bằng cách gửi một số ngẫu nhiên RANDG đến MS. Các thẻ SIM sau đó
sử dụng các số ngẫu nhiên và khóa bí mật để chạy một thuật toán xác thực, cung cấp một
giá trị SRES, và tạo ra một khóa phiên Ks. Thuê bao được xác thực nếu SRES đã cung cấp
phù hợp với giá trị của SRES được tính toán một cách riêng biệt bởi các mạng GSM sử
dụng các thông số và các thuật toán tương tự. Việc mã hóa được thực hiện bằng cách sử
dụng khóa Ks. Các cơ chế được sử dụng trong mạng GSM để cung cấp giấu tên, xác thực
và bảo mật đối với người dùng di động chi tiết trong phần sau.
Hình 5.3: Mô hình bảo mật GSM
Các mô hình bảo mật nhằm cung cấp một giải pháp đáp ứng đầy đủ, tới một số mức độ,
yêu cầu bảo mật nói trên. Dịch vụ bảo mật được cung cấp bởi GSM bao gồm giấu tên, xác
thực thuê bao, và bảo mật. Thật không may, mô hình này không cung cấp bất kỳ tính năng
bảo mật như xác thực mạng.
5.3.2.1. Giấu tên
Giấu tên hạn chế được cung cấp trong GSM bằng cách sử dụng định danh tạm thời. Khi
một thuê bao di động bật máy của mình, danh tính thực tế (IMSI) được sử dụng để
xác định MS với mạng và sau đó một định danh tạm thời (Temporary Mobile Subscriber
Identity - TMSI) được phân bổ như một định danh địa phương tạm thời của MS tới mạng
tại các phiên trong tương lai. Các TMSI chỉ có ý nghĩa trong một khu vực địa điểm nhất
định. Theo các đặc điểm kỹ thuật ETSI, mạng luôn mã hóa TMSI trước khi gửi nó vào MS.
Một yêu cầu cập nhật vị trí được tạo ra trong các trạm di động nhận được một TMSI.
Bên ngoài khu vực địa điểm nơi thuê bao được phục vụ, nó phải được kết hợp với các
định danh khu vực địa phương để cung cấp cho một danh tính rõ ràng. Thông thường, việc
phân bổ lại TMSI thực hiện ít nhất với mỗi sự thay đổi của một khu vực địa điểm, vì yêu
cầu cập nhật vị trí cung cấp bởi MS vào mạng. Từ thời điểm đó cho đến khi các điện thoại
di động tắt hoặc di chuyển đến một vị trí khác, các định danh tạm thời được sử dụng. Tuy
nhiên, có khả năng có thể xác định định danh tạm thời được sử dụng bởi một thuê bao di
động bằng cách theo dõi thuê bao.
5.3.2.2 Xác thực
Vì bất kỳ thuê bao độc hại nào có thể nghe lén được một thông tin liên lạc trong môi
trường vô tuyến, xác thực, nhằm mục đích để chứng minh rằng thuê bao đúng là những
người họ tuyên bố, là một yếu tố thiết yếu của một mạng di động. Xác thực liên quan đến
hai thành phần chức năng, các thẻ SIM trong điện thoại di động và Trung tâm Chứng thực
(AuC). Một trong các chức năng bảo mật quan trọng nhất của SIM là để xác thực các thuê
bao
với mạng. Quá trình này đảm bảo rằng MS yêu cầu dịch vụ là một thuê bao hợp pháp và
không phải là một kẻ xâm nhập hay một thuê bao nhân bản vô tính. Các mạng GSM xác
minh danh tính của các thuê bao thông qua một quá trình phản hồi - thách thức. Khi một
MS yêu cầu một dịch vụ, mạng tạo ra ngẫu nhiên các số thực RAND và thách thức MS
bằng cách gửi cho nó RAND. Các MS nên trả lời một cách chính xác các thách thức trước
khi được cấp quyền truy nhập bằng cách gửi lại các giá trị kỳ vọng của SRES.
Thách thức RAND được gửi bởi các mạng GSM tới MS bao gồm một số 128-bit được tạo
ngẫu nhiên một cách tuỳ tiện, vì vậy mà nó hầu như không có cơ hội bị lặp đi lặp lại, vì
nếu không, kẻ tấn công có thể dễ dàng xây dựng một tập tin của cặp (RAND, SRES) và sử
dụng các thông tin thu thập được để đạt được quyền truy nhập bất hợp pháp dịch vụ. Khi
MS nhận RAND, nó chuyển qua để các SIM để xử lý. Các SIM lấy giá trị RAND và khóa
mật 128bit Ku và tạo ra một phẩn hồi 32-bit (hoặc SRES). Các phản hồi được chuyển ra
khỏi SIM vào thiết bị đầu cuối, nơi mà nó được chuyển tiếp tới mạng. Đây là phản hồi của
MS tới thách thức của mạng. Trong khi đó, các mạng (hay chính xác AuC) đã thực hiện
một loạt các hoạt động (Hình 5.3) và gửi SRES phù hợp với BSS bao gồm MS. Sử dụng
cùng một giá trị của RAND và một bản sao giống hệt nhau của Ku, mạng GSM đã tính
toán phản hồi riêng của mình tới thách thức.
Khi mạng nhận SRES từ MS, nó so sánh với SRES riêng của mình. Nếu hai giá trị là giống
hệt nhau, mạng có thể cho rằng MS là hợp pháp. Sau đó, nó có thể quyết định cho phép
việc cung cấp các dịch vụ yêu cầu. Nếu hai giá trị không bằng nhau, mạng GSM giả định
rằng các SIM không có khóa bí mật Ku thích hợp. Do đó, nó quyết định từ chối việc cung
cấp các dịch vụ cho MS. Vì vậy, kẻ tấn công thu thập và lưu trữ các phản hồi SRES sẽ
không thể tái sử dụng thành công bất kỳ giá trị nào bởi vì giá trị RAND thay đổi với mỗi
nỗ lực truy nhập (hoặc gần như mọi truy nhập). Thậm chí nếu một thách thức RAND đặc
biệt xảy ra sẽ được tái sử dụng (cho phép kẻ tấn công mạo danh một thuê bao hợp pháp của
mạng GSM), kết nối đến các dịch vụ không thể kéo dài một thời gian dài vì mạng GSM có
khả năng thực hiện lại quá trình xác thực của MS (Sử dụng giá trị khác cho RAND) và lặp
lại thường xuyên như nó muốn. Như vậy, thách thức tiếp theo, nhận bởi các MS (hay do nó
có chứa SIM) từ mạng GSM, sẽ là một giá trị RAND mới mà kẻ tấn công sẽ không có thể
có SRES đúng.
Ngoài ra, cần lưu ý rằng một tính năng khóa của giải pháp bảo mật GSM này dựa trên thực
tế là một thuê bao Ku cảu thuê bao được giữ bí mật và không bao giờ truyền tải qua mạng
GSM. Nó được giữ lưu trữ trong thẻ SIM và AuC. Để tính toán SRES, một thuật toán gọi
là A3 được sử dụng. Nó sử dụng một hàm băm được xây dựng bằng cách sử dụng một
chức năng gọi là COMP128, mà còn được sử dụng trong sự khởi tạo của một khóa phiên
cần thiết để bảo mật các cuộc gọi và trao đổi dữ liệu. Thuật toán COMP128 được thiết kế
để có một mô hình tham chiếu cho việc thực hiện GSM, nhưng vì một loạt lý do nó đã
được thông qua bởi hầu như tất cả các nhà cung cấp GSM. Thật không may, một số điểm
yếu đã được phát hiện cho COMP128. Sau khi nó đã bị hổng (trong tháng 4 năm 1998),
phiên bản mới mạnh mẽ hơn, được gọi là COMP128-2 và COMP128-3, được phát triển.
Tuy nhiên, đã không thuyết phục được các nhà khai thác GSM để áp dụng một trong các
phiên bản mới; thay vào đó, họ giữ lại phiên bản cũ của thất bại COMP218. Một trong
những lý do được viện dẫn bởi các nhà khai thác là số tiền lớn các chi phí liên quan đến
việc thay thế COMP128
5.3.2.3 Bảo mật
Ngoài các thông tin cần thiết cho việc chứng thực của thuê bao, các thẻ SIM cũng cung cấp
các thông tin cần thiết để mã hóa các kết nối vô tuyến giữa MS và BTS phủ sóng nó. Cụ
thể hơn, một thuật toán gọi là A8 được sử dụng để tạo ra một khóa phiên Ks với mỗi kết
nối được chấp nhận. Khóa Ks được sử dụng cho thoại và mã hóa dữ liệu trước khi truyền
trên các kết nối vô tuyến. Các thuật toán được sử dụng để tính toán giá trị Ks 64-bit được
chỉ ra theo hình 5.3.
Mặt khác, vì các mạng GSM sử dụng các kỹ thuật phân chia thời gian để chia sẻ kênh radio
với lên đến tám thuê bao khác nhau, mỗi thuê bao lấy lượt của nó sử dụng các kênh vô
tuyến, gửi và nhận thông tin chỉ trong một trong tám khe thời gian có sẵn trong mỗi khung.
Một cuộc thoại GSM sử dụng hai khung, một đi từ trạm gốc đến MS (tức là, trên đường
xuống) và một khác từ MS đến trạm gốc (uplink). Mỗi một khung chứa 114 bit thông tin
thuê bao, thường số hóa và nén thoại. Vì vậy, mỗi 4,615 ms MS nhận 114 bit thông tin từ
trạm gốc và truyền 114 bit khác tới các trạm gốc. 228 bit này yêu cầu mã hóa để bảo vệ nó
khỏi tin tặc.
Sử dụng RAND và khóa bí mật Ku, các SIM chạy thuật toán A8 để sản xuất khóa phiên
dài 64-bit gọi là Ks. Ks được chuyển ra khỏi SIM và vào MS, nơi nó được sử dụng bởi một
thuật toán thứ ba gọi là A5. Thuật toán A5 sử dụng Ks và số khung công khai hiện tại để
tạo ra một dòng khóa của 228 bit, phân tách ra thành hai nửa. Trong khi nửa đầu mã hóa
khung đường xuống (dl), nửa thứ hai được sử dụng để mã hóa các khung uplink (ul). Đối
với mỗi khung mới được chuyển giao, một dòng khóa 228-bit mới được sản xuất bởi các
thuật toán A5 để mã hóa (và giải mã) khung. Thuật toán A5 nằm ở phần phần cứng của
thiết bị đầu cuối, và không bao giờ trong thẻ SIM. Nó phải hoạt động một cách nhanh
chóng và liên tục để tạo ra một tập mới của 228 bit mỗi 4,615 mili giây. Ngoài ra, do thiết
bị đầu cuối GSM được thiết kế để hoạt động trong các mạng khác nhau, các thuật toán A5
cần được phổ biến đến tất cả các mạng GSM.
6.2.1 Kiến trúc mạng 3G
Mạng UMTS trình bày một thực thi của hệ thống 3G-mobile, mà là tương thích trong một
số cách với hệ thống toàn cầu cho thông tin di động và các mạng GPRS. Sự khác biệt cơ
bản giữa GSM / GPRS và UMTS là mạng sau này hỗ trợ tốc độ truy cập cao hơn. Điều này
đạt được thông qua một giao diện vô tuyến đa truy nhập phân chia theo mã băng rộng cho
các hệ thống thông tin liên lạc trên mặt đất, tên UMTS Terrestrial Radio Access Network
(UTRAN).
Một mạng UMTS chia thành hai phần, là mạng lõi (CN) và mạng truy nhập vô tuyến
chung (GRAN). Mạng lõi sử dụng lại một số yếu tố đã được hiện diện trong các mạng
GPRS và GSM (3GPP, 900). Nó bao gồm hai miền chồng chéo: Circuit-Switched (CS) và
(PS) Packet-Switched. Miền CS được tạo thành từ các thực thể mà phân bổ nguồn lực dành
riêng cho các lưu lượng truy cập của người dùng, điều khiển các tín hiệu khi kết nối được
thiết lập, và giải phóng chúng khi phiên chấm dứt. Thường cuộc gọi thoại được xử lý bởi
các chức năng phát triển trong miền CS. Các đối tượng trong miền PS chịu trách nhiệm
vận chuyển các dữ liệu thuê bao trong các hình thức gói tự trị, được định tuyến độc lập với
nhau. nỗ lực này
để khắc phục những hạn chế của mạng 2G để truyền tải dữ liệu một cách hiệu quả. những
thuê bao có thể thiết lập một kết nối đến và đi từ các mạng dữ liệu gói bên ngoài và các
mạng không dây khác.
Các kiến trúc cơ bản của một mạng UMTS được chia thành ba thành phần như mô tả trong
hình 6.1. Các thành phần này là: trạm di động (MS), mạng truy nhập, và mạng lõi (CN).
Mạng truy nhập xử lý tất cả các chức năng liên quan đến các tài nguyên vô tuyến và giao
diện không gian quản lý, trong khi các mạng lõi thực hiện chức năng chuyển mạch
và các giao diện mạng bên ngoài.
Hình 6.1: Cấu trúc mạng 3G
6.2.2. Kiến trúc bảo mật UMTS
Kiến trúc chung của bảo mật mạng UMTS được xây dựng trên một bộ đặc điểm bảo mật
và cơ chế bảo vệ. Một đặc điểm bảo mật là một dịch vụ có khả năng tuân thủ một hoặc
nhiều yêu cầu bảo mật. Một cơ chế bảo mật là một quá trình được sử dụng để thực hiện
một chức năng bảo mật. Hình 6.2 mô tả cách chức năng bảo mật được tổ chức với nhau
trong năm lớp. Mỗi lớp đang đối mặt với một mối đe dọa cụ thể và đạt được các mục tiêu
an ninh cụ thể. Mô tả của các lớp này:
- Bảo mật truy nhập mạng (lớp I): Các chức năng của lớp này cung cấp truy nhập an toàn
vào các dịch vụ 3G và bảo vệ chống lại các cuộc tấn công vào các kết nối vô tuyến.
- Bảo mật miền mạng (lớp II): Lớp này chứa các chức năng cho phép các nút trong mạng
của nhà điều hành trao đổi một cách an toàn các thông điệp báo hiệu, và bảo vệ chống lại
các cuộc tấn công trên mạng có dây nhắm vào UMTS.
- Bảo mật miền thuê bao (lớp III): Đây lớp của các chức năng có mục đích nhằm đảm bảo
cấp tiếp cận của các MS với mạng và các dịch vụ UMTS.
- Bảo mật miền ứng dụng (lớp IV): Các chức năng của lớp này có mục đích tạo điều kiện
cho các ứng dụng triển khai tại miền thuê bao và miền nhà cung cấp trao đổi thông tin một
cách an toàn.
- Khả năng nhìn thấy và cấu hình bảo mật (lớp V): các chức năng lớp này cho phép thuê
bao có được thông tin về các chức năng bảo mật có trong hoạt động cho anh ta. Lớp này
cũng cho phép thuê bao kiểm tra xem việc cung cấp một dịch vụ phụ thuộc vào kích hoạt
một số tính năng bảo mật hay không.
Ngoài ra, các chức năng bảo mật truy cập mạng (lớp I) có thể được tiếp tục
phân thành ba loại: chức năng xác thực thực thể, chức năng bảo mật và chức năng toàn vẹn
dữ liệu. Sau đây là danh sách của các yếu tố chính trong chức năng xác thực:
- Xác thực thuê bao: mạng phục vụ xác nhận danh tính của các thuê bao.
- Xác thực mạng: các thuê bao xác nhận là mình được kết nối với một mạng phục vụ, được
ủy quyền bởi nhà mạng chủ của thuê bao để cung cấp cho anh ta với các dịch vụ; điểu này
bao gồm việc bảo đảm rằng sự ủy quyền này là mới đây. Cần lưu ý ở đây là khái niệm về
xác thực đưa ra nhiều khía cạnh không nói được hết.
- Xác thực nguồn gốc và toàn vẹn dữ liệu tín hiệu: các tính năng bảo mật sau đây được
cung cấp liên quan đến tính toàn vẹn của dữ liệu trên kết nối truy nhập mạng:
Thỏa thuận thuật toán toàn vẹn: trạm di động (MS) và mạng phục vụ (SN) có thể
thương lượng một cách an toàn các thuật toán toàn vẹn mà chúng sử dụng.
Thỏa thuận khóa toàn vẹn: MS và SN đồng ý trên một khoá toàn vẹn họ có thể sử
dụng sau đó; điều này được thực hiện như một phần của các giao thức mà cũng cung
cấp xác thực thực thể.
Xác thực nguồn gốc và toàn vẹn dữ liệu của tín hiệu dữ liệu