Tìm hiểu và khai thác các công cụ kẻ khóa md5, des, và thám mã 3 vòng

148 514 0
Tìm hiểu và khai thác các công cụ kẻ khóa md5, des, và thám mã 3 vòng

Đ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

Tìm hiểu và khai thác các công cụ kẻ khóa md5, des, và thám mã 3 vòng

1 | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC PHẠM VĂN ĐỒNG KHOA CƠNG NGHỆ THƠNG TIN -0O0 -0O0 0O0 -ĐỀ ÁN: Mơn Bảo Mật thơng Tin TÌM HIỂU HỆ MÃ CHUẨN CÀI ĐẶT MD5, DES VÀ THÁM MÃ VỊNG GVHD: NGUYỄN TRỌNG KHƠI SVTH: NGUYỄN QUỐC HÙNG VÕ TRUNG QUYỀN NGUYỄN THÀNH SƠN Tháng Năm 2012 Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES MỤC LỤC Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES TÌM HỂU VÀ KHAI THÁC CƠNG CỤ KẺ KHĨA MD5, DES, 3DES Lời nói đầu Trước bạn tạo chương trình bẻ khóa nhằm vào số serial chương trình (còn gọi keygen), ngồi việc biết code ngơn ngữ lập trình đó, bạn nên học qua thuật tốn mã hóa Vì việc học cho tốt ngơn ngữ lập trình chưa bạn tạo keygen Luyện đọc code cho tốt việc nên làm, chưa bạn nắm nghĩa đoạn code Vì phần mềm sau họ dùng cách mã hóa làm phức tạp q trình bẻ khóa Khi ta khơng nắm vững số thuật tốn mã hóa, dù bạn có thiệt giỏi, bạn nhiều thòi gian để bẻ khóa Nhưng bạn nắm vững thuật tốn mã hóa “chuyện nhỏ” Học thuật tốn học nhiều điều Nó giống việc học bảng cửu chương Chúng ta phải học thuộc loại thuật tốn mã hóa, quen với nó, thấy làm việc, thân thiết với để gặp nó, hay “hậu duệ” gần giống khơng phải bỡ ngỡ Mỗi người có dấu vân tay riêng, khơng giống Chính tạo hóa tạo chúng, từ ý tưởng đó, người nghĩ việc: khơng tự tạo “dấu vân tay” cho để phân biệt chúng với Ví dụ tên người chẳng hạn (tên chuỗi kí tự gọi String) Do lĩnh vực cơng nghệ thơng tin người ta bắt đầu nghiên cứu cách để tạo “dấu vân tay” cho chuỗi String Một cách thuật tốn Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES MD5 mà chúng tơi nói “dấu vân tay” thuật tốn MD5 tạo từ String gọi message digest (gọi tắt md) hay gọi “MD5 hashes” (gọi tắt hashes) Bản báo cáo tìm hiểu cách thực MD5, ngun lý thuật tốn cụ thể Từ giúp nhận dạng chương trình sử dụng MD5 Giờ bắt đầu tìm hiểu MD5 2.1 Giới thiệu MD5(Message-Digest algorithm) Giới thiệu: Từ ý tưởng người có dấu vân tay riêng để phân biệt người với Ronald Rivest tạo MD5 cơng nghệ tạo dấu vân tay(fingerprint) cho đó(văn bản,password…)để phân biệt chúng với -MD5 (Message-Digest algorithm 5) hàm băm để mã hóa với giá trị băm 128bit Từng xem chuẩn Internet, MD5 sử dụng rộng rãi chương trình an ninh mạng, thường dùng để kiểm tra tính ngun vẹn tập tin MD5 thiết kế Ronald Rivest vào năm 1991 để thay cho hàm băm trước đó, MD4 (cũng ơng thiết kế, trước MD2) 2.2 Ứng dụng quan trọng: 1/ MD5 sử dụng rộng rải giới phần mềm để đảm bảo tập tin tải khơng bị hỏng Người sử dụng so sánh thơng số kiểm tra phần mềm MD5 cơng bố với thơng số kiểm tra phần mềm tải MD5.(ví dụ:khi người sư dụng download file mạng nhà phát triển ứng dụng tạo mã MD5 cho file đó.khi vừa tải có mã MD5.nếu mã trùng file an tồn ngược lại file download có virut đó)Hệ điều hành Unix sử dụng MD5 để kiểm tra gói mà Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES phân phối, hệ điều hành Windows sử dụng phần mềm hãng thứ ba 2/ MD5 dùng để mã hóa mật Mục đích việc mã hóa biến đổi chuổi mật thành đoạn mã khác, cho từ đoạn mã khơng thể lần trở lại mật Có nghĩa việc giải mã khơng thể phải khỗng thời gian vơ tận (đủ để làm nản lòng hacker) 2.3 Đặc điểm MD5 - Từ đoạn văn đầu vào tạo string gọi Message Degist Hay gọi MD5 hash có độ dài cố định mã hóa dạng hexa -Từ đọan văn đầu vào tạo hash đầu khơng có hash cho văn - Từ hash đầu ta khơng suy ngược lại plantext ban đầu Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES Thuật giải 3.1 Đầu vào đầu 3.1.1 Đầu vào: -Thơng điệp đưa vào sẻ cắt thành khối 512 bits Thơng điệp đưa vào đệm để chiều dài chia hết cho 512 Bộ đệm hoạt động sau: +Trước tiên chèn bit vào cuối thơng điệp +Tiếp hàng loạt bit Zero chiều dài nhỏ bội số 512 khoảng 64 bit +Phần lại sẻ lấp đầy số ngun 64 bit biểu diển chiều dài ban đầu thơng điệp 3.1.2 Đầu ra: Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES -MD5 biến đổi thơng điệp có chiều dài thành khối có kích thước cố định 128 bits Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES 3.2 Giải thuật Thuật tốn MD5 hoạt động 128 bit Chia nhỏ thành từ 32 bit, kí hiệu A,B,C D Các giá trị số cố định Sau thuật tốn sẻ ln phiên hoạt động khối 512 bit Mỗi khối phối hợp với Q trình xữ lý khối thơng điệp bao gồm bước tương tự nhau, gọi vòng (“round”) Mỗi vòng lại gồm 16 q trình tương tự dựa hàm chiều F, phép cộng module phép xoay trái… Hình bên mơ tả q trình vòng Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES Q trình xử lý block Có hàm chiều F Hùng -Trung Quyền- Sơn sử dụng Mỗi vòng sử dụng hàm khác 10 | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES Đây q trình thực xử lý hàm F, G, H, I trên: Vòng (Round 1): Ký hiệu [abcd k s t] bước thực phép tốn a = b + ((a + F(b, c, d) + X[k] + T[t]) [...]... diễn bởi các mã sau: Hùng -Trung Quyền- Sơn 29 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES Input: L0R0, L0*R0*, L3R3 và L3*R3*, với R0 = R0* 1 Tính C’ = P-1(R3’ ⊕ L0’) 2 Tính E = E(L3) và E* = E(L*) 3 for j = 1 to 8 do compute testj(Ej, Ej*, Cj’) Việc mã thám sẽ sử dụng một số bộ ba E, E*, C’ như vậy Ta sẽ lập tám bảng các bộ đếm và do đó xác đònh được 48 bit trong K3, là khóa cho vòng ba... 486911026ACDFF31 45FA285BE5ADC 730 37 5BD31F6ACDFF31 134 F7915AC2 534 57 35 7418DA013FEC86 D8A31B2F28BBC5CF 12549847013FEC86 0F317AC2B23CB944 Từ cặp đầu tiên ta tính các xâu nhập của S-hộp (cho vòng 3) từ các phương trình (2) và (3) Chúng là: E = 000000000111111000001110100000000110100000001100 Hùng -Trung Quyền- Sơn 30 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES E* = 101111110000001010101100000001010100000001010010... nhận được bản mã trong dạng thập lục phân như sau: Hùng -Trung Quyền- Sơn 22 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES 85E8 135 40F0AB405 II THÁM MÃ DES Một phương pháp rất nổi tiếng trong thám mã DES là thám mã vi sai“ (differential cryptanalysic) do Biham và Shamir đề xuất Đó là phương pháp thám với bản rõ được chọn Nó không được sử dụng trong thực tế để thám mã DES 16 vòng, mà chỉ... f(R0, K1) ⊕ f(R2, K3) R3* có thể biểu diễn một cách tương tự , do vậy: R3’ = L0’ ⊕ f(R0, K1) ⊕ f(R0*, K1) ⊕ f(R2, K3) ⊕ f(R2*, K3) Hùng -Trung Quyền- Sơn 28 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES Bây giờ, giả sử ta đã chọn được các bản rõ sao cho R 0 = R0*, chẳng hạn: R0’ = 00 0 Khi đó f(R0, K1) = f(R0*, K1), và do đó: R3’ = L0’⊕ f(R2, K3) ⊕ f(R2*, K3) Ở điểm này R3’ là được biết khi... một bộ ba cụ thể Cho t bộ ba, ta hy vọng tìm được duy nhất một bộ đếm có trò t; trò đó sẽ tương ứng với trò đúng của các bit khóa trong J 1 1 Thám mã hệ DES - 3 vòng Bây giờ ta sẽ xét ý tưởng vừa trình bày cho việc thám mã hệ DES - ba vòng Ta sẽ bắt đầu với cặp bản rõ và các bản mã tương ứng: L 0R0, L0*R0*, L3R3 và L3*R3* Ta có thể biểu diễn R3 như sau: R3 = L2 ⊕ f(R2, K3) = R1 ⊕ f(R2, K3) = L0 ⊕ f(R0,... khóa, bằng cách quan sát lòch khóa cho vòng ba Suy ra là K có dạng: 0001101 0110001 01?01?0 1?00100 0101001 0000??0 111?11? ?100011 với các bit kiểm tra đã được loại bỏ và “?” ký hiệu bit khóa chưa biết Khóa đầy đủ (trong dạng thập lục phân, gồm cả bit kiểm tra) sẽ là: 1A624C89520DEC46 Hùng -Trung Quyền- Sơn 34 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES 2 Thám mã hệ DES 6 -vòng Bây giờ... trong khóa khi đó có thể tìm được hoàn toàn từ 28 = 256 khả năng cho 8 bit khóa Bây giờ ta sẽ minh họa điều đó qua ví dụ sau Ví dụ 3. 3 Giả sử ta có ba cặp bản rõ và bản mã, với các bản mã cùng có các xâu x-or được mã hóa bởi cùng một khóa Để ngắn gọn ta sử dụng hệ thập lục phân: Bản rõ Bản mã 748502CD38451097 03C7 030 6D8A09F10 38 74756 438 451097 78560A0960E6D4CB 486911026ACDFF31 45FA285BE5ADC 730 37 5BD31F6ACDFF31... -Trung Quyền- Sơn 36 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES trong dạng thập lục phân sẽ là 0080820016 Khi xâu này cộng x-or với L0’, ta nhận được R1’ với xác suất 14/64 Do đó L1’ = R0’ 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 L0R0 L0*R0*, L6R6 và L6*R6*, mà ta phải chọn bản rõ sao cho L0’= 4008000016 và R.0’= 0400000016,... cho tám S-hộp trong vòng ba Bây giờ, R2 = L3 và R2* = L3* là đã biết (chúng là một phần của các bản mã) Từ đây ta có thể tính: E = E(L3) (2) E* = E(L3*) (3) và sử dụng hàm mở rộng E được biết công khai Chúng là những xâu nhập cho các Shộp cho vòng ba Như vậy giờ ta đã biết E, E*, và C’ cho vòng ba và ta có thể tiếp tục xây dựng các tập test1, , test8 của các trò có thể có cho các bit khóa trong J1, ,... mô tả các phân bô đó ta đưa ra đònh nghóa sau Đònh nghóa 3. 3: Với 1 ≤ j ≤ 8 và với các xâu bit Bj’ độ dài 6 và Cj’ độ dài 4, ta đònh nghóa: INj(Bj’,Cj’) = {Bj ∈ (Z2)6 : Sj(Bj) ⊕ Sj(Bj ⊕ Bj’) = Cj’} và Nj(Bj’, Cj’) = INj(Bj’, Cj’) Hùng -Trung Quyền- Sơn 24 | Tìm hiểu và khai thác các cơng cụ kẻ khóa MD5, DES, 3DES Bảng sau sẽ cho các xâu nhập có thể có với xâu x-or nhập 110100 Xâu xuất x-or Các xâu ...2 | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES MỤC LỤC Hùng -Trung Quyền- Sơn | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES TÌM HỂU VÀ KHAI THÁC CƠNG CỤ KẺ KHĨA MD5, DES, 3DES Lời... ta nhận mã dạng thập lục phân sau: Hùng -Trung Quyền- Sơn 22 | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES 85E8 135 40F0AB405 II THÁM MÃ DES Một phương pháp tiếng thám mã DES thám mã vi sai“... xác đònh 30 bit khóa J2, J5, J6, J7 J8 thám mã 3vòng Bài toán, để xâu xuất x-or giả đònh cho vòng xác với xác suất Hùng -Trung Quyền- Sơn 38 | Tìm hiểu khai thác cơng cụ kẻ khóa MD5, DES, 3DES 1/16

Ngày đăng: 06/11/2015, 01:03

Từ khóa liên quan

Mục lục

  • TÌM HIỂU HỆ MÃ CHUẨN

  • 1 Lời nói đầu

  • 2 Giới thiệu về MD5(Message-Digest algorithm)

    • 2.1 Giới thiệu:

    • 2.2 Ứng dụng quan trọng:

    • 2.3 Đặc điểm của MD5

    • 3 Thuật giải

      • 3.1 Đầu vào và đầu ra

        • 3.1.1 Đầu vào:

        • 3.1.2 Đầu ra:

        • 3.2 Giải thuật

        • 4 Bẻ khóa MD5( những lỗ hổng của MD5)

          • 4.1 I Những Lỗ Hổng

          • I. LẬP MÃ DES

          • II. THÁM MÃ DES

            • 1. Thám mã hệ DES - 3 vòng

              • Bản rõ

              • 2. Thám mã hệ DES 6-vòng

              • 3 Các thám mã vi sai khác

              • 1. HỆ MÃ DES 3 VÒNG

              • 2. Giao Diện ( Package GiaoDien).

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

Tài liệu liên quan