50
Chương 3: Định danh và Xác thực (Identification and Authentication) Khoa Khoa học Kỹ thuật Máy tính Đại học Bách Khoa Tp.HCM

Định danh và Xác thực - · PDF fileChươ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

  • Upload
    haanh

  • View
    214

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Định danh và Xác thực - · PDF fileChươ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

Chươ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

Page 2: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

2

Nộ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

Giao thức xác thực 4

Page 3: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

3

Giới thiệu về định danh và xác thực

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):

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ó

Page 4: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

4

Giới thiệu về định danh và xác thực

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):

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ó

Page 5: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

5

Định danh

Người dùng cung cấp danh định của mình cho hệ thống

Mục đích:

Tìm kiếm sự tồn tại và quyền hạn cho người dùng

Page 6: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

6

Xác thực

Người dùng cung cấp bằng chứng là danh định đó là đúng và

phù hợp với mình.

Mục đích:

Chứng minh danh định là hợp lệ và phù hợp với người dùng.

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

Page 7: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

7

Nộ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

DAC và điều khiển dòng thông tin 4

Page 8: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

8

Phương pháp định danh

Có 2 phương pháp:

người dùng tự nhập thông tin về danh định

Sử dụng danh định số hóa:

Danh định sinh trắc học (biometric identity)

Danh định máy tính (computer identity)

Danh định số (digital identity)

Page 9: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

9

Phương pháp định danh

Phương pháp 1: người dùng tự nhập thông tin về danh

định

Đây là phương pháp phổ biến nhất hiện nay

Ví dụ: username, số tài khoả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ệ

thống.

Page 10: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

10

Phương pháp định danh

Phương pháp 2: Sử dụng danh định số hóa

Danh định sinh trắc (Biometric identity)

Nhận dạng khuôn mặt (Facial recognition)

Quét tròng mắt (iris scanners)

Hình học bàn tay (hand geometry)

Nhận dạng vân tay (fingerprint)

Page 11: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

11

Phương pháp định danh

Phương pháp 2: Sử dụng danh định số hóa

Danh định máy tính (Computer identity)

Tên máy tính

Địa chỉ MAC

Địa chỉ IP

Page 12: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

12

Phương pháp định danh

Phương pháp 2: Sử dụng danh định số hóa

Danh định số (Digital identity)

Chứng nhận số (Digital certificate)

Thẻ thông minh (Smart card)

Page 13: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

13

Nộ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

Giao thức xác thực 4

Page 14: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

14

Phương pháp xác thực

Các phương pháp xác thực:

Những gì bạn biết (Something you know)

Những gì bạn có (Something you have)

Những gì là chính bạn (Something you are)

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ả.

Page 15: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

15

Những gì bạn biết

Ví dụ:

Password

Số PIN (Personal Identification Number)

Ưu điểm

Tiện lợi

Chi phí thấp

Khuyết điểm

Mức độ bảo mật phụ thuộc vào độ phức tạp của password

Page 16: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

16

Những gì bạn biết

Những vấn đề của password:

Password yếu: dễ đoán (tên người dùng, ngày sinh nhật ,…)

Xây dựng chính sách password:

Độ dài

Có các ký tự đặc biệt (non-letter), có ký viết hoa, viết thường

Khác với username, các từ dễ đoán

Thay đổi password định kỳ

Cần cân bằng giữa: hacker khó đoán và người dùng có thể nhớ

Thu thập thông tin bất hợp pháp (Social engineering)

Các phần mềm gián điệp (spyware), keystroke logging

Page 17: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

17

Những gì bạn có

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

Trong thẻ có lưu thông tin về người dùng và cả password.

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

17

Page 18: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

18

Những gì là chính bạn

Sử dụng các yếu tố sinh trắc học để xác thực.

Nhận dạng khuôn mặt

Quét tròng mắt

Hình học bàn tay

Nhận dạng vân tay

Xác thực bằng sinh trắc học gồm 2 bước

Đăng ký mẫu

Nhận dạng

Page 19: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

19

Những gì là chính bạn

Các lỗi xảy ra khi xác thực bằng sinh trắc học

False accept rate (FAR)

Alice

Bob

Page 20: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

20

Những gì là chính bạn

Các lỗi xảy ra khi xác thực bằng sinh trắc học

False accept rate (FAR)

False Reject Rate (FRR)

Not

Alice

Alice

Page 21: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

21

Những gì là chính bạn

Tỷ lệ lỗi sinh trắc học

FAR = FRR

Vân tay (5%)

Hình học bàn tay (0.1%)

Tròng mắt (0.001%)

Ưu điểm:

Khó tấn công

Khuyết điểm:

Tốn kém: lưu trữ, xử lý

Page 22: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

22

Phương pháp xác thực

Phương pháp xác thực tốt thì tốn kém

Xét về khả năng bị tấn công:

Biometrics < Smartcard < Password

Xét về chi phí:

Password < Smartcard < Biometrics

Có thể kế hợp các phương pháp xác thực với nhau

Page 23: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

23

Nội dung

Phương pháp định danh 2

Giới thiệu về định danh và xác thực 1

Giao thức xác thực 4

Phương pháp xác thực 3

Page 24: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

24

Giao thức xác thực

Giao thức xác thực đơn giản

Giao thức xác thực challenge-response

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực dùng khóa công khai

Giao thức xác thực KERBEROS

Page 25: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

25

Giới thiệu

Giả sử là Alice muốn chứng minh với Bob là “Tôi chính là

Alice”

Alice cũng cần biết người còn lại có đúng là Bob không.

Malice là người xấu có ý muốn phá giao thức xác thực

Alice Bob

Malice

“Tôi là Alice”

Hãy chứng minh

Page 26: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

26

Giao thức xác thực đơn giản

Alice

Bob

1: “Tôi là Alice”

2: “Hãy chứng minh”

3: “My password is frank”

Page 27: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

27

Giao thức xác thực đơn giản

Password để ở dạng văn bản rõ, Malice có thể quan sát được.

Bob

1: “Tôi là Alice”

2: “Hãy chứng minh”

3: “My password is frank”

Malice

Page 28: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

28

Giao thức xác thực đơn giản với hàm hash

PA: password của Alice

h(): hàm hash Alice

Bob

1: “Tôi là Alice”

2: “Hãy chứng minh”

3: h(PA)

Page 29: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

29

Giao thức xác thực đơn giản với hàm hash

Tấn công bằng cách lặp lại thông điệp

Bob

1: “Tôi là Alice”

2: “Hãy chứng minh”

3: h(PA)

Malice

Page 30: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

30

Giao thức xác thực

Giao thức xác thực đơn giản

Giao thức xác thực challenge-response

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực dùng khóa công khai

Giao thức xác thực KERBEROS

Page 31: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

31

Giao thức xác thực challenge-response

N: số nonce (number used once) Alice

Bob

1: “Tôi là Alice”

2: N

3: h(PA, N)

Khuyết điểm: Bob phải biết trước password của Alice

Page 32: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

32

Giao thức xác thực

Giao thức xác thực đơn giản

Giao thức xác thực challenge-response

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực dùng khóa công khai

Giao thức xác thực KERBEROS

Page 33: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

33

Giao thức xác thực dùng khóa đối xứng

C: ciphertext

M: plaintext

KA: khóa của Alice

C = {M}K

KAB : Khoá chung giữa Alice và Bob

Page 34: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

34

Giao thức xác thực dùng khóa đối xứng

Khuyết điểm:

Chỉ có Bob xác thực được Alice

Alice không biết có đúng là Bob không

Alice

Bob

1: “Tôi là Alice”

2: N

3: {N}KAB

Page 35: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

35

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực lẫn nhau (mutual) dùng khóa đối xứng

Thông điệp ở bước 3 lặp lại từ bước 2: không thể xác thực

người gửi

Alice

Bob

1: “Tôi là Alice”

2: {N}KAB

3: {N}KAB

Page 36: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

36

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực lẫn nhau cải tiến

Alice

Bob

1: “Tôi là Alice”, NA

2: NB , {NA}KAB

3: {NB}KAB

Page 37: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

37

Giao thức xác thực dùng khóa đối xứng

Tấn công giao thức xác thực lẫn nhau cải tiến

Bob

1.1.: “Tôi là Alice”, NA

1.2: NB , {NA}KAB

2.1: “Tôi là Alice”, NB

Malice

2.2: NC , {NB}KAB

1.3.: {NB}KAB

Page 38: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

38

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực lẫn nhau cải tiến khác

Alice

Bob

1: “Tôi là Alice”, NA

2: NB , {Bob, NA}KAB

3: {Alice, NB}KAB

Page 39: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

39

Giao thức xác thực

Giao thức xác thực đơn giản

Giao thức xác thực challenge-response

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực dùng khóa công khai

Giao thức xác thực KERBEROS

Page 40: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

40

Giao thức xác thực dùng khóa công khai

C: ciphertext

M: plaintext

KA: cặp khóa bí mật và công khai của Alice

C ={M}KA: mã hóa bằng khóa công khai của Alice

M = [C]KA: giải mã bằng khóa bí mật của Alice

S = [M]KA: ký lên M bằng khóa bí mật của Alice

[{M}KA]KA = M

{[M]KA}KA = M

Page 41: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

41

Giao thức xác thực dùng khóa đối xứng

Dùng mã hóa công khai

Alice

Bob

1: “Tôi là Alice”

2: {NA}KA

3: NA

Page 42: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

42

Giao thức xác thực dùng khóa đối xứng

Dùng chữ ký số

Alice

Bob

1: “Tôi là Alice”

2: NA

3: [NA]KA

Page 43: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

43

Giao thức xác thực

Giao thức xác thực đơn giản

Giao thức xác thực challenge-response

Giao thức xác thực dùng khóa đối xứng

Giao thức xác thực dùng khóa công khai

Giao thức xác thực KERBEROS

Page 44: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

44

Giao thức xác thực KERBEROS

Là giao thức được sử dụng trong thực tế

KERBEROS

Dùng mã hóa đối xứng

Được thiết kế để dùng trong những hệ thống nhỏ như là mạng

nội bộ

Dựa vào thành phần thứ 3 tin cậy là Trung tâm phân phối khóa

(Key Distribution Center - KDC)

Với N người dùng

Giao thức dùng khóa công khai: 2N khóa

Giao thức dùng khóa đối xứng: N2 khóa

Giao thức Kerberos: N khóa

Page 45: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

45

Giao thức xác thực KERBEROS

Trung tâm phân phối khóa KDC

KDC có một siêu khóa KKDC, chỉ có KDC mới biết khóa này

KDC cung cấp: Ticket-Granting Ticket (TGT)

TGT chứa: khóa phiên, user ID và thời hạn

TGT được mã hóa bằng KKDC

Chỉ có KDC mới đọc được TGT

KDC

KKDC

Alice

KA

Malice

KM

Bob

KB

Page 46: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

46

Giao thức xác thực KERBEROS

Quá trình Alice login vào hệ thống sử dụng KERBEROS

KA: khóa chung giữa Alice và KDC, KA = h(password)

SA: khóa phiên

TGTA = {Alice, SA}KKDC

Alice KDC

Password

Alice yêu cầu TGT

{SA, TGTA}KA

Page 47: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

47

Giao thức xác thực KERBEROS

1. Alice gửi cho KDC: Alice, Bob, TGTA, {timestamp}SA

2. KDC gửi cho Alice: {Bob, KAB, ticket-to-Bob}SA

ticket-to-Bob: {Alice, KAB}KB

3. Alice gửi cho Bob: ticket-to-Bob, {timestamp}KAB

4. Bob gửi cho Alice: {timestamp + 1}KAB

Alice

KD

C

Bob

1

2

3

4

Page 48: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

48

Giao thức xác thực KERBEROS

Một thao tác dư thừa trong KERBEROS:

KDC gửi cho Alice: {SA, TGTA}KA

Trong khi TGTA = {Alice, SA}KKDC

KDC gửi cho Alice: {SA}KA, TGTA

Tiết kiệm chi phí

KDC dùng KKDC để giải mã tất cả các TGT

không cần biết ai gửi yêu cầu

Page 49: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

49

Nộ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

Giao thức xác thực 4

Page 50: Định danh và Xác thực - · PDF fileChươ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

Trường Đại Học Bách Khoa Tp.HCM

Khoa Khoa Học và Kỹ Thuật Máy Tính

© 2013

Bảo mật hệ thống thông tin

Chương 3: Định danh và Xác thực

50