Bài giảng An ninh mạng - Mã đối xứng căn bản (Phần 3)

Mã Playfair
Mã hóa Playfair xem hai ký tự đứng sát nhau là một đơn
vị mã hóa, hai ký tự này được thay thế cùng lúc bằng hai
ký tự khác. Playfair dùng một ma trận 5x5 tạo bảng mã
hóa ký tự theo key cho trước thỏa quy luật gán ký tự
Các yêu cầu:
Trong bảng trên, khóa là từ MONARCHY được điền vào các
dòng đầu của bảng, các chữ cái còn lại được điền tiếp theo. Từ
khóa không có từ trùng lặp. Nếu có từ trùng lặp từ sau sẽ bị loại.
Riêng hai chữ I, J được điền vào cùng một ô vì trong tiếng Anh, ít
khi nhầm lẫn giữa chữ I và chữ J.
pdf 22 trang hoanghoa 07/11/2022 2620
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng An ninh mạng - Mã đối xứng căn bản (Phần 3)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfbai_giang_an_ninh_mang_ma_doi_xung_can_ban_tiep_theo.pdf

Nội dung text: Bài giảng An ninh mạng - Mã đối xứng căn bản (Phần 3)

  1. Mã hóa thay thế đa bảng (Polyalphabetic Substitution Cipher) Với sự phát hiện ra quy luật phân bố tần suất, các nhà phá mã đang tạm thời chiếm ưu thế trong cuộc chiến mã hóa- phá mã. Cho đến thế kỷ thứ 15, một nhà ngoại giao người Pháp tên là Vigenere đã tìm ra phương án mã hóa thay thế đa bảng. Phương pháp Vigenere dựa trên bảng sau đây: 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 11
  2. Bảng mã Vigenere 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 12
  3. • Dòng thứ k của bảng là một mã hóa Ceasar k-1 vị trí. Ví dụ, dòng thứ 4, ứng với từ khóa D là mã hóa Ceasar 3 vị trí. (Trong trường hợp tổng quát, mỗi dòng của bảng Vigenere không phải là một mã hóa Ceasar nữa mà là một mã hóa đơn bảng, do đó có tên gọi là mã hóa đa bảng). Để mã hóa một bản tin thì cần có một khóa có chiều dài bằng chiều dài bản tin. Thường thì khóa là một cụm từ nào đó và được viết lặp lại cho đến khi có chiều dài bằng chiều dài bản tin. Ví dụ với bản tin là „We are discovered, save yourself‟ và khóa là từ DECEPTIVE, chúng ta mã hóa như sau: • Plain text: WEAREDISCOVEREDSAVEYOURSELF • Key: DECEPTIVEDECEPTIVEDECEPTIVE • Cipher text: ZICVTWQNGRZGVTWAVZHCQYGLMGJ 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 13
  4. • Trong ví dụ trên, ứng với với chữ w trong bản rõ là chữ D trong khóa, nên dòng mã hóa thứ 4 ứng với khóa D trong bảng Vigenere được chọn. Do đó chữ w được mã hóa thành chữ Z. Tương tự như vậy cho các chữ còn lại. • Trong ví dụ trên, các chữ e trong bản rõ được mã hóa tương ứng thành I, T, G, T, H, M trong bản mã. Do đó phương pháp phá mã dựa trên thống kê tần suất chữ cái là không thực hiện được. Trong 3 thế kỷ sau đó mã hóa Vigenere được xem là mã hóa không thể bị phá và được biết dưới cái tên “le chipffre indechiffrable” (mật mã không thể phá nổi). Các nhà mã hóa lại chiếm ưu thế trở lại so với người phá mã. 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 14
  5. • Đến thế kỷ 19, nhà khoa học người Anh Charles Barbage, đã tìm ra cách phá mã Vigenere. Việc phá mã bằng cách thống kê sự lặp lại của các cụm từ để phỏng đoán chiều dài của khóa, trong ví dụ trên cụm từ VTW được lặp lại cách nhau 9 vị trí nên có thể đoán chiều dài của khóa là 9. Và từ đó có thể tách bản mã thành 9 phần, phần thứ nhất gồm các chữ 1, 10, 19, 28, phần thứ hai gồm các chữ 2, 11, 20, 29 .cho đến phần thứ chín. Mỗi phần coi như được mã hóa bằng phương pháp mã hóa đơn bảng. Từ đó áp dụng phương pháp phá mã dựa trên tần suất chữ cái cho từng phần một. Cuối cùng ráp lại sẽ tìm ra được bản rõ. 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 15
  6. One-Time Pad Có thể thấy rằng điểm yếu của mã hóa đa bảng là do sự lặp lại các từ trong khóa, ví dụ từ DECEPTIVE được lặp đi lặp lại nhiều lần. Điều này làm cho vẫn tồn tại một mối liên quan giữa bản rõ và bản mã, ví dụ cụm từ red trong bản rõ được lặp lại thì cụm từ VTW cũng được lặp lại trong bản mã. Người phá mã tận dụng mối liên quan này để thực hiện phá mã. Do đó vấn đề ở đây là làm sao để giữa bản rõ và bản mã thật sự ngẫu nhiên, không tồn tại mối quan hệ nào. Để giải quyết vấn đề này, Joseph Mauborgne, giám đốc viện nghiên cứu mật mã của quân đội Mỹ, vào cuối cuộc chiến tranh thế giới lần thứ nhất, đã đề xuất phương án là dùng khóa ngẫu nhiên. Khóa ngẫu nhiên có chiều dài bằng chiều dài của bản rõ, mỗi khóa chỉ sử dụng một lần 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 16
  7. Ví dụ mã hóa bản tin :”wearediscoveredsaveyourself” • Bản tin P: wearediscoveredsaveyourself • Khóa K1: FHWYKLVMKVKXCVKDJSFSAPXZCVP • Bản mã C: BLWPOODEMJFBTZNVJNJQOJORGGU 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 17
  8. • Nếu ta dùng khóa K1 để giải mã thì sẽ có được lại • Bản tin P „wearediscoveredsaveyourself’. Tuy nhiên xét hai trường hợp giải mã bản mã trên với 2 khóa khác như sau: 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 18
  9. Trường hợp 1: • Bản mã C: BLWPOODEMJFBTZNVJNJQOJORGGU • Khóa K2: IESRLKBWJFCIFZUCJLZXAXAAPSY • Bản giải mã: theydecidedtoattacktomorrow (they decided to attack tomorrow) 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 19
  10. Trường hợp 2: • Bản mã C: BLWPOODEMJFBTZNVJNJQOJORGGU • Khóa K3: FHAHDDRAIQFIASJGJWQSVVBJAZB • Bản giải mã: wewillmeetatthepartytonight (we will meet at the party tonight) 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 20
  11. • Trong cả hai trường hợp trên thì bản giải mã đều có ý nghĩa. Điều này có nghĩa là nếu người phá mã thực hiện phá mã vét cạn thì sẽ tìm được nhiều khóa ứng với nhiều bản • Tin có ý nghĩa, do đó sẽ không biết được bản tin nào là bản rõ. Điều này chứng minh phương pháp One-Time Pad là phương pháp mã hóa an toàn tuyệt đối, và được xem là ly thánh của khoa mật mã cổ điển. 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 21
  12. 1/1/2014 Tài liệu An ninh Mạng- Bộ môn IT 22