Công nghệ bảo mật và chữ ký điện tử- chương 3
Bài 3. Các ứng dụng xác thực
3.1. Mục tiêu
Hỗ trợ các dịch vụ xác thực và chữ ký số ở mức ứng dụng
Cung cấp các mô hình để xây dựng các ứng dụng thực tế
3.2. Phân loại
Phân làm 2 loại chính
Dựa trên mã hóa đối xứng
Mô hình Kerberos
Giao thức Needham-Schroeder
Dựa trên khóa công khai được chứng thực
Mô hình X.509
3.3. Mô hình Kerberos
Hệ thống dịch vụ xác thực phát triển bởi MIT (Học viện công nghệ Massachusets)
Giao thức đã đượ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.
3.3. Mô hình Kerberos
Dùng để xác thực các máy tính trước khi cho phép sử dụng dịch vụ
Nhằm đối phó với các hiểm họa sau
Người dùng giả danh là người khác
Người dùng thay đổi địa chỉ mạng của client
Người dùng xem trộm thông tin trao đổi và thực hiện kiểu tấn công lặp lại
3.3. Mô hình Kerberos
Được sử dụng mặc định trong các hệ điều hành Windows (2000, XP, 2003), Mac OS
Một số phần mềm sử dụng Kerberos:
OpenSSH
Apache
3.3.1. Mô hình tổng quan của Kerberos
Giao thức xây dựng trên hệ mật mã đối xứng
Xác thực qua một bên thứ ba được tin tưởng, còn gọi là "trung tâm phân phối khóa"
Máy chủ xác thực (authentication server - AS)
Máy chủ cung cấp thẻ (ticket granting server - TGS)
3.3.1. Mô hình tổng quan của Kerberos
Dịch vụ được cung cấp qua các server dịch vụ phân tán
Giải phóng chức năng xác thực khỏi các server dịch vụ và client
3.3.1. Mô hình tổng quan của Kerberos
Giao thức xác thực đơn giản
(1) C ® AS : IDC║ PC║ IDV
(2) AS ® C : Thẻ
(3) C ® V : IDC║ Thẻ
Thẻ = EKV[IDC║ ADC║ IDV]
Hạn chế
Mật khẩu truyền từ C đến AS không được bảo mật
Nếu thẻ chỉ sử dụng được một lần thì phải cấp thẻ mới cho mỗi lần truy nhập cùng một dịch vụ
Nếu thẻ sử dụng được nhiều lần thì có thể bị lấy cắp để sử dụng trước khi hết hạn
Cần thẻ mới cho mỗi dịch vụ khác nhau
3.3.1. Mô hình tổng quan của Kerberos
Kerberos đưa ra giao thức xác thực an toàn hơn, bằng cách sử dụng 2 loại máy chủ:
Máy chủ xác thực
Máy chủ cung cấp thẻ
3.3.1. Mô hình tổng quan của Kerberos
Máy chủ xác thực:
Lưu danh sách và khóa bí mật của người dùng
Xác thực người dùng trước khi cho phép sử dụng máy chủ cấp thẻ
3.3.1. Mô hình tổng quan của Kerberos
Máy chủ cung cấp thẻ
Cung cấp cho người sử dụng các thẻ dịch vụ
3.3.1. Mô hình tổng quan của Kerberos
Giao thức xác thực trong Kerberos 4
(a) Trao đổi với dịch vụ xác thực : để có thẻ xác thực
(1) C ® AS : IDC║ IDtgs ║ TS1
(2) AS ® C : EKC[KC,tgs║ IDtgs ║ TS2 ║ Hạn2║ Thẻtgs]
Thẻtgs = EKtgs[KC,tgs║ IDC ║ ADC ║ IDtgs ║ TS2 ║ Hạn2]
(b) Trao đổi với dịch vụ cấp thẻ : để có thẻ dịch vụ
(3) C ® TGS : IDV║ Thẻtgs║ DấuC
(4) TGS ® C : EKC,tgs[KC,V║ IDV ║ TS4 ║ ThẻV]
ThẻV = EKV[KC,V║ IDC ║ ADC ║ IDV ║ TS4 ║ Hạn4]
DấuC = EKC,tgs[IDC║ ADC ║ TS3]
(c) Trao đổi xác thực client/server : để có dịch vụ
(5) C ® V : ThẻV║ DấuC
(6) V ® C : EKC,V[TS5 + 1]
DấuC = EKC,V[IDC║ ADC ║ TS5]
Ký hiệu
C : Client
AS : Server xác thực
V : Server dịch vụ
IDC : Danh tính người dùng trên C
IDV : Danh tính của V
PC : Mật khẩu của người dùng trên C
ADC : Địa chỉ mạng của C
KV : Khóa bí mật chia sẻ bởi AS và V
║ : Phép ghép
TGS : Server cấp thẻ
TS : Nhãn thời gian
3.3.2. Phân hệ Kerberos
Mô hình Kerberos có thể được cài đặt ở nhiều vùng riêng biệt có liên hệ với nhau. Mỗi vùng được gọi là một phân hệ
Một phân hệ Kerberos bao gồm
Một server Kerberos chứa trong CSDL danh tính và mật khẩu băm của các thành viên
Một số người dùng đăng ký làm thành viên
Một số server dịch vụ, mỗi server có một khóa bí mật riêng chỉ chia sẻ với server Kerberos
3.3.2. Phân hệ Kerberos
Hai phân hệ có thể tương tác với nhau nếu 2 server chia sẻ 1 khóa bí mật và đăng ký với nhau
Điều kiện là phải tin tưởng lẫn nhau
3.4. Mô hình X.509
Nằm trong loạt khuyến nghị X.500 của ITU-T nhằm chuẩn hóa dịch vụ thư mục khóa công khai
Công bố lần đầu tiên vào năm 1988
Sử dụng mật mã khóa công khai và chữ ký số
Không chuẩn hóa giải thuật nhưng khuyến nghị RSA
3.4. Mô hình X.509
Định ra một cơ cấu cho dịch vụ xác thực
Danh bạ chứa các chứng thực khóa công khai
Mỗi chứng thực bao gồm khóa công khai của người dùng ký bởi một bên chuyên trách chứng thực đáng tin
Đưa ra các giao thức xác thực
3.4.1. Khuôn dạng chứng thực X.509
3.4.2. Đặc điểm X.509
Xác minh chứng thực bằng khóa công khai của CA
Chỉ CA mới có thể thay đổi chứng thực
Chứng thực có thể đặt trong một thư mục công khai
3.4.2. Đặc điểm X.509
Sử dụng cấu trúc phân cấp CA
Người dùng được chứng thực bởi CA đã đăng ký
Mỗi CA có hai loại chứng thực
Chứng thực thuận : Chứng thực CA hiện tại bởi CA cấp trên
Chứng thực nghịch : Chứng thực CA cấp trên bởi CA hiện tại
Cấu trúc phân cấp CA cho phép người dùng xác minh chứng thực bởi bất kỳ CA nào
3.4.2. Đặc điểm X.509
3.4.3. Thu hồi chứng thực
Mỗi chứng thực có một thời hạn hợp lệ
Có thể cần thu hồi chứng thực trước khi hết hạn
Khóa riêng của người dùng bị tiết lộ
Người dùng không còn được CA chứng thực
Chứng thực của CA bị xâm phạm
Mỗi CA phải duy trì danh sách các chứng thực bị thu hồi (CRL)
Khi nhận được chứng thực, người dùng phải kiểm tra xem nó có trong CRL không
Bạn đang đọc truyện trên: AzTruyen.Top