Công nghệ bảo mật và chữ ký điện tử- chương 3

Màu nền
Font chữ
Font size
Chiều cao dòng

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: Truyen2U.Pro