Mã hóa đối xứng

 Mã hóa đối xứng

  1. Khái niệm

phương pháp mã hóa đối xứng tổng quát được biểu diễn bằng mô hình sau:

Hình 1: Mô hình mã hóa đối xứng

  ma hoa doi xung

Mô hình trên gồm 5 yếu tố:

Bản rõ P (plaintext)

–  Thuật toán mã hóa E (encrypt algorithm)

–  Khóa bí mật K (secret key)

–  Bản mã C (ciphertext)

–  Thuật toán giải mã D (decrypt algorithm)

Trong đó:   C = E (P, K) và P = D (C, K)

Thuật toán mã hóa và giải mã sử  dụng chung một khóa, thuật toán giải mã là phép toán ngược của thuật toán mã hóa.

Vì vậy mô hình trên được gọi là phương pháp mã hóa đối xứng

Đặc điểm:

Khóa  phải  được  giữ  bí  mật  giữa người gởi và người nhận (ta thấy trên hình thì khóa phải truyền trên môi trường an toàn)

Vậy tại sao chúng ta không truyền bản tin trên môi trường này?

Đó là vì nội dung bản tin thì có thể rất dài, còn khóa thì thường là ngắn.

Một khóa có thể áp dụng để truyền tin nhiều lần

2. Các tính chất bảo mật của mã hóa đối xứng

Trong bài viết “Tổng quan về mật mã” mục 4 là các tính chất của mã hóa, ta đối chiếu các tính chất đó.

2.1 Đảm bảo tính bí mật 

Bản mã C  được gởi đi trên kênh truyền. Do bản mã C  đã được biến đổi so với bản rõ P, cho nên những người thứ  ba can thiệp vào kênh truyền để  lấy được bản mã C, thì  không hiểu được ý nghĩa của bản mã.  Đây chính là đặc điểm quan trọng của mã hóa, cho phép đảm bảo tính bảo mật (confidentiality)

Xem Thêm Bài Viết  Một số ứng dụng mã hóa (phần hai)

2.2 Đảm bảo tính toàn vẹn dữ liệu

Nếu Trudy chặn được bản mã C  của Alice và sửa  C  thành  CT, thì xác suất để  PT  là văn bản có nghĩa cũng rất bé. Và Bob biết được C đã bị sửa đổi. Đối với mã hóa hiện đại cũng vậy, nếu Trudy chọn CT là một dãy bít bất kỳ thì bản rõ PT cũng là một dãy bít lộn xộn, không có cấu trúc ý nghĩa.

2.3. Tính xác thực (authentication) của mã hóa đối xứng.

Mã hóa đối xứng có thể  chống lại các hình thức tấn công sửa đổi thông điệp, mạo danh và phát lại thông điệp được hay không? Câu trả lời là có

2.4   Tính không từ chối (non-repudiation) của mã hóa đối xứng.

Mặc dù mã hóa đối xứng thỏa mãn tính bảo mật nhưng mã hóa đối xứng lại không thỏa mãn được  tính không  từ  chối. Vì khóa của mã hóa đối xứng chỉ có hai người biết, nên nếu khóa K bị  tiết lộ  thì không có cơ sở  để quy trách nhiệm cho Alice hay Bob làm lộ  khóa.

Có phương pháp nào mã hóa nào mà khóa bí mật chỉ có một người biết mà. Đó là phương pháp mã hóa khóa công khai (được giới thiệu sau)

3. Trao đổi khóa bí mật bằng trung tâm phân phối khóa

Giả sử có N người sử dụng, trao đổi dữ liệu bằng mã hóa đối xứng, mỗi cặp người sử dụng cần có một khóa bí mật riêng, như vậy cần có N(N-1)/2 khóa bí mật. Do vậy sẽ dẫn đến cho người dùng khó khăn vì có quá nhiều khóa phải nhớ. Do vậy phương pháp trao đổi khóa bằng trung tâm phân phối khóa (Key Distribution Center –  KDC) giúp đơn giản hóa vấn đề  này. Đây chính là mô hình mà Domain Controller trên hệ điều hành windows triển khai

Xem Thêm Bài Viết  Mã hóa bất đối xứng (Công khai)

HÌnh 2: N(N-1)/2 khóa nếu có N người dùng trao đổi dữ liệu

n khoa cong khai

Hình 3: Mô hình trao đổi khóa tập trung

Phương pháp trao đổi khóa bằng trung tâm phân phối khóa (Key Distribution Center –  KDC) giúp đơn giản hóa vấn đề  này. Trong mô hình sử  dụng KDC, mỗi người sử  dụng chỉ cần có một khóa bí mật với KDC. Còn khóa dùng để trao đổi dữ liệu giữa các người sử dụng sẽ do KDC cung cấp.

Giả  sử  Alice có khóa bí mật  KA  với KDC và Bob có khóa bí mật  KB  với KDC. Bây giờ  Alice muốn trao đổi dữ  liệu với Bob. Quá trình thiết lập khóa chung KAB  giữa Alice và Bob gồm các bước:

trao doi khoa tap trung

1)  Alice gửi yêu cầu muốn trao đổi dữ liệu với Bob cho KDC.

2)  KDC tạo một khóa bí mật  KAB  và mã hóa thành hai  bản mã. Một bản mã được mã hóa bằng khóa bí mật của Alice  E(KAB,  KA)  và một bản mã được mã hóa bằng khóa bí mật của Bob E(KAB, KB).

3)  Alice giải mã E(KAB, KA) để có KAB

4)  Alice gửi E(KAB, KB) cho Bob, Bob giải mã để có được KAB

5)  Alice và Bob trao đổi dữ liệu qua khóa bí mật KAB

Như vậy, khóa  KAB chỉ  có KDC, Alice và Bob biết.  Trách nhiệm của KDC là giữ  bí mật  khóa  này.  Alice  và  Bob  dùng  khóa  KAB để  mã  hóa  dữ  liệu.  Khi  kết  thúc  quá  trình truyền dữ  liệu, KAB  được hủy bỏ. Lần sau nếu Alice lại truyền số  liệu với Bob thì KDC sẽ cung cấp khóa  KAB  khác

Xem Thêm Bài Viết  Tổng quan về mật mã

Phần sau giới thiệu mã hóa bất đối xứng (mã hóa công khai)

Lượt xem (9273)

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *