Thông tin tài liệu:
Chương 7: Mật mã khóa đối xứng, giới thiệu đến người học về lý thuyết cơ bản của Shannon, định nghĩa mật mã đối xứng, các lệnh dùng để xây dựng thuật toán mật mã đối xứng, một số sơ đồ dùng để thiết kế hệ mật.
Nội dung trích xuất từ tài liệu:
Tài liệu Kỹ thuật lập trình - Chương 7: Mật mã khóa đối xứng Chương 7 MẬT MÃ KHÓA ĐỐI XỨNG 7.1 Lý thuyết cơ bản của Shannon Nhiều người cho rằng kỷ nguyên của mật mã học hiện đại được bắt đầu vớiClaude Shannon, người được coi là cha đẻ của mật mã toán học. Năm 1949 ông đã côngbố bài Lý thuyết về truyền thông trong các hệ thống bảo mật (Communication Theoryof Secrecy Systems) trên tập san Bell System Technical Journal - Tập san kỹ thuật củahệ thống Bell - và một thời gian ngắn sau đó, trong cuốn Mathematical Theory ofCommunication - Lý thuyết toán học trong truyền thông - cùng với tác giả WarrenWeaver. Những công trình này, cùng với những công trình nghiên cứu khác của ông về lýthuyết về tin học và truyền thông (information and communication theory), đã thiết lậpmột nền tảng lý thuyết cơ bản cho mật mã học và thám mã học. Với ảnh hưởng đó,mật mã học hầu như bị thâu tóm bởi các cơ quan truyền thông mật của chính phủ,chẳng hạn như NSA, và biến mất khỏi tầm hiểu biết của công chúng. Rất ít các côngtrình được tiếp tục công bố, cho đến thời kỳ giữa thập niên 1970, khi mọi sự được thayđổi. Claude Shannon xem xét mô hình 7.1, ở đây nguồn bản tin sinh ra bản rõ X, nguồnkhóa tạo ra khóa K, khóa K được truyền qua kênh mật từ nơi truyền đến nơi nhận. Quá trình mã hóa biến đổi bản rõ X nhờ khóa thành bản mã Y: FK ( X ) . Quá trình giải mã, biến đổi bản mã nhận được Y thành bản rõ X cũng nhờ khóa K:X = FK−1 (Y ) . Tội phạm (hay thám mã) sẽ tìm cách nhận được bản rõ và khóa trên cơ sỡ bản mã. Claude Shannon xem xét các câu hỏi lý thuyết và thực hành mật. Để nhận được lýthuyết mật Shannon hình thành các câu hỏi sau: 1. Hệ thống ổn định ở mức độ nào, nếu như thám mã không giới hạn thời gian và có tất cả các thiết bị cần thiết đối với việc phân tích bản mã? 2. Bản mã liệu có một nghiệm duy nhất hay không? 3. Với lượng thông tin bản mã bao nhiêu mà thám mã cần thu nhặt để nghiệm trở nên duy nhất? Để trả lời câu hỏi của Shannon chúng ta đưa vào định nghĩa “tuyệt mật” với s ự hổtrợ các điều kiện sau: Bản mã thu được không đêm đến cho thám mã bất kỳ thông tinnào. Theo định lý Bayes PY ( X ) = P ( X ) PX (Y ) / P (Y ) K Nguồn khóa K X X Nguồn bản Mã hóa Y Giải mã Nhận bản tin tin Tội phạm K’ X’ Hình 7.1. Mô hình truyền tin Shannon Với P(X) là xác suất xuất hiện bản tin X; PX (Y ) xác suất điều kiện, xuất hiện bảnmã Y với điều kiện bản tin X đã được chọn, có nghĩa là tổng xác suất của tất cả cáckhóa, mà các khóa này chuyển bản tin X tương ứng với bản mã Y; P(Y)-xác suất nhậnđược bản mã Y; PY ( X ) là xác suất nhận được bản rõ X với điều kiện nhặt được bảnmã Y. Để “tuyệt mật” thì giá trị của PY ( X ) và P( X ) cần phải bằng nhau với tất cả giátrị của X và Y. Để chống lại phương pháp phân tích thống kê bản mã (đây là một cách thám mã)Shannon đề ra hai phương pháp: khuyết tán và pha trộn. Định nghĩa Entropy thông tin. Entropy thông tin mô tả mức độ hỗn loạn trong mộttín hiệu lấy từ một sự kiện ngẫu nhiên. Nói cách khác, entropy cũng chỉ ra có bao nhiêuthông tin trong tín hiệu, với thông tin là các phần không hỗn loạn ngẫu nhiên của tínhiệu. Lý thuyết về thông tin sẽ trình bày đầy đủ hơn về Entropy, ở đây chúng tôi chỉ đ ưara cái cơ bản. Claude E. Shannon đã xây dựng định nghĩa về entropy để thoả mãn các giả định sau: 1. Entropy phải tỷ lệ thuận liên tục với các xác suất xuất hiện của các phần tử ngẫu nhiên trong tín hiệu. Thay đổi nhỏ trong xác suất phải dẫn đến thay đổi nhỏ trong entropy. 2. Nếu các phần tử ngẫu nhiên đều có xác suất xuất hiện bằng nhau, việc tăng số lượng phần tử ngẫu nhiên phải làm tăng entropy. 3. Có thể tạo các chuỗi tín hiệu theo nhiều bước, và entropy tổng cộng phải bằng tổng có trọng số của entropy của từng bước. Shannon cũng chỉ ra rằng bất cứ định nghĩa nào của entropy, cho một tín hiệu có thểnhận các giá trị rời rạc, thoả mãn các giả định của ông thì đều có dạng: n − K ∑ p (i ) log p (i ) i =1 Với K là một hằng số, chỉ phụ thuộc vào đơn vị đo; n là tổng số các giá trị có thểnhận của tín hiệu; i là giá t ...