Xác thực dựa trên trung tâm phân phối khóa.
Nếu hệ thống gồm N host, mỗi host phải chia sẻ một khóa mật với N-1 host khác thì hệ thống cần quản lý N.(N-1)/2 khóa, và mỗi host phải quản lý N-1 khóa. Như vậy nếu N lớn sẽ rất khó khăn trong việc quản lý. Do đó, để khắc phục hiện tượng trên ta sử dụng trung tâm phân phối khóa KDC (Key Distribution Center).
Tư tưởng chính: bên gửi sẽ gửi bản tin tới trung tâm phân phối khóa thông báo mình muốn giao tiếp với bên nhận. KDC sẽ gửi cho cả bên gửi và bên nhận một bản tin có chứa khóa bí mật KA,B . Bản tin gửi cho bên nhận sẽ được mã hóa bằng KA,KDC . Bản tin gửi cho bên gửi sẽ được mã hóa bằng KB,KDC .
Hình 62 Nguyên lý của KDC
Cách tiếp cận thứ hai là KDC sẽ gửi cả hai bản tin chứa khóa bí mật KA,KDC (KA,B ) và KB,KDC (KA,B ) cho bên gửi và bên gửi có nhiệm vụ gửi cho bên nhận khóa đã được KDC mã hóa KB,KDC (KA,B ) đó.
Hình 63 Dùng ticket
Xác thực dựa trên khóa công khai.
Hình 64. Xác thực dựa trên khóa công khai.
Bên gửi mã hóa yêu cầu bằng khóa công khai K+B của bên nhận. Bên nhận này là nơi duy nhất có thể giải mã bản tin đó bằng K-B. Bên nhận sẽ mã hóa yêu cầu của bên gửi cùng với yêu cầu của chính mình và khóa KA,B vừa tạo ra bằng khóa công khai K+A của bên gửi nhằm xác thực bên gửi. Cuối cùng, bên gửi sẽ gửi lại cho bên nhận yêu cầu RB của bên nhận đã gửi đi để xác thực.
Tính toàn vẹn và tính mật của thông điệp.
a. Chữ kí số.
Chữ kí số để đảm bảo tính toàn vẹn của thông điệp.
Có nhiều cách thiết lập chữ kí số cho thông điệp:
Cách 1: dùng hệ mật mã khóa công khai là RSA.
Hình 65 Chữ kí số cho một bản tin dùng khóa công khai
Bên gửi sẽ mã hóa bản tin bằng khóa riêng K-A của mình, sau đó sẽ mã hóa tiếp nội dung bản tin và phiên bản chữ kí bằng khóa công khai K+B của bên nhận. Bản tin được mã hóa này sẽ được truyền đi cùng bản tin m. Bên nhận sau khi nhận được bản tin sẽ giải mã gói tin, lấy phiên bản chữ kí của m và so sánh với m để xác thực rằng bản tin này được gửi từ bên gửi đó và cũng để kiểm tra xem có thay đổi trên đường truyền hay không.
Cách 2: dùng hàm băm.
Hàm băm H dùng để tính toán một bản tin có độ dài cố định là một chuỗi bit h từ một bản tin có độ dài tùy ý m. Nếu giá trị m thay bằng giá trị m’ thì H(m’) cũng có giá trị khác giá trị h = H(m), do đó ta có thể dễ dàng xác định được những thay đổi trên bản tin m trên đường truyền.
Hình 66. Chữ kí số cho một bản tin dùng message digest
Bên gửi sẽ tính toán các bản tin có độ dài cố định từ bản tin m và mã hóa bằng khóa riêng của mình. Bản tin được mã hóa này sẽ được truyền đi cùng bản tin m. Khi nhận, bên nhận giải mã bản tin và thực hiện so sánh với bản tin m đã được truyền đi để xác định được rằng bản tin này gửi từ bên gửi đó và đã được kí bằng chữ kí số.
Chia sẻ với bạn bè của bạn: |