Phân phối khoá cho giải thuật mật mã đối xứng

Một phần của tài liệu ứng dụng chữ ký số trong bảo mật thông tin bưu điện tỉnh thái nguyên (Trang 43 - 45)

5. Tổng quan luận văn

1.5.1.Phân phối khoá cho giải thuật mật mã đối xứng

Ta giả định rằng việc phân bố khóa đƣợc thực hiện trên cùng một mạng truyền thông và các khóa đó đƣợc gửi đi dƣới dạng đã mã hóa (dạng cryptogram). Việc phân bố khóa trên mạng máy tính đƣợc kiểm soát bởi hoặc một máy tính chủ (đƣợc chọn ra trong số tất cả máy tính trên mạng) và đƣợc gọi là "Hệ phân bố khóa tập trung", hoặc bởi một nhóm các máy tính chủ, đƣợc gọi là "Hệ phân bố khóa không tập trung"[12].

a) Hệ phân bố khóa tập trung

Hệ chỉ có một trung tâm phân phát khóa gọi tắt là CKD (cryptographickey distribution center). Ta giả thiết rằng mỗi ngƣời sử dụng sẽ chia sẻ (dùng chung) với CKD chỉ một cặp khóa duy nhất đã định trƣớc. Và giả sử ngƣời A

muốn bảo vệ thông tin gửi tới ngƣời B. Trƣớc tiên A sẽ gửi tới CKD yêu cầu RA

cùng với tên nhận diện IDA dƣới dạng chƣa mã hóa (clear form). Tức user_A

gửi cho CKD cặp (IDA, RA ). Đáp lại CKD gửi trả user_A một message đã mã

hóa bao gồm các thông tin sau :

+ Một khóa KAB mà sẽ đƣợc sử dụng để bảo mật thông tin truyền/nhận

giữa A và B.

+ Tên nhận diện IDA.

+ Một bản sao chép yêu cầu của A là RA.

+ Một khoá đã đƣợc mã hoá của cặp (KAB,IDA) đƣợc mã hóa bằng khóa

KB là khóa chia sẻ giữa B và CKD, tức là EKB(KAB,IDA).

Tóm lại, CKD gửi cho A thông điệp nhƣ sau: EKA (KAB,IDA,RA,EKB). Nhận

đƣợc thông báo trên, A sẽ giải mã nó bằng khóa KA, kiểm tra trên ID và bản sao

chép yêu cầu R có trùng với IDA và RA của mình không ? Nếu trùng, A sẽ gửi

cho B cặp EKB(KAB,IDA). B nhận đƣợc, giải mã nó bằng khóa KB và lấy đƣợc khóa KAB và IDA ở dạng "clear text".

Hình 1.7 Sơ đồ phân bố khóa của một mạng với một CKD

Kết quả là A và B sẽ có chung một khóa KAB nên chúng có thể truyền nhận cho nhau bằng một kênh truyền bảo mật chung. Thƣờng thì khi nhận đƣợc

khóa KAB, B phải kiểm tra tính xác thực của khóa bằng một thủ tục

"authentication procedure". Ví dụ nhƣ B gửi cho A một số ngẫu nhiên RN

(random number) đã đƣợc mã hóa bởi khóa KAB,tức là gửi EKAB(RN). A giải mã

và sau đó biến đổi RN phù hợp với hàm phụ thuộc thời gian đƣợc xác định

trƣớc đó TRt(RN). Chuỗi TRt(RN) đƣợc mã hóa bởi khóa KAB và đƣợc truyền

trở lại cho B. Thủ tục trên có thể làm đơn giản hơn nếu nhƣ các user có lƣu trữ các khóa lấy đƣợc từ trƣớc vào các tệp tin riêng của họ.

b) Hệ phân bố khóa không tập chung

Trong hệ phân bố này, mọi máy chủ đều có quyền phân bố khóa. Trong trƣờng hợp này, mỗi máy chủ đều có một khóa riêng chia sẻ với một máy chủ khác. Nhƣ vậy, giả sử mạng gồm n máy chủ (n nút) sẽ có n(n-1)/2 khóa khác nhau tồn tại trên mạng, và chúng có thể thay đổi theo thời gian. Nếu chúng ta không muốn sử dụng các kênh riêng để phân bố khoá của máy chủ thì có thể sử dụng “Hệ phân bố khóa phân lớp”. Thƣờng thì chúng đƣợc chia thành 3 lớp máy chủ sau : (1) [IDA, RA] (2) EKA[KAB, IDA, RA, EKB(KAB,IDA) ] (3) EKB[KAB, IDA] (4) EKAB(RN) (5) EKAB[TR1(RN)] A B CKD

+ Global CKD. + Regional CKD. + Local CKD.

“Global CKD” đáp ứng với việc phân bố khóa trong số tất cả các thực thể (computer) của một máy chủ. Các máy chủ với “Local CKD” lại là các thực thể đƣợc phân bố khóa bởi một máy host là “Regional CKD” khi các hosts này cùng nằm trong một region. Tƣơng tự, tất cả các hosts “Regional CKD” lại là thực thể của một máy host với “Global CKD”. Do đó, nếu một thực thể nào đó (thực thể có thể là một máy tính, một máy host với chức năng là “Regional CKD” hay “Local CKD”) của mạng yêu cầu một kênh bảo mật, nó sẽ gửi yêu cầu đó cho một máy host tƣơng ứng đƣợc coi là CKD của mình. Sau đó, máy CKD sẽ gửi lại cho thực thể đó một khóa.

Một phần của tài liệu ứng dụng chữ ký số trong bảo mật thông tin bưu điện tỉnh thái nguyên (Trang 43 - 45)