1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo án an toàn bảo mật -5 pot

11 191 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 395,59 KB

Nội dung

http://www.ebook.edu.vn 45 và xét việc mã hoá y j bảng e 0 ,e 1 ,e 2 . . . Ta kí hiệu các kết quả bằng y j 0 ,y j 1 ,. . . Dễ dàng dùng các chỉ số MI c (y i ,y j g ), 0 ≤ g ≤ 25 theo công thức sau: Khi g = l thì MI c phải gần với giá trị 0,065 vì độ dịch tương đối của y i và y j bằng 0. Tuy nhiên, với các giá trị g ≠ l thì MI c sẽ thay đổi giữa 0,031 và 0,045. Bằng kỹ thuật này, có thể thu được các độ dịch tương đối của hai xâu con y i bất kỳ. Vấn đề còn lại chỉ là 26 từ khoá có thể và điều này dễ dàng tìm được bằng phương pháp tìm kiếm vét cạn. Trở lại ví dụ trên để minh hoạ. Ở trên đã giả định rằng, độ dài từ khoá là 5. Bây giờ ta sẽ thử tính các độ dịch tương đối. Nhờ máy tính, dễ dàng tính 260 giá trị MI c (y i ,y j g ), trong đó 1 ≤ i ≤ j ≤ 5; 0 ≤ g ≤ 25. Các giá trị này được cho trên bảng. Với mỗi cặp ( i,j), ta tìm các giá trị của MI c (y i ,y j g ) nào gần với 0,065. Nếu có một giá trị duy nhất như vậy (Đối với mỗi cặp (i,j) cho trước), thì có thể phán đoán đó chính là giá trị độ dịch tương đối. Trong bảng dưới có 6 giá trị như vậy được đóng khung. Chúng chứng tỏ khá rõ ràng là độ dịch tương đối của y 1 và y 2 bằng 9; độ dịch tương đối của y 2 và y 3 bằng 13; độ dịch tương đối của y 2 và y 5 bằng 7; độ dịch tương đối của y 3 và y 5 bằng 20; của y 4 và y 5 bằng 11. Từ đây có các phương trình theo 5 ẩn số K 1 , K 2 , K 3 , K 4 , K 5 như sau: K 1 - K 2 = 9 K 1 - K 2 = 16 K 2 - K 3 = 13 K 2 - K 5 = 17 K 3 - K 5 = 20 K 4 - K 5 = 11 Điều này cho phép biểu thị các K i theo K 1 ; K 2 = K 1 + 17 http://www.ebook.edu.vn 46 K 3 = K 1 + 4 K 4 = K 1 + 21 K 5 = K 1 + 10 Như vậy khoá có khả năng là ( K 1 , K 1 +17, K 1 +4, K 1 +21, K 1 +10) với giá trị K 1 nào đó ∈ Z 26 . Từ đây ta hy vọng rằng, từ khoá là một dịch vòng nào đó của AREVK. Bây giờ, không tốn nhiều công sức lắm cũng có thể xác định được từ khoá là JANET. Giải mã bản mã theo khoá này, ta thu được bản rõ sau: The almond tree was in tentative blossom. The days were longer often ending with magnificient evenings of corrugated pink skies. The hunting seasun was over, with hounds and guns put away for six months. The vineyards were busy again as the well-organized farmers treated their vinesand the more lackadaisical neighbors hurried to do the pruning they have done in November. . Các chỉ số trùng hợp tương hỗ quan sát được. Giá trị của MI c (y j ,y j g ) 0,028 0,027 0,028 0,034 0,039 0,037 0,026 0,025 0,052 0,068 0,044 0,026 0,037 0,043 0,037 0,043 0,037 0,028 0,041 0,041 0,041 0,034 0,037 0,051 0,045 0,042 0,036 0,039 0,033 0,040 0,034 0,028 0,053 0,048 0,033 0,029 0,056 0,050 0,045 0,039 0,040 0,036 0,037 0,032 0,027 0,037 0,047 0,032 0,027 0,039 0,037 0,039 0,035 http://www.ebook.edu.vn 47 0,034 0,043 0,025 0,027 0,038 0,049 0,040 0,032 0,029 0,034 0,039 0,044 0,044 0,034 0,039 0,045 0,044 0,037 0,055 0,047 0,032 0,027 0,039 0,037 0,039 0,035 0,043 0,033 0,028 0,046 0,043 0,044 0,039 0,031 0,026 0,030 0,036 0,040 0,041 0,024 0,019 0,048 0,070 0,044 0,028 0,038 0,044 0,043 0,047 0,033 0,026 0,046 0,048 0,041 0,032 0,036 0,035 0,036 0,020 0,024 0,039 0,034 0,029 0,040 0,067 0,061 0,033 0,037 0,045 0,033 0,033 0,027 0,033 0,045 0,052 0,042 0,030 0,046 0,034 0,043 0,044 0,034 0,031 0,040 0,045 0,040 0,048 0,044 0,033 0,024 0,028 0,042 0,039 0,026 0,034 0,050 0,035 0,032 0,040 0,056 0,043 0,028 0,028 0,033 0,033 0,036 0,046 0,026 0,018 0,043 0,080 0,050 0,029 0,031 0,045 0,039 0,037 0,027 http://www.ebook.edu.vn 48 0,026 0,031 0,039 0,040 0,037 0,041 0,046 0,045 0,043 0,035 0,030 0,038 0,036 0,040 0,033 0,036 0,060 0,035 0,041 0,029 0,058 0,035 0,035 0,034 0,053 0,030 0,032 0,035 0,036 0,036 0,028 0,043 0,032 0,051 0,032 0,034 0,030 0,035 0,038 0,034 0,036 0,030 0,043 0,043 0,050 0,025 0,041 0,051 0,050 0,035 0,032 0,033 0,033 0,052 0,031 0,027 0,030 0,072 0,035 0,034 0,032 0,043 0,027 0,052 0,038 0,033 0,038 0,041 0,043 0,037 0,048 0,028 0,028 0,036 0,061 0,033 0,033 0,032 0,052 0,034 0,027 0,039 0,043 0,033 0,027 0,030 0,039 0,048 0,035 2.2.4.Tấn công với bản rõ đã biết trên hệ mật Hill. Hệ mã Hill là một hệ mật khó pha hơn nếu tấn công chỉ với bản mã. Tuy nhiên hệ mật này dễ bị phá nếu tấn công bằng bản rõ đã biết. Trước tiên, giả sử rằng, thám mã đã biết được giá trị m đang sử dụng. Giả sử thám mã có ít nhất m cặp véc tơ khác nhau xj = (x 1,j , x 2,j , , . . ., x m,j ) và y j = (y 1,j , y 2,j , ,y m,j ) (1 ≤ j ≤ m) http://www.ebook.edu.vn 49 sao cho y j = e K (x j ), 1 ≤ j ≤ m. Nếu xác định hai ma trận: X = (x i,j ) Y = (y i,j ) cấp m×m thì ta có phương trình ma trận Y = XK, trong đó ma trận K cấp m×m là khoá chưa biết. Với điều kiện ma trận Y là khả nghịch. Oscar có thể tính K = X - 1 Y và nhờ vậy phá được hệ mật. (Nếu Y không khả nghịch thì cấn phải thử các tập khác gồm m cặp rõ - mã). Ví dụ Giả sử bản rõ Friday được mã hoá bằng mã Hill với m = 2, bản mã nhận được là PQCFKU. Ta có e K (5,17) = (15,16), e K (8,3) = (2,5) và e K (0,24) = (10,20). Từ hai cặp rõ - mã đầu tiên, ta nhận được phương trình ma trận: Dùng định lý dễ dàng tính được: Bởi vậy: Ta có thể dùng cặp rõ - mã thứ 3 để kiểm tra kết quả này. Vấn đề ở đây là thám mã phải làm gì nếu không biết m?. Giả sử rằng m không quá lớn, khi đó thám má có thể thử với m = 2,3,. . . cho tới khi tìm được khoá. Nếu một giá trị giả định của m không đúng thì mà trận m×m tìm được theo thu ật toán đã mô tả ở trên sẽ không tương thích với các cặp rõ - mã khác. Phương pháp này, có thể xác định giá trị m nếu chưa biết. 2.2.5. Thám mã hệ mã dòng xây dựng trên LFSR. Ta nhớ lại rằng, bản mã là tổng theo modulo 2 của bản rõ và dòng khoá, tức y i = x i + z i mod 2. Dòng khóa được tạo từ (z 1 ,z 2 ,. . .,z m ) theo quan hệ đệ quy tuyến tính: K ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ 3 8 17 5 5 2 16 15 ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − 15 2 1 9 3 8 17 5 1 ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = 3 8 19 7 5 2 16 15 15 2 1 9 K http://www.ebook.edu.vn 50 trong đó c 0 ,. . .,c m ∈ Z 2 (và c 0 = 1) Vì tất cả các phép toán này là tuyến tính nên có thể hy vọng rằng, hệ mật này có thể bị phá theo phương pháp tấn công với bản rõ đã biết như trường hợp mật mã Hill. Giả sử rằng, Oscar có một xâu bản rõ x 1 x 2 . . .x n và xâu bản mã tương ứng y 1 y 2 . . .y n . Sau đó anh ta tính các bít dòng khoá z i = x i +y i mod 2, 1 ≤ i ≤ n. Ta cũng giả thiết rằng Oscar cũng đã biết giá trị của m. Khi đó Oscar chỉ cần tính c 0 , . . ., c m-1 để có thể tái tạo lại toàn bộ dòng khoá. Nói cách khác, Oscar cần phải có khả năng để xác định các giá trị của m ẩn số. Với i ≥ 1 bất kì ta có : là một phương trình tuyến tính n ẩn. Nếu n ≥ 2n thì có m phương trình tuyến tính m ẩn có thể giải được. Hệ m phương trình tuyến tính có thể viết dưới dạng ma trận như sau: Nếu ma trận hệ số có nghịch đảo ( theo modulo 2 )thì ta nhận được nghi ệm: Trên thực tế, ma trận sẽ có nghịch đảo nếu bậc của phép đệ quy được dùng để tạo dòng khoá là m.(xem bài tập). Minh hoạ điều này qua một ví dụ. Ví dụ : Giả sử Oscar thu được xâu bản mã 101101011110010 2 1 1 0 1 modzcz i m j jm + − = + ∑ = 2 1 0 1 modzcz ji m j jm + − = + ∑ = ()() ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = + + −++ z . . . z z . . . . . z . . . z z z . . . z 1-2m1mm 1m32 m21 110221 . z c, ,c,cz, ,z,z mmmm ()( ) 1 1-2m1mm 1m32 m21 221110 z . . . z z . . . . . z . . . z z z . . . z − + + ++− ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = . z z, ,z,zc, ,c,c mmmm http://www.ebook.edu.vn 51 tương ứng với xâu bản rõ 011001111111001 Khi đó anh ta có thể tính được các bít của dòng khoá: 110100100001010 Ta cũng giả sử rằng, Oscar biết dòng khoá được tạo từ một thanh ghi dịch phản hồi (LFSR) có 5 tầng. Khi đó, anh ta sẽ giải phương trình mà trận sau ( nhận được từ 10 bít đầu tiên của dòng khoá): Có thể kiểm tra được rằng: Từ đó ta có: = (1, 0, 0, 1, 0) Như vậy phép đệ quy được dùng để tạo dòng khoá là: z i+5 = z i + z i+3 mod 2 ()( ) ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 1 0 1 0 1 1 00010 43210 c,c,c,c,c,,,, ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − 0 1 1 0 1 1 1 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 1 0 1 0 1 1 1 ()() ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 0 1 1 0 1 1 1 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 1 0 00010 43210 ,,,,c,c,c,c,c http://www.ebook.edu.vn 52 Các chú giải và tài liệu dẫn Nhiều tài liệu về mật mã cổ điển đã có trong các giáo trình, chẳng hạn như giáo trình của Beker và Piper [BP82] và Denning [DE82]. Xác suất đánh giá cho 26 kí tự được lấy của Beker và Piper. Cũng vậy, việc phân tích mã Vigenère được sửa đổi theo mô tả của Beker và Piper. Rosen [Ro93] là một tài liệu tham khảo tốt về lý thuyết số. Cơ sở của Đại số tuyến tính sơ cấp có thể tìm thấy trong sách của Anton [AN91]. Cu ốn " Những người mã thám " của Kahn [KA67] là một cấu chuyện hấp dẫn và phong phú về mật mã cho tới năm 1967, trong đó Kahn khẳng định rằng mật mã Vigenère thực sự không phải là phát minh của Vigenère. Mật mã Hill lần đầu tiên được mô tả trong [HI29]. Các thông tin về mật mã dòng có thể tìm được trong sách của Rueppel [RU86]. http://www.ebook.edu.vn 53 Chương 3: Chuẩn mã dữ liệu DES (Data Encryption Standard) 3.1. Giới thiệu chung về DES Chuẩn mã hoá dữ liệu DES được Văn phòng tiêu chuẩn của Mỹ (U.S National Bureau for Standards) công bố năm 1971 để sử dụng trong các cơ quan chính phủ liên bang. Giải thuật được phát triển tại Công ty IBM dựa trên hệ mã hoá LUCIFER của Feistel. DES là thuật toán mã hoá khối (block algrithm), với cỡ của một khối là 64 bít. Một khối 64 bít bản rõ được đưa vào, sau khi mã hoá dữ liệu đư a ra là một khối bản mã 64 bít. Cả mã hoá và giải mã đều sử dụng cùng một thuật toán và khoá. Khoá mã có độ dài 64 bít, trong đó có 8 bít chẵn lẻ được sử dụng để kiểm soát lỗi. Các bít chẵn lẻ nằm ở các vị trí 8, 16, 24, , 64. Tức là cứ 8 bít khoá thì trong đó có 1 bít kiểm soát lỗi, bít này qui định số bít có giá trị “1” của khối 8 bít đó theo tính bù chẵn. Nền tảng để xây dựng khối của DES là sự kết hợp đơ n giản của các kỹ thuật thay thế và hoán vị bản rõ dựa trên khoá. Đó là các vòng lặp. DES sử dụng 16 vòng lặp, nó áp dụng cùng một kiểu kết hợp của các kỹ thuật trên khối bản rõ 16 lần (Như hình vẽ) Thuật toán chỉ sử dụng các phép toán số học và lôgíc trên các số 64 bít, vì vậy nó dễ dàng thực hiện vào những năm 1970 trong điều kiện về công nghệ phần cứng lúc bấy gi ờ. Ban đầu, sự thực hiện các phần mềm kiểu này rất thô sơ, nhưng hiện tại thì việc đó đã tốt hơn, và với đặc tính lặp đi lặp lại của thuật toán đã tạo nên ý tưởng sử dụng chíp với mục đích đặc biệt này. http://www.ebook.edu.vn 54 L 15 =R 14 R 15 =L 14 ⊕ƒ( R 14 , K 15 ) Plaintext I P L 0 R 0 L 1 =R 0 R 1 =L 0 ⊕ƒ( R 0 , K 1 ) ƒ L 2 =R 1 R 2 =L 1 ⊕ƒ( R 1 , K 2 ) ƒ R 16 =L 15 ⊕ƒ(R 15 ,K 16 ) L 16 =R 15 ƒ K 1 K 2 Ciphertext I P -1 Sơ đồ mã DE S K 16 [...]... mở rộng thành 48 bít bằng một phép hoán vị mở rộng, tiếp đó khối 48 bít này được kết hợp với khối 48 bít đã được thay đổi và hoán vị của khoá bằng toán tử XOR Khối kết quả của phép tính XOR được lựa chọn ra 32 bít bằng cách sử dụng thuật toán thay thế và hoán vị lần nữa Đó là bốn thao tác tạo nên hàm ƒ Tiếp đó, đầu ra của hàm ƒ được kết hợp với nửa trái bằng một toán tử XOR Kết quả của các bước thực... Mô tả thuật toán DES thực hiện trên từng khối 64 bít bản rõ Sau khi thực hiện hoán vị khởi đầu, khối dữ liệu được chia làm hai nửa trái và phải, mỗi nửa 32 bít Tiếp đó, có 16 vòng lặp giống hệt nhau được thực hiện, được gọi là các hàm ƒ, trong đó dữ liệu được kết hợp với khoá Sau 16 vòng lặp, hai nửa trái và phải được kết hợp lại và hoán vị cuối cùng (hoán vị ngược) sẽ kết thúc thuật toán Trong mỗi... được lặp lại 16 lần, tạo thành 16 vòng của DES (Hình 10) Nếu Bi là kết quả của vòng thứ i, Li và Ri là hai nửa trái và phải của Bi, Ki là khoá 48 bít của vòng thứ i, và ƒ là hàm thực hiện thay thế, hoán vị và XOR với khoá, ta có biểu diễn của một vòng sẽ như sau: Li=Ri-1 Ri=Li-1 XOR ƒ(Ri-1,Ki) http://www.ebook.edu.vn 55 . và tài liệu dẫn Nhiều tài liệu về mật mã cổ điển đã có trong các giáo trình, chẳng hạn như giáo trình của Beker và Piper [BP82] và Denning [DE82]. Xác suất đánh giá cho 26 kí tự được lấy của. trong sách của Anton [AN9 1]. Cu ốn " Những người mã thám " của Kahn [KA67] là một cấu chuyện hấp dẫn và phong phú về mật mã cho tới năm 1967, trong đó Kahn khẳng định rằng mật mã Vigenère. c 0 = 1) Vì tất cả các phép toán này là tuyến tính nên có thể hy vọng rằng, hệ mật này có thể bị phá theo phương pháp tấn công với bản rõ đã biết như trường hợp mật mã Hill. Giả sử rằng, Oscar

Ngày đăng: 13/07/2014, 09:20