Nghiên cứu độ an toàn của hàm băm MD5

65 730 0
Nghiên cứu độ an toàn của hàm băm MD5

Đ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

Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ NGUYỄN HỮU HỒNG NGHIÊN CỨU ĐỘ AN TỒN CỦA HÀM BĂM MD5 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Ngun - 2013 ĐẠI HỌC THÁI NGUN TRƢỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ ĐẠI HỌC THÁI NGUN TRƢỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG NGUYỄN HỮU HỒNG NGHIÊN CỨU ĐỘ AN TỒN CỦA HÀM BĂM MD5 Chun ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƢỜI HƢỚNG DẪN KHOA HỌC TS. Hồ Văn Canh Thái Ngun - 2013 i Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ MỤC LỤC MỞ ĐẦU 1 CHƢƠNG 1 LÝ THUYẾT VỀ HÀM BĂM 2 1.1. Định nghĩa hàm băm 2 1.2. Các tính chất của hàm băm 3 1.3. Xung đột băm 3 1.4. Ứng dụng 4 1.5. Một số hàm băm phổ biến 4 1.5.1. Hàm băm MD4 6 1.5.2. Hàm băm SHA-1 6 1.5.3. Hàm băm SHA-256 8 1.5.4. Hàm băm SHA-384, SHA-512 10 CHƢƠNG 2 HÀM BĂM MD5 15 2.1. Giới thiệu 15 2.2. Khái niệm 15 2.3. Ứng dụng 16 2.4. Thuật giải 16 2.5. Sự khác nhau MD4 và MD5 24 CHƢƠNG 3 ĐÁNH GIÁ ĐỘ AN TỒN MD5 DỰA TRÊN THỬ NGHIỆM TẤN CƠNG 25 3.1. Tấn cơng hàm băm 25 3.2. Các phƣơng pháp tấn cơng hàm băm phổ biến 25 3.2.1. Tấn cơng dựa trên lý thuyết ngày sinh 25 3.2.2. Tấn cơng mở rộng chiều dài trên MD5 (Length-Extension Attack)27 3.2.3. Tấn cơng thuật tốn 29 3.2.4. Tấn cơng theo ngun lý vét cạn 36 ii Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ 3.3. Đánh giá độ an tồn MD5 dựa trên việ GPU 36 3.3.1. Những ƣu điểm của GPU so với CPU 37 3.3.2. Sử dụ 5 39 3.3.3. Kết luận về độ an tồn MD5 48 KẾT LUẬN 52 TÀI LIỆU THAM KHẢO 53 iii Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ LỜI CẢM ƠN Đầu tiên, tơi xin gửi lời cảm ơn chân thành và sắc nhất tới Tiến sỹ Hồ Văn Canh, thầy đã tận tình chỉ bảo và giúp đỡ tơi trong suốt q trình làm luận văn. Bên cạnh những kiến thức tơi còn học hỏi đƣợc ở thầy tinh thần làm việc khoa học và nghiêm túc. Tơi xin chân thành cám ơn tới Khoa CNTT Trƣờng Đại học Cơng nghệ thơng tin và Truyền thơng, các thầy cơ đã giúp đỡ và tận tình truyền đạt các kiến thức cho tơi trong suốt q trình học tập và nghiên cứu. Tơi xin cảm ơn ban chủ nhiệm khoa và các cán bộ đã tạo điều kiện tốt nhất cho chúng tơi trong q trình học tập và hồn thành luận văn của mình. Tơi xin bày tỏ lòng biết ơn tới gia đình, bạn bè, đồng nghiệp và những ngƣời thân đã động viên khích lệ tinh thần và giúp đỡ tơi hồn thành luận văn này. iv Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ LỜI CAM ĐOAN Tơi xin cam đoan, tồn bộ nội dung liên quan tới đề tài đƣợc trình bày trong luận văn là bản thân tơi tự tìm hiểu và nghiên cứu, dƣới sự hƣớng dẫn của Thầy giáo TS. Hồ Văn Canh. Các tài liệu, số liệu tham khảo đƣợc trích dẫn đầy đủ nguồn gốc. Tơi xin chịu trách nhiệm trƣớc pháp luật lời cam đoan của mình. Học viên thực hiện Nguyễn Hữu Hồng v Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ THUẬT NGỮ VIẾT TẮT Số thứ tự Thuật Ngữ Tên Đầy Đủ 1 MAC Message Authentication Code 2 HMAC Keyed-Hash Message Authentication Code 3 opad Outer pad 4 ipad Inner pad 5 SHA Secure Hash Algorithm 6 MD Merkle-Damgård 7 TLS Transport Layer Security 8 CA Certification Authority 9 IPSec Internet Protocol Security 10 GPU Graphic Proccessing Unit 11 SM Streaming Multiprocessor vi Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ Ý NGHĨA CÁC KÝ HIỆU Số thứ tự Ký hiệu Ý nghĩa 1 Phép tốn XOR 2 <<< Phép dịch bít vòng 3 || Phép ghép chuỗi 4 Phép OR 5 Phép AND 6 ⌐ Phép phủ định 7 + Phép cộng module 2 32 8 ROTR n (x) Dịch xoay vòng x sang bên phải n bít 9 SHR n (x) Dịch bít của số x sang bên phải n bít vii Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ DANH MỤC HÌNH VẼ Hình 1.2. Cấu trúc lặp của hàm băm MD 5 Hình 2.1. Thuật tốn mơ tả MD5/SHA-1 19 Hình 3.1. Cấu trúc lặp Merkle-Damgård (sao chép từ Wikipedia) 28 Hình 3. 2. Tấn cơng mở rộng chiều dài 28 Hình 3. 3. Biểu đồ so sánh sự phát triển của GPU và CPU 38 Hình 3.4. So sánh số nhân của GPU và CPU 38 Hình 3.5. Mơ tả chiến lược kiểm tra mật khẩu song song 40 Hình 3. 6. Chia mật khẩu vào các nhóm 41 Hình 3.7. Tạo giá trị băm cho mật khẩu 49 Hình 3.8. Add giá trị băm của mật khẩu vào phần mềm 50 Hình 3.9. Q trình tạo và kiểm tra mật khẩu 50 Hình 3.10. Tìm kiếm mật khẩu thành cơng 51 [...]... nhiều cơng trình nghiên cứu về hàm băm và mức độ an tồn của chúng[3][4][5][6] Vậy, một câu hỏi đƣợc đặt ra hiện nay là: Mức độ an tồn của các hàm băm đến đâu trong thực tế khi mà cơng nghệ tính tốn ngày càng phát triển mạnh mẽ nhƣ hiện nay? Trong Luận v thơng điệp MD5[ 14][16][17] Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ 2 Chƣơng 1 LÝ THUYẾT VỀ HÀM BĂM 1.1 Định nghĩa hàm băm Hàm băm H nhận đầu... để chủ động đánh giá mức độ an tồn của MD5? Chƣơng 3 luận văn sẽ từng bƣớc trả lời câu hỏi trên với giải pháp đánh giá độ an tồn hàm băm MD5 dựa trên thử nghiệm tấn cơng theo ngun lí vét cạn, sử dụng khả năng tính tốn song song của các bộ sử lí đồ họa GPU đa nhân 3.1 Tấn cơng hàm băm Tấn cơng hàm băm là việc phá vỡ các u cầu với hàm băm Attacker thƣờng tấn cơng vào hai tính chất sau đối với hàm băm -... tính chất và ứng dụng của hàm băm MD5 Khảo sát hàm băm MD5 thơng qua ví dụ cụ thể So sánh giữa MD5 và MD4 để thấy đƣợc những ƣu điểm vƣợt trội của MD5 giải thích đƣợc vì sao MD5 lại đƣợc sử dụng rộng rãi, và đang đƣợc coi là một chuẩn trên internet Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ 25 Chƣơng 3 ĐÁNH GIÁ ĐỘ AN TỒN MD5 DỰA TRÊN THỬ NGHIỆM TẤN CƠNG MD5 hiện vẫn đang đƣợc sử dụng rộng... bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ 3 - Hàm băm đƣợc sử dụng trong việc mã hóa password, chữ ký số, giao dịch điện tử, kiểm tra sự tồn vẹn của một file, v.v Hàm băm đƣợc sử dụng phổ biến nhất là hàm băm một chiều (one-way) MD5 và SHA-*[9][12] 1.2 Các tính chất của hàm băm Tính chất 1: Hàm băm H là khơng va chạm yếu Hàm băm H phải có phi xung đột yếu (weak-collision) cao, điều đó có nghĩa là... biến đổi trong từng chu kỳ chịu ảnh hƣởng kết quả của bƣớc biến đổi trƣớc đó nhằm tăng nhanh tốc độ của hiệu ứng lan truyền (avalanche) Các hệ số dịch chuyển xoay vòng trong mỗi chu kỳ đƣợc tối ƣu hóa nhằm tăng tốc độ hiệu ứng lan truyền Ngồi ra, mỗi chu kỳ sử dụng bốn hệ số dịch chuyển khác nhau [9][12] 2 Tập chung nghiên cứu hàm băm MD5, một họ hàm băm đƣợc sử dụng rất rộng rãi hiện nay Giới thiệu... kiện xảy ra đụng độ và ứng dụng của hàm băm trong thực tế Giới thiệu, khảo sát một số hàm băm đƣợc sử dụng nhiều trong thực tế hiện nay nhƣ SHA-1, SHA-384, SHA-512 và đƣa ra sự so sánh Số hóa bởi Trung tâm Học liệu http://lrc.tnu.edu.vn/ 15 Chƣơng 2 HÀM BĂM MD5 2.1 Giới thiệu Hàm băm MD4 (Message Digest 4) đƣợc Giáo sƣ Rivest đề nghị vào năm 1990 Vài năm sau, phiên bản cải tiến MD5 của thuật tốn này... là giá trị của hàm băm [1][2][4][5] Thuật tốn chung cho các hàm băm này nhƣ sau Thuật tốn trên hàm băm C đƣợc lặp nhiều lần, đầu vào của lần lặp sau là khối block message có chiều dài là 512 hoặc 1024 bít (chiều dài các block message là 512 hay 1024 bít là tùy thuộc vào thuật tốn) và giá trị của chainging variable của vòng trƣớc, ta có thể mơ hình nhƣ sau: Hình 1.1 Cấu trúc lặp của hàm băm MD Số hóa... khơng dùng khóa”[2] Hàm băm cũng đóng vai trò hết sức quan trọng trong việc ứng dụng chứng chỉ số mà cụ thể nhất là trong chữ kí số Ngồi ra, hàm băm còn là một cơng cụ hữu hiệu để bảo vệ các passwords ngƣời dùng và bảo vệ dữ liệu có hiệu quả trong các cơ sở dữ liệu phân tán Hiện nay, hàm băm đƣợc sử dụng nhiều ở Việt Nam cũng nhƣ trên thế giới là MD5 và họ SHA Do tầm quan trọng của hàm băm mà hiện nay... biện pháp để đảm bảo an tồn cho các giao dịch này Một trong các biện pháp đó là việc sử dụng hàm băm (hash function) trong cơng tác bảo an Hàm băm khơng những đảm bảo đƣợc sự tồn vẹn của các giao dịch mà còn có thể đảm bảo sự bí mật về dữ liệu của các bên giao dịch[1][2] Ngƣời ta đã khẳng định rằng: “sự ra đời của các hệ mật mã khóa cơng khai cùng với các hàm băm là một cuộc cách mạng của kỹ thuật mật... dụ minh họa về hàm băm Hình 1.1 Minh họa về hàm băm - h đƣợc gọi là giá trị đầu ra của hàm băm, có chiều dài cố định (h còn gọi là message digest hoặc hash value) - M là bức thơng điệp có chiều dài bất kỳ hữu hạn (chiều dài của M khơng vƣợt q 2 64 bít, nếu chiều dài của M vƣợt q 2 64 bít thì chỉ có 2 64 bít đầu đƣợc sử lý, còn tất cả các bít đƣợc bỏ qua trong q trình tính tốn của hàm băm) Số hóa bởi . THUYẾT VỀ HÀM BĂM 2 1.1. Định nghĩa hàm băm 2 1.2. Các tính chất của hàm băm 3 1.3. Xung đột băm 3 1.4. Ứng dụng 4 1.5. Một số hàm băm phổ biến 4 1.5.1. Hàm băm MD4 6 1.5.2. Hàm băm SHA-1. nay, hàm băm đƣợc sử dụng nhiều ở Việt Nam cũng nhƣ trên thế giới là MD5 và họ SHA. Do tầm quan trọng của hàm băm mà hiện nay đã có nhiều cơng trình nghiên cứu về hàm băm và mức độ an tồn của. NGHIÊN CỨU ĐỘ AN TỒN CỦA HÀM BĂM MD5 Chun ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƢỜI HƢỚNG DẪN KHOA HỌC TS. Hồ Văn Canh

Ngày đăng: 19/11/2014, 19:46

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