Trong mạng lưới tín nhiệm: là một cách để đảm bảo rằng người dùng chính là người mà họ nói, và người dùng hiện đang thi hành những chức năng trong một hệ thống chính là người đã được ủ
Trang 1Trường Đại Học Khoa Học Tự Nhiên Tp HCM - Khoa Công Nghệ Thông Tin
Cao học Hệ thống thông tin khóa 17
Trang 3Khái niệm chung
Chứng thực (authentication):
Trong an ninh máy tính: là một quy trình nhằm cố
gắng xác minh nhận dạng số (digital identity) của
phần truyền gửi thông tin (sender) trong liên lạc.
Trong mạng lưới tín nhiệm: là một cách để đảm bảo rằng người dùng chính là người mà họ nói, và người dùng hiện đang thi hành những chức năng trong một
hệ thống chính là người đã được ủy quyền để làm những việc đó
Trang 4Khái niệm chung
Authentication vs Authorization
Authentication (chứng thực): quy trình dùng để xác
minh sự nhận dạng của một người dùng
Authorization (ủy quyền): quy trình nhằm xác minh
rằng một người dùng biết trước, có quyền lực để thao tác một quá trình hoạt động nào đó hay không
Authentication phải được thực hiện trước
Authorization
4
Trang 7Lịch sử phát triển
Được học viện Massachusetts phát triển với mục đích bảo vệ các dịch vụ mạng cung cấp bởi dự án Athena.
Được phát triển dưới nhiều phiên bản, trong đó các phiên bản từ 1 đến 3 chỉ dùng trong nội bộ MIT
Steve Miller và Clifford Neuman đã xuất bản phiên bản 4 ra công chúng vào cuối thập niên 1980
Phiên bản 5 do John Kohl và Clifford Neuman thiết
kế vào năm 1993 với mục đích sửa các lỗi của
Trang 8Khái niệm
Kerberos là một giao thức mật mã dùng để xác thực trong các mạng máy tính hoạt động trên
những đường truyền không an toàn
Giao thức được xây dựng dựa trên mã hóa khóa đối xứng và cần đến một bên thứ ba mà cả hai phía tham gia giao dịch tin tưởng
Mục tiêu: nhằm vào mô hình client-server trên
môi trường mạng phân tán và đảm bảo nhận
thực cho cả hai chiều
8
Trang 9Khái niệm
Tại sao?
3 nguy cơ khi sử dụng dịch vụ trên server:
Người dùng giả dạng thành người khác
Người dùng thay đổi địa chỉ của máy làm việc
Người dùng nghe lén sự trao đổi và sử dụng replay attack
Trang 11Nguyên tắc hoạt động
“Máy chủ chứng thực”
(Authentication
KDC
“Máy chủ cấp khoá”
(Ticket Granting
Sử dụng một bên thứ ba tham gia vào quá trình nhận thực gọi là "trung tâm phân phối khóa"
(key distribution center - KDC)
Trang 13 A: Alice, S: máy chủ, B: Bob
T, L: các chỉ thị về tính chất mới của gói tin
Trang 15Hoạt động
Pha 1
Bước 1: Người sử dụng nhập tên và mật khẩu tại client
Bước 2: Client thực hiện hàm băm một chiều trên mật
khẩu nhận được Key client
Bước 3: Client gửi một gói tin (không mã hóa) tới AS để yêu cầu dịch vụ "người dùng XYZ muốn sử dụng dịch vụ"
Không bao gồm Keyclient và mật khẩu
Trang 16Hoạt động
Pha 1
Bước 4: AS kiểm tra người yêu cầu có nằm trong CSDL
không Nếu có thì AS gửi 2 gói tin sau tới client:
• Gói tin A: [Key (client, TGS) ] Key client
• Gói tin B: Ticket Granting Ticket: [clientID, client address, validity, Key
(client, TGS) ] Key TGS
Bước 5: Client giải mã gói tin A Key (client, TGS)
Tại thời điểm này, người dùng có thể nhận thực mình với TGS
16
Trang 17• Gói tin D: Authenticator: [clientID, timestamp] Key (client, TGS)
Bước 7: TGS giải mã D rồi gửi 2 gói tin sau tới client:
• Gói tin E: Ticket (client,service) : service, [clientID, client address, validity, Key
(client, service) ] Key service
• Gói tin F: [Key (client, service) ] Key (client,TGS)
Trang 18Hoạt động
Pha 3
Bước 8: Khi nhận được 2 gói tin E và F, client đã có đủ
thông tin để nhận thực với SS Client gửi tới SS 2 gói tin:
• Gói tin G: là gói E: Ticket (client,service) thu được từ bước trước
• Gói tin H: Authenticator: [clientID, timestamp] Key (client, service)
Bước 9: SS giải mã "Vé" bằng Key service Key (client, service) và gửi gói tin sau tới client để xác nhận định danh của mình và khẳng định sự đồng ý cung cấp dịch vụ:
• Gói tin I: [timestamp + 1] Key (client, service)
18
Trang 19Hoạt động
Pha 3
Bước 10: Client giải mã gói tin xác nhận và kiểm tra thời
gian có được cập nhật chính xác Nếu đúng thì client có thể tin tưởng vào máy chủ SS và bắt đầu gửi yêu cầu sử dụng dịch vụ
Bước 11: Máy chủ SS cung cấp dịch vụ cho client
Trang 21Đánh giá
Ưu điểm:
Tăng cường bảo mật
• Bảo đảm tính xác thực
• Bảo đảm tính riêng tư và toàn vẹn
Hỗ trợ cơ chế ủy nhiệm
Trang 22Đánh giá
Khuyết điểm:
Khó tích hợp với các hệ thống cũ
Tấn công ở desktop
Điểm yếu trong mạng
Nếu máy chủ trung tâm ngừng hoạt động thì mọi hoạt động sẽ ngừng lại
Giao thức đòi hỏi đồng hồ của tất cả những máy tính liên quan phải được đồng bộ
22
Trang 25Giới thiệu
Trust Negotiation là một phương pháp tiếp cận
theo cách từng bước xây dựng lòng tin (trust) giữa người truy cập với hệ thống thông qua việc trao đổi tín khoản điện tử (digital credentials)
Hạn chế của hệ thống truyền thống
Tại sao cần có Trust ?
Điểm khác biệt so với hệ thống khác ?
Một vài thuộc tính của Trust
Trang 26Hạn chế của hệ thống truyền thống
Phía client không thể biết được server có đáng tin cậy hay không
Việc xác nhận thông tin đăng nhập/đăng ký
được thực hiện ở phía client
Bắt buộc phải nhập nhiều thông tin không cần thiết
Thông tin đăng ký/đăng nhập bị lưu lại
Không phù hợp cho Semantic Web
26
Trang 27Tại sao cần có Trust ?
Trong các ứng dụng trên web, thông thường, người sử dụng phải nhập username và password để đăng nhập
vào hệ thống
Vấn đề đặt ra:
Trang 28Điểm khác biệt so với hệ thống khác ?
TRUYỀN THỐNG
Không thể có lòng tin giữa 2
đối tượng hoàn toàn xa lạ
Bắt buộc phải tin tưởng tuyệt
Nếu một trong hai là giả thì sẽ phát hiện ra ngay.
28
Trang 29Một vài thuộc tính của Trust ?
“Trust” thường có thể nhận thấy qua cách thể hiện hành động
Ví dụ: A có thể cho B mượn xe nhưng không dám ngồi lên xe do
B lái.
“Trust” là thước đo của niềm tin
Ví dụ: trong cùng 1 ngữ cảnh, A có thể tin B nhiều hơn là tin C
“Trust” có thể chỉ là 1 phía
Ví dụ: A tin B nhưng B chưa chắc đã tin A
“Trust” tồn tại theo từng thời điểm
Trang 30Giải quyết yêu cầu
30
Trang 32 Tính song song (Bilateral): Người dùng có thể yêu cầu chứng nhận từ hệ
thống trước khi công bố các thông tin nhạy cảm của mình (điều này đảm bảo tính
công bằng cho cả hai bên: tính riêng tư của người dùng và tính an toàn đối với hệ thống)
Tính tự động (Automated): Việc trao đổi thông tin cần thiết giữa người dùng và
hệ thống là hoàn toàn tự động
32
Trang 34Các vấn đề đặt ra đối với Trust
Trang 36Trust-X đơn giản
36
Trang 37Trust-X đơn giản
Ví dụ: B Yc xem bệnh án của X A
B có là bác sỹ khoa tâm thần của bệnh viện?
Trang 38 Những vấn đề bảo mật phát sinh trong mô hình Trust-X đơn giản:
Không có khả năng kiểm soát và bảo vệ thông tin cá nhân trong quá trình trao đổi
Trong quá trình trao đổi điều khoản,một số thông tin nhạy cảm có thể bị phát hiện
Trust-X đơn giản
38
Trang 39TRUST-X CẢI TiẾN
Trang 40 Đưa ra những giải pháp nhằm bảo mật tính riêng tư
Hỗ trợ một định dạng tài liệu chứng thực mới :
Công bố những thông tin thật cần thiết
Công bố thông tin từng bước một
quá trình trao đổi điều khoản
Giới thiệu Trust-X cải tiến
40
Trang 41TRUST-X CẢI TiẾN
Trang 42 Chia miền thông tin tài liệu chứng thực
< \ c i t i z e n s h i p >
CREDENTIAL HEADER IS USED AS A CREDENTIAL PROOF:
particular state of a privacy enhanced credential, where the header is plain and the content is hidden, while the signature over the whole document can be verified.
Nâng cao tính bảo mật Trust-X cải tiến
42
Trang 43Nâng cao tính bảo mật Trust-X cải tiến
Sử dụng các biểu thức điều kiện
P() loại tài liệu chứng thực
Trang 44Nâng cao tính bảo mật Trust-X cải tiến
44
Khái niệm ngữ cảnh trong việc công bố chính sách
• Chính sách nào được công bố đầu tiên?
• Các chính sách trong quá trình thương lượng?
ngữ cảnh trong việc công bố chính sách
44
Trang 45TRUST-X CẢI TiẾN
Trang 46Chính sách bảo mật
Giai đoạn mở đầu
Giai đoạn trao đổi điều khoản
Giai đoạn trao đổi tài liệu chứng thực điện tử
Cung cấp dịch vụ
46
Trang 47Chính sách bảo mật
Trang 48TRUST-X CẢI TiẾN
Trang 49Chiến lược trong mô hình Trust-X
Hiện tại,người ta chia ra 5 mục đích chiến lược khác nhau
tượng trưng cho 5 cách tiếp cận với mô hình trust negotiation :
Trang 50TRUST-X CẢI TiẾN
Trang 51Kiến trúc hệ thống
Trang 52Kiến trúc hệ thống
52
Trang 53TRUST-X CẢI TiẾN
Trang 54 Trust-X là một hệ thống hiệu quả và bảo mật tốt trong giao dịch tin cậy (trust negotiation)
Chọn lựa ra những thuộc tính/thông tin thật sự cần
thiết để trao đổi
Có hỗ trợ những chính sách bảo mật thông tin nhạy cảm của các điều khoản và tài liệu chứng thực
Trust-X là hệ thống trust negotiation đầu tiên được
triển khai dựa trên nền tảng P3P
Đánh giá
54
Trang 5656