Nội dungPhương pháp định danh 2 Giới thiệu về định danh và xác thực 1 Giới thiệu về định danh và xác thực 1 Phương pháp xác thực 3 Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học và Kỹ Thu
Trang 1Chương 3:
Định danh và Xác thực
(Identification and Authentication)
Khoa Khoa học và Kỹ thuật Máy tính
Đại học Bách Khoa Tp.HCM
Trang 2Nội dung
Phương pháp định danh 2
Giới thiệu về định danh và xác thực
1 Giới thiệu về định danh và xác thực
1
Phương pháp xác thực 3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 3Giới thiệu về định danh và xác thực
n Các bước trong điều khiển truy cập
Định danh (Identification):
Người dùng cung cấp danh định (identity)
Xác thực (Authentication):
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Người dùng chứng minh danh định đó là đúng
Ủy quyền (Authorization):
Xác định quyền mà người dùng có
Trang 4Giới thiệu về định danh và xác thực
n Các bước trong điều khiển truy cập
Định danh (Identification):
Người dùng cung cấp danh định (identity)
Xác thực (Authentication):
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Người dùng chứng minh danh định đó là đúng
Ủy quyền (Authorization):
Xác định quyền mà người dùng có
Trang 5Định danh
n Người dùng cung cấp danh định của mình cho hệ thống
n Mục đích:
n Tìm kiếm sự tồn tại và quyền hạn cho người dùng
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 6Xác thực
n Người dùng cung cấp bằng chứng là danh định đó là đúng và phù hợp với mình.
n Mục đích:
n Chứng minh danh định là hợp lệ và phù hợp với người dùng.
n Quyết định có cho phép người dùng truy cập vào tài nguyên
của hệ thống hay không
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 7Nội dung
Giới thiệu về định danh và xác thực 1
Phương pháp định danh 2
Điều khiển dữ liệu với SQL 3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 8Phương pháp định danh
n Có 2 phương pháp:
n người dùng tự nhập thông tin về danh định
n Sử dụng danh định số hóa:
n Danh định sinh trắc học (biometric identity)
Danh định số (digital identity)
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 9Phương pháp định danh
n Phương pháp 1: người dùng tự nhập thông tin về danh
định
n Đây là phương pháp phổ biến nhất hiện nay
n Ví dụ: username, số tài khoản
n Bước đầu tiên khi một hacker muốn xâm nhập vào một hệ
thống là thu thập danh sách các người dùng hợp lệ của hệ
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 10Phương pháp định danh
n Phương pháp 2: Sử dụng danh định số hóa
n Danh định sinh trắc học (Biometric identity)
n Nhận dạng khuôn mặt (Facial recognition)
n Quét tròng mắt (iris scanners)
n Hình học bàn tay (hand geometry)
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 11Phương pháp định danh
n Phương pháp 2: Sử dụng danh định số hóa
n Danh định máy tính (Computer identity)
n Tên máy tính
n Địa chỉ MAC
n Địa chỉ IP
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin Chương 3: Định danh và Xác thực
11
Trang 12Phương pháp định danh
n Phương pháp 2: Sử dụng danh định số hóa
n Danh định số (Digital identity)
n Chứng nhận số (Digital certificate)
n Thẻ thông minh (Smart card)
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin Chương 3: Định danh và Xác thực
12
Trang 13Nội dung
Phương pháp định danh 2
Giới thiệu về định danh và xác thực 1
Phương pháp xác thực 3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 14Phương pháp xác thực
n Các phương pháp xác thực:
n Những gì bạn biết (Something you know)
n Những gì bạn có (Something you have)
n Những gì là chính bạn (Something you are)
n Một phương pháp xác thực tốt là phương pháp mà không dễ
bị đoán hoặc bị làm giả.
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 15Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 16Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin Chương 3: Định danh và Xác thực
16
Cần cân bằng giữa: hacker khó đoán và người dùng có thể nhớ
n Thu thập thông tin bất hợp pháp (Social engineering)
n Các phần mềm gián điệp (spyware), keystroke logging
Trang 17Những gì bạn có
n Thẻ thông minh (smart card): có bộ nhớ nhỏ và có khả năng thực hiện một vài tính toán
n Trong thẻ có lưu thông tin về người dùng và cả password.
n người dùng có thể chọn những password phức tạp và thay đổi khi cần
Địa chỉ MAC, địa chỉ IP
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 18Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 19Những gì là chính bạn
n Các lỗi xảy ra khi xác thực bằng sinh trắc học
n False accept rate (FAR)
Alice
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 20Những gì là chính bạn
n Các lỗi xảy ra khi xác thực bằng sinh trắc học
n False Reject Rate (FRR)
Not Alice
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 21Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 22n Password < Smartcard < Biometrics
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 23Nội dung
Phương pháp định danh 2
Giới thiệu về định danh và xác thực 1
Phương pháp xác thực 3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 24Giao thức xác thực
n Giao thức xác thực đơn giản
n Giao thức xác thực challenge-response
n Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực dùng khóa công khai
n Giao thức xác thực KERBEROS
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 25Giới thiệu
n Giả sử là Alice muốn chứng minh với Bob là “Tôi chính là
Alice”
n Alice cũng cần biết người còn lại có đúng là Bob không.
n Malice là người xấu có ý muốn phá giao thức xác thực
“Tôi là Alice”
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 26Giao thức xác thực đơn giản
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 27Giao thức xác thực đơn giản
n Password để ở dạng văn bản rõ, Malice có thể quan sát được.
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 28Giao thức xác thực đơn giản với hàm hash
n P A : password của Alice
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 29Giao thức xác thực đơn giản với hàm hash
n Tấn công bằng cách lặp lại thông điệp
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 30Giao thức xác thực
n Giao thức xác thực đơn giản
n Giao thức xác thực challenge-response
n Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực dùng khóa công khai
n Giao thức xác thực KERBEROS
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 31Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
n Khuyết điểm: Bob phải biết trước password của Alice
Trang 32Giao thức xác thực
n Giao thức xác thực đơn giản
n Giao thức xác thực challenge-response
n Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực dùng khóa công khai
n Giao thức xác thực KERBEROS
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 33Giao thức xác thực dùng khóa đối xứng
n C: ciphertext
n M: plaintext
n K A : khóa của Alice
n C = {M} K
n K AB : Khoá chung giữa Alice và Bob
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 34Giao thức xác thực dùng khóa đối xứng
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
n Chỉ có Bob xác thực được Alice
n Alice không biết có đúng là Bob không
3: {N} KAB
Trang 35Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực lẫn nhau (mutual) dùng khóa đối xứng
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 36Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực lẫn nhau cải tiến
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 37Giao thức xác thực dùng khóa đối xứng
n Tấn công giao thức xác thực lẫn nhau cải tiến
1.1.: “Tôi là Alice”, N A 1.2: N B , {N A } KAB
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
1.3.: {N B } KAB
Trang 38Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực lẫn nhau cải tiến khác
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 39Giao thức xác thực
n Giao thức xác thực đơn giản
n Giao thức xác thực challenge-response
n Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực dùng khóa công khai
n Giao thức xác thực KERBEROS
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 40Giao thức xác thực dùng khóa công khai
n C: ciphertext
n M: plaintext
n K A : cặp khóa bí mật và công khai của Alice
n C ={M} KA : mã hóa bằng khóa công khai của Alice
n M = [C] KA : giải mã bằng khóa bí mật của Alice
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin Chương 3: Định danh và Xác thực
40
n M = [C] KA : giải mã bằng khóa bí mật của Alice
n S = [M] KA : ký lên M bằng khóa bí mật của Alice
n [{M} KA ] KA = M
n {[M] KA } KA = M
Trang 41Giao thức xác thực dùng khóa đối xứng
n Dùng mã hóa công khai
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 42Giao thức xác thực dùng khóa đối xứng
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 43Giao thức xác thực
n Giao thức xác thực đơn giản
n Giao thức xác thực challenge-response
n Giao thức xác thực dùng khóa đối xứng
n Giao thức xác thực dùng khóa công khai
n Giao thức xác thực KERBEROS
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 44Dựa vào thành phần thứ 3 tin cậy là Trung tâm phân phối khóa
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
n Giao thức dùng khóa công khai: 2N khóa
n Giao thức dùng khóa đối xứng: N 2 khóa
n Giao thức Kerberos: N khóa
Trang 45Giao thức xác thực KERBEROS
n Trung tâm phân phối khóa KDC
n KDC có một siêu khóa K KDC , chỉ có KDC mới biết khóa này
n KDC cung cấp: Ticket-Granting Ticket (TGT)
n TGT chứa khóa phiên, user ID và thời hạn
n TGT được mã hóa bằng K KDC
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 46Giao thức xác thực KERBEROS
n Quá trình Alice login vào hệ thống sử dụng KERBEROS
Password
Alice yêu cầu TGT
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 473 4
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin Chương 3: Định danh và Xác thực
47
1 Alice gửi cho KDC: Alice, Bob, TGT A , {timestamp} SA
2 KDC gửi cho Alice: {Bob, K AB , ticket-to-Bob} SA
ticket-to-Bob: {Alice, K AB } KB
3 Alice gửi cho Bob: ticket-to-Bob, {timestamp} KAB
4 Bob gửi cho Alice: {timestamp + 1} KAB
4
Trang 48Giao thức xác thực KERBEROS
n Một thao tác dư thừa trong KERBEROS:
n KDC gửi cho Alice: {S A , TGT A } KA
Trong khi TGT A = {Alice, S A } KKDC
à KDC gửi cho Alice: {S A } KA , TGT A
à Tiết kiệm chi phí
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 49Nội dung
Phương pháp định danh 2
Giới thiệu về định danh và xác thực 1
Phương pháp xác thực 3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
Trang 50Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin Chương 3: Định danh và Xác thực
50