Chương 1, nội dung chính trong chương này trình bày các kiến thức sau: Một số khái niệm cơ bản trong mật mã; Sơ đồ khối đơn giản của một HT thông tin số; Thuật toán và độ phức tạp; Độ mật hoàn thiện1; Entropy; Các khóa giả và khoảng duy nhất.
CHƯƠNG I LÝ THUYẾT THÔNG TIN TRONG CÁC HỆ MẬT Hồng Thu Phương - Khoa ATTT Giới thiệu mơn học Nội dung Chương 1: Nhập môn mật mã học Chương 2: Mật mã khố bí mật Chương 3: Mật mã khố cơng khai Chương 4: Hàm băm, xác thực chữ kí số Hồng Thu Phương - Khoa ATTT Giới thiệu môn học Thời lượng 60 tiết = đơn vị học trình Hình thức thi kiểm tra Thi viết Sau có tập nhà có hình thức kiểm tra Hoàng Thu Phương - Khoa ATTT Nội dung 1.1 Một số khái niệm mật mã 1.2 Sơ đồ khối đơn giản HT thông tin số 1.3 Thuật toán độ phức tạp 1.3.1 Khái niệm thuật toán 1.3.2 Độ phức tạp thuật toán 1.4 Độ mật hoàn thiện 1.4.1 Quan điểm độ an tồn hệ mật 1.4.2 Nhắc lại số lí thuyết xác suất 1.4.3 Độ mật hoàn thiện 1.5 Entropy 1.6 Các khóa giả khoảng Hoàng Thu Phương - Khoa ATTT 1.1 Một số khái niệm Bản rõ (Plaintext): Dạng ban đầu thông báo Bản mã (Ciphertext): Dạng mã rõ ban đầu Khóa (Key): thơng tin tham số dùng để mã hóa Mã hóa (Encryption): Q trình mã thơng báo cho nghĩa khơng bị lộ Giải mã (Decryption): Q trình ngược lại biến đổi thơng báo mã ngược trở lại thành dạng thông thường Hoàng Thu Phương - Khoa ATTT 1.1 Một số khái niệm Kí hiệu: y = Ek(x): y mã rõ x qua hàm biến đổi E (hàm mã hóa) với khóa K x = Dk(y): x rõ mã y qua hàm biến đổi D (hàm giải mã) với khóa K Hồng Thu Phương - Khoa ATTT 1.1 Một số khái niệm Ví dụ minh họa: Bản rõ x: HELLOWORLD Hàm ek(x) = x + k mod 26 Cho k = Khi đó: mã y = ek(x) = MJRRTBTWRI H: + mod 26 = 12 M; E: + mod 26 = J; … Ta suy rõ x từ mã y từ hàm giải mã: dk(y) = y – k mod 26 Hoàng Thu Phương - Khoa ATTT 1.1 Một số khái niệm Khoa học mật mã (cryptology) gồm: Mật mã học (cryptography): khoa học nghiên cứu cách ghi bí mật thơng tin nhằm biến đổi rõ thành mã Phân tích mật mã (cryptanalysis): nghiên cứu cách phá hệ mật nhằm phục hồi rõ ban đầu từ mã, nghiên cứu nguyên lí phương pháp giải mã mà khơng biết khóa Có phương pháp cơng thám mã: • Tìm khóa vét cạn • Phân tích thống kê • Phân tích tốn học Hồng Thu Phương - Khoa ATTT 1.1 Một số khái niệm Các kiểu cơng thám mã: • Tấn cơng với mã: biết thuật toán, mã, dùng phương pháp thống kê xác định rõ • Tấn cơng với rõ biết: biết thuật toán, biết mã/bản rõ, cơng tìm khóa • Tấn cơng với rõ chọn: chọn rõ nhận mã, biết thuật tốn, cơng tìm khóa • Tấn cơng với mã chọn: chọn mã có rõ tương ứng, biết thuật tốn, cơng tìm khóa Chú ý: Hệ mật bị phá với mã thường hệ mật có độ an tồn thấp Hệ mật an tồn với kiểu cơng có rõ chọn thường hệ mật có độ an toàn cao Hoàng Thu Phương - Khoa ATTT 10 1.2 Sơ đồ khối đơn giản HTTTS Hồng Thu Phương - Khoa ATTT 11 Ví dụ: x = (x1, x2, x3) = (101, 010, 111); K = (K1, K2, K3) = (010, 100, 110) Khi phép mã hoá: y = eK(x) = (101 010, 010 100, 111 110 ) = (111, 110, 001) phép giải mã: x= dK(y) = (111 010, 110 100, 001 110) = (101, 010, 111) Hoàng Thu Phương - Khoa ATTT 33 1.5 Entropy 1.5.1 Entropy 1.5.2 Một số tính chất entropy Hoàng Thu Phương - Khoa ATTT 34 1.5.1 Entropy Entropy khái niệm lí thuyết thơng tin Shannon đưa vào năm 1948 Có thể coi entropy đại lượng đo thơng tin hay cịn gọi độ bất định, tính hàm phân bố xs, kí hiệu H(X) Ví dụ tính entropy phép tung đồng xu Nhận xét: Một biến cố xảy với xs 2-n mã hóa xâu bit có độ dài n Hồng Thu Phương - Khoa ATTT 35 Tổng quát coi biến cố xảy với xs p mã hóa xâu bit có độ dài xấp xỉ -log2p Nếu cho trước p1, p2, …, pn bnn X, độ đo thơng tin trọng số trung bình lượng –log2pi ĐN 3: Giả sử X biến ngẫu nhiên lấy giá trị tập hữu hạn theo phân bố xs p(X) Khi entropy phân bố xs định nghĩa lượng: Nếu giá trị X xi, ≤ i ≤ n ta có: Hồng Thu Phương - Khoa ATTT 36 Nhận xét: log2pi không xác định pi = 0, nên entropy định nghĩa tổng tương ứng tất xs khác Vì lim x log 02 x nên thực tế khơng x có trở ngại cho pi = 0, với i Tuy nhiên ta tuân theo giả định tính entropy phân bố xs pi, H(X) tính số i cho pi khác Cơ số logarit chọn tùy ý, giá trị entropy thay đổi số Nếu pi = 1/n với ≤ i ≤ n H(X) = log2n H(X) ≥ H(X) = pi = với i pj = với j ≠ i Ta tính H(P), H(C), H(K) hệ mật Hoàng Thu Phương - Khoa ATTT 37 1.5.2 Các tính chất entropy Trước tiên nhắc lại số kiến thức f lồi khoảng I: f lồi thực I nếu: ĐL (Bất đẳng thức Jensen) Giả sử f hàm lồi thực liên tục khoảng I, với, ≤ i ≤ n Khi đó: xi є I, ≤ i ≤ n Ngồi dấu “=” xảy x1 = … = xn Hoàng Thu Phương - Khoa ATTT 38 Các tính chất: ĐL 5:Giả sử X biến ngẫu nhiên có phân bố xs p1, p2, …, pn, pi > 0, ≤ i ≤ n Khi H(X) ≤ log2n Dấu “=” xảy pi = 1/n, ≤ i ≤ n ĐL 6: H(X, Y) ≤ H(X) + H(Y) Đẳng thức xảy X Y biến cố độc lập Hoàng Thu Phương - Khoa ATTT 39 ĐN 5: X Y hai bnn, với giá trị xác định y Y, ta có phân bố xs có đk p(X|y) Rõ ràng là: Ta định nghĩa entropy có điều kiện H(X| Y) trung bình trọng số ứng với xs p(y) entropy H(X| y) giá trị y H(X| Y) tính bằng: ĐL 7: H(X,Y) = H(X|Y) +H(Y) HQ 1: H(X|Y) ≤ H(X), dấu “=” xảy X, Y độc lập Hoàng Thu Phương - Khoa ATTT 40 1.6 Các khóa giả khoảng Trong phần ta áp dụng kết entropy cho hệ mật Trước hết ta quan hệ entropy thành phần hệ mật ĐL 8: Giả sử (P, C, K, E, D) hệ mật, đó: H(K|C) = H(K) +H(P) – H(C) Hồng Thu Phương - Khoa ATTT 41 1.6 Các khóa giả … Khóa giả: Các khóa mà thám mã rút khơng phải khóa Ví dụ: giả sử thám mã thu mã WNAJW mã phương pháp MDV Chỉ có xâu rõ có ý nghĩa river arena tương ứng với khóa F (=5) W (=22) Trong hai khóa có khóa khóa cịn lại khóa giả Mục đích tìm giới hạn cho số trung bình khóa giả Hồng Thu Phương - Khoa ATTT 42 • Kí hiệu lượng thơng tin trung bình kí tự xâu có nghĩa rõ HL • Dùng entropy, ta lấy H(P) làm xấp xỉ bậc cho HL • Tuy nhiên kí tự liên tiếp ngôn ngữ không độc lập với nên làm giảm entropy Ta tính entropy phân bố xs đôi chia cho để làm xấp xỉ bậc cho HL Cứ trường hợp tổng quát, ta định nghĩa Pn bnn có phân bố xs phân bố xs tất n rõ dùng định nghĩa sau Hoàng Thu Phương - Khoa ATTT 43 ĐN 8: Giả sử L ngôn ngữ tự nhiên, entropy L xác định lượng sau: Độ dư L là: Nhận xét: • HL đo entropy kí tự ngơn ngữ L • RL đo phần “kí tự vượt trội” phần dư entropy ngơn ngữ ngẫu nhiên log2|P | Dựa vào giá trị HL ta đánh giá lượng thơng tin trung bình ngơn ngữ, ví dụ với L Anh ngữ 1.0 ≤ HL ≤ 1.5 Giả sử lấy HL = 1.25 độ dư 75% tức dùng thuật tốn Huffman (phép mã hóa nén) tìm đơn ánh cho n (n đủ lớn) mà nén văn tiếng Anh xuống 1/4 văn gốc Hoàng Thu Phương - Khoa ATTT 44 Với phân bố xs cho K Pn, xác định phân bố xs Cn tập n mã Với y є Cn, định nghĩa: K( y) K K : x Pn , pPn (x) 0, eK (x) y Như y dãy quan sát mã số khố giả |K(y)|-1 Kí hiệu s số trung bình khố giả (trên tất xâu mã độ dài n) thì: n Với n đủ lớn ta có ước lượng Hoàng Thu Phương - Khoa ATTT 45 Nếu khố chọn với xs (khi H(K) có giá trị lớn nhất) ta có định lí sau: ĐL 9: Giả sử (P, C, K, E, D) hệ mật |C| = |P| khóa chọn đồng xác suất Giả sử RL độ dư ngơn ngữ gốc, với xâu mã độ dài n cho trước (n số đủ lớn), số trung bình khóa giả thỏa mãn bất đẳng thức sau: s n | K | /(| P | nR L ) | K | /(| P | nR L ) - Lượng tiến tới theo hàm mũ n tăng, n nhỏ ước lượng khơng xác H(Pn)/n khơng phải ước lượng tốt cho HL n nhỏ Hoàng Thu Phương - Khoa ATTT 46 ĐN 9: Khoảng hệ mật định nghĩa giá trị n mà ứng với giá trị này, số khóa giả trung bình (kí hiệu giá trị n0) Điều có nghĩa n0 độ dài trung bình cần thiết mã để thám mã tính tốn cách với thời gian đủ lớn Hoàng Thu Phương - Khoa ATTT 47 ... Phương - Khoa ATTT 32 Ví d? ?: x = (x1, x2, x3) = (10 1, 010 , 11 1); K = (K1, K2, K3) = ( 010 , 10 0, 11 0) Khi phép mã h? ?: y = eK(x) = (10 1 010 , 010 10 0, 11 1 11 0 ) = (11 1, 11 0, 0 01) phép giải m? ?:. .. dK(y) = (11 1 010 , 11 0 10 0, 0 01 11 0) = (10 1, 010 , 11 1) Hoàng Thu Phương - Khoa ATTT 33 1. 5 Entropy 1. 5 .1 Entropy 1. 5.2 Một số tính chất entropy Hoàng Thu Phương - Khoa ATTT 34 ? ?1. 5 .1 Entropy... thiệu môn học Nội dung ? ?Chương 1: Nhập mơn mật mã học ? ?Chương 2: Mật mã khố bí mật ? ?Chương 3: Mật mã khố cơng khai ? ?Chương 4: Hàm băm, xác thực chữ kí số Hồng Thu Phương - Khoa ATTT Giới thiệu môn