Tài liệu Đồ án bảo mật thông tin Part 4 doc

5 442 0
Tài liệu Đồ án bảo mật thông tin Part 4 doc

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

Thông tin tài liệu

ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ THỊ TUYẾT HÀ – T012825 II.3.2. Thám mã hệ DES 6-vòng Bây giờ ta sẽ mô tả việc mở rộng ý tưởng trên cho việc thám mã trên hệ DES 6-vòng. Ý tưỏng ở đây là lựa chọn một cách cẩn thận cặp bản rõ với xâu x-or đặc thù và sau đó xác đònh các xác suất của các dãy đặc thù của các xâu x-or qua các vòng lập mã. Bây giờ ta cần đònh nghóa một khái niệm quan trọng sau. Đònh nghóa 3.5: Cho n ≥ 1 là số nguyên. Đặc trưng của vòng thứ n là một danh sách các dạng L 0 ’, R 0 ’, L 1 ’, R 1 ’, p 1 , , L n ’, R n ’, p n thỏa mãn các điều kiện sau: 1. L i ’ = R i-1 ’ với 1 ≤ i ≤ n 2. Cho 1 ≤ i ≤ n và L i-1 , R i-1 và L * i-1 , R * i-1 là đã được chọn sao cho L i-1 ⊕ L * i-1 = L’ i-1 và R i-1 ⊕ R * i-1 = R’ i-1 . Giả sử L i , R i và L i * , R i * là tính được nhờ việc áp dụng một vòng lập mã DES. Khi đó xác suất để L i ⊕ L * i = L i ’ và R i ⊕ R * i = R i ’ chính xác bằng p i. (Chú ý là, xác suất này được tính trên tất cả các bộ có thể có của J = J 1 J 8 ) . Xác suất đặc trưng được đònh nghóa bằng tích p = p 1 × × p n . Nhận xét: Giả sử ta chọn L 0 , R 0 và L 0 * , R 0 * sao cho L 0 ⊕ L 0 * = L 0 ’ và R 0 ⊕ R 0 * = R 0 ’ và ta áp dụng n vòng lập mã của DES, nhận được L 1 . , L n và R 1 , , R n . Khi đó ta không thể đòi hỏi xác suất để L i ⊕ L i * = L i ’ và R i ⊕ R i * = R i ’ cho tất cả i ( 1 ≤ i ≤ n) là p 1 × × p n . Bởi vì các bộ -48 trong lòch khóa K 1 , , K n không phải là độc lập lẫn nhau. (Nếu n bộ-48 này đïc chọn độc lập một cách ngẫu nhiên, thì điều xác nhận là đúng). Nhưng ta sẽ coi rằng p 1 × × p n chính xác là xác xuất đó. Ta còn cần xác nhận là, các xác suất p i trong đặc trưng là các cặp bản rõ được xác đònh tùy ý (nhưng cố đònh) được đặc tả bằng xâu x-or, với 48 bit khóa cho một vòng lập mã DES là có 2 48 khả năng. Do đó việc thám mã sẽ nhằm vào việc xác đònh khóa cố đònh (nhưng chưa biết). Do đó cần cố chọn các bản mã ngẫu nhiên (nhưng chúng có các xâu x- or được đặc tả), hy vọng rằng các xác suất để các xâu x-or trong n vòng lập mã trùng hợp với các xâu x-or, được đặc tả trong đặc trưng, từng đôi một p 1 , , p n tương ứng. Trong ví dụ sau đây, ta sẽ trình bày đặc trưng vòng 1 để làm cơ sở cho việc thám mã DES ba vòng trong hình sau (như ở trên, ta sẽ sử dụng cách biểu diễn theo hệ thập lục phân). L’ 0 = bất kỳ R’ 0 = 00000000 16 L’ 1 = 00000000 16 R’ 1 = L’ 0 p = 1 Ta cũng sẽ mô tả một đặc trưng vòng 1 khác như sau L’ 0 = 00000000 16 R’ 0 = 60000000 16 L’ 1 = 60000000 16 R’ 1 = 00808200 16 p = 14/64 ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ THỊ TUYẾT HÀ – T012825 Ta hãy xét đặc trưng sau một cách chi tiết hơn. Khi f(R 0 , K 1 ) và f(R 0 * , K 1 ) được tính, bước đầu tiên là mở rộng R 0 và R 0 * . Xâu x-or kết quả của hai mở rộng là: 001100 0 Tức là xâu x-or nhập cho S 1 là 001100 và các xâu x-or cho bảy S-hộp khác đều là 000000. Các xâu xuất x-or cho S 2 đến S 8 đều là 0000. Xâu xuất x-or cho S 1 là 1110 với xác suất 14/64 (do N1(001100, 1110) = 14). Nên ta nhận được: C’ = 11100000000000000000000000000000 với xác suất 14/64. p dụng P, ta nhận được: P(C) ⊕ P(C * ) = 00000000100000001000001000000000 trong dạng thập lục phân sẽ là 00808200 16 . Khi xâu này cộng x-or với L 0 ’, ta nhận được R 1 ’ với xác suất 14/64. Do đó L 1 ’ = R 0 ’. Việc thám mã DES sáu vòng dựa trên đặc trưng ba vòng được cho trong hình sau. Trong thám mã 6-vòng, ta bắt đầu với L 0 R 0 . L 0 * R 0 * , L 6 R 6 và L 6 * R 6 * , mà ta phải chọn bản rõ sao cho L 0 ’= 40080000 16 và R .0 ’= 04000000 16 , ta có thể biểu diễn R 0 như sau: L 0 ’ L 1 ’ L 2 ’ L 3 ’ = = = = 40080000 16 04000000 16 00000000 16 04000000 16 R 0 ’ R 1 ’ R 2 ’ R 3 ’ = = = = 04000000 16 00000000 16 04000000 16 40080000 16 p = 1/4 p = 1 p = 1/4 R 6 = L 5 ⊕ f(R 5 , K 6 ) = R 4 ⊕ f(R 5 , K 6 ) = L 3 ⊕ f(R 3 , K 4 ) ⊕ f(R 5 , K 6 ) R 6 * cũng có thể biểu diễn tương tự, ta có R 0 ’ = L 3 ’ ⊕ f(R 3 , K 4 ) ⊕ f(R 3 * , K 4 ) ⊕ f(R 5 , K 6 ) ⊕ f(R 5 * , K 6 ) (4) (Để ý là tương tự như thám mã 3-vòng) R 6 ’ là được biết. Từ đặc trưng ta tính L 3 ’ = 04000000 16 và R 3 ’ = 40080000 16 với xác suất 1/16. Nếu như vậy, thì xâu nhập x-or cho S-hộp trong vòng 4 có thể tính được nhờ hàm mở rộng phải là: 001000000000000001010000 0 Các xâu x-or cho S 2 , S 5 , S 6 , S 7 và S 8 tất cả đều bằng 000000, và vì thế xâu xuất x-or là 0000 cho tất cả năm S-hộp đó trong vòng 4. Điều này có nghóa là, ta có thể tính được các xâu xuất x-or cho năm S-hộp đó trong vòng 6 nhờ phương trình (4). Do đó giả sử ta tính: C 1 ’C 2 ’C 3 ’C 4 ’C 5 ’C 6 ’C 7 ’C 8 ’ = P -1 (R 6 ’ ⊕ 04000000) mỗi C i là xâu bit có độ dài 4. Khi đó với xác suất 1/16, thì sẽ dẫn đến là C 2 ’, C 5 ’, C 6 ’, C 7 ’ và C 8 ’ tương ứng là các xâu x-or xuất của S 2 , S 5 , S 6 , S 7 và S 8 trong vòng 6. Các xâu nhập cho các S-hộp đó trong vòng 6 có thể tính được là E 2 , E 5 , E 6 , E 7 và E 8 ; và E 2 * , E 5 * , E 6 * , E 7 * và E 8 * , với E 1 E 2 E 3 E 4 E 5 E 6 E 7 E 8 = E(R 5 ) = E(L 6 ) và E 1 * E 2 * E 3 * E 4 * E 5 * E 6 * E 7 * E 8 * = E(R 5 * ) = E(L 6 * ) có thể tính được từ các bản rõ như sau: ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ THỊ TUYẾT HÀ – T012825 Input: L 0 R 0 , L 0 * R 0 * , L 6 R 6 và L 6 * R 6 * ; với L 0 ’ = 40080000 16 và R 0 ’ = 04000000 16 . 1. Tính C’ = P -1 (R 6 ’ ⊕ 04000000 16 ) 2. Tính E = E(L 6 ) và E * = E(L 6 * ) 3. for j ∈ {2,5,6,7,8} do tính test j ( E j , E j *, Cj’) Ta cũng sẽ xác đònh 30 bit khóa trong J 2 , J 5 , J 6 , J 7 và J 8 như trong thám mã 3-vòng. Bài toán, để xâu xuất x-or giả đònh cho vòng 6 là chính xác chỉ với xác suất 1/16. Còn 15/16 phần còn lại ta sẽ thường nhận được những xâu vô dụng ngẫu nhiên hơn là các bit khóa. Đònh nghóa 3.6: Giả sử L 0 ⊕ L 0 * = L 0 ’ và R 0 ⊕ R 0 * = R 0 ’. Ta nói rằng, cặp bản rõ L 0 R 0 và L 0 * R 0 * là đúng (right) ứng với đặc trưng nếu L i ⊕ L i * = L i ’ và R i ⊕ R i * = R i ’ cho mọi i, 1 ≤ i ≤ n. Cặp trái với cặp được đònh nghóa gọi là cặp sai (wrong). Ta mong rằng, khoảng 1/16 số cặp của ta là đúng, còn các cặp còn lại là cặp sai ứng với đặc trưng vòng ba của ta. Chiến lược của ta là tính E j . E j * và C j ’như đã mô tả ở trên và sau đó xác đònh test j (E j , E j * , C j ’) với j = 2,5,6,7,8. Nếu ta bắt đầu với một cặp đúng, thì thì các bit khóa chính xác cho mỗi J j sẽ nằm trong tập test j . Nếu cặp là sai, thì trò C j ’ sẽ không đúng, và đó là nguyên do để giả đònh rằng, mỗi tập test j thực chất là ngẫu nhiên. Ta có thể nhận ra cặp đúng theo phương pháp sau: Nếu ⎮test j ⎮= 0, với bất kỳ j∈ {2,5,6,7,8}, khi đó ta tất yếu có được cặp đúng. Bây giờ cho một cặp sai, ta có thể hy vọng rằng, xác suất để ⎪test j ⎪= 0 cho một j cụ thể là xấp xỉ 1/5. Đó là lý do để giả đònh là, N j (E j ’, C j ’) = ⎪test j ⎪ và như đã nhận xét từ trước, xác suất để N j (E j ’, C j ’) = 0 là xấp xỉ 1/5. Xác suất để cả năm test j đều dương là vào khoảng 0.8 5 ≈ 0.33, quả vậy xác suất để ít nhất một test j bằng 0 là vào khoảng 0.67. Nên ta có khoảng 2/3 số cặp là sai, nhờ vào một nhận xét đơn giản, được gọi là phép lọc (filtering operation). Tỷ số của các cặp đúng trên các cặp còn lại sau phép lọc là vào khoảng: 61 311615161 161 = ×+ Ví dụ 3.4: Giả sử ta có cặp bản rõ - bản mã sau: Bản rõ Bản mã 86FA1C2B1F51D3BE C6F21C2B1B51D3BE 1E23ED7F2F553971 296DE2B687AC6340 Chú ý là, L 0 ’ = 40080000 16 và R 0 ’ = 04000000 16 . Xâu nhập và xâu xuất của S-hộp cho vòng 6 được tính như sau: ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ THỊ TUYẾT HÀ – T012825 j E j E j * C j ’ 2 5 6 7 8 111100 111101 011010 101111 111110 010010 111100 000101 010110 101100 1101 0001 0010 1100 1101 Khi đó các tập test j sẽ là như sau: j test j 2 14, 15,26, 30, 32, 33, 48, 52 5 6 7, 24, 36, 41, 54, 59 7 8 34, 35, 48, 49 Ta thấy rằng, hai tập test 5 và test 7 là rỗng , nên cặp này là cặp sai và nó bò loại bỏ bằng phép lọc. Bây giờ giả sử ta có cặp sao cho ⎪test j ⎪> 0 với j = 2,5,6,7,8 là những tập còn lại sau phép lọc.(Bởi vì ta không biết được là cặp nào đúng, cặp nào sai.) Ta nói rằng, xâu bit J 2 J 5 J 6 J 7 J 8 độ dài 30 là được đề xuất bởi cặp nếu J j ∈ test j với j = 2,5,6,7,8. Số các cặp được đề xuất là: ∏ ∈ 8,7,6,5,2j j test Đó là bình thường với số xâu bit được đề xuất là khá lớn. (Chẳng hạn. lớn hơn 80000) Giả sử, ta lập bảng cho tất cả các xâu được đề xuất nhận được từ N cặp, mà không bò loại bởi phép lọc. Với mỗi cặp đúng, thì xâu bit đúng J 2 J 5 J 6 J 7 J 8 sẽ là xâu được đề xuất. Xâu bit đúng sẽ được tính khoảng 3N/16 lần. Xâu bit sai thường xuất hiện ít hơn, bởi vì chúng xuất hiện ngẫu nhiên và có khoảng 2 30 khả năng. (Là một số rất lớn.) Ta nhận được một bảng cực lớn tất cả các xâu được đề xuất, nên ta sử dụng một thuật toán chỉ đòi hỏi một không gian và thời gian ít nhất. Ta có thể mã hóa bất kỳ một tập test j nào thành một véc tơ T j có độ dài 64, với tọa độ thứ i của T j được đặt bằng 1 (0≤ i≤63), nếu xâu bit độ dài 6 là biểu diễn của i ở trong tập test j ; và tọa độ thứ i được đặt bằng 0 trong trường hợp ngược lại ( điều này giống như mảng các bộ đếm mà ta đã sử dụng trong thám mã DES ba vòng). Với mỗi cặp còn lại, ta xây dựng các véc tơ như trên và gọi chúng là T j i , j=2,5,6,7,8; 1 ≤ i≤ N. Với I ⊆ {1, , N} ta nói rằng I là chấp nhận được (allowable) nếu với mỗi j ∈ {2,5,6,7,8} có ít nhất một tọa độ bằng ⎪I⎪ trong véc tơ ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ THỊ TUYẾT HÀ – T012825 ∑ ∈Ii i j T Nếu cặp thứ i là cặp đúng cho mỗi i∈I, thì tập I là chấp nhận được. Do đó ta cho rằng tập chấp nhận được có kích thước (xấp xỉ) 3N/16, là tập đề xuất và ta hy vọng là chỉ gồm các bit khóa đúng chứ không có các xâu khác. Điều này làm đơn giản hóa cho việc xây dựng tất cả các tập chấp nhận được I bằng một thuật toán đệ qui. II.3. 3 Các thám mã vi sai khác Phương pháp thám mã vi sai còn có thể áp dụng để thám các hệ DES nhiều vòng hơn. Với hệ DES 8-vòng đòi hỏi 2 14 bản rõ chọn và các hệ 10-, 12-, 14- và 16-vòng đòi hỏi có tương ứng 2 24 , 2 31 , 2 39 và 2 47 bản mã chọn. Nên nói chung là khá phức tạp. Các kỹ thuật thám mã vi sai được Biham và Shamir phát triển. Các phương pháp thám mã DES khác đã được Matsui sử dụng như là thám mã tuyến tính. . R’ 0 = 60000000 16 L’ 1 = 60000000 16 R’ 1 = 00808200 16 p = 14/ 64 ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ THỊ TUYẾT HÀ – T012825 Ta hãy xét đặc trưng. Chú ý là, L 0 ’ = 40 080000 16 và R 0 ’ = 040 00000 16 . Xâu nhập và xâu xuất của S-hộp cho vòng 6 được tính như sau: ĐỒ ÁN BẢO MẬT THÔNG TIN HỆ MÃ DES NGÔ

Ngày đăng: 21/01/2014, 10:20

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan