Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)

77 389 0
Nghiên cứu kỹ thuật Rainbow  Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)

Đ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

Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)Nghiên cứu kỹ thuật Rainbow Crack thám khóa mã RC4 và ứng dụng (LV thạc sĩ)

i ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG ĐẶNG THÀNH CÔNG NGHIÊN CỨU KỸ THUẬT RAINBOW- CRACK THÁM KHÓA MÃ RC4 VÀ ỨNG DỤNG Chuyên 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 NGUYỄN NGỌC CƢƠNG Thái Nguyên, năm 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ii LỜI CAM ĐOAN Tôi cam đoan công trình nghiên cứu riêng Các số liệu, kết nêu luận văn trung thực chƣa đƣợc công bố công trình khác Qua em xin chân thành cảm ơn toàn thể thầy cô khoa đào tạo sau đại học trƣờng Đại học Công nghệ Thông tin Truyền thông đặc biệt Thầy TS Nguyễn Ngọc Cƣơng, tạo điều kiện thuận lợi hƣớng dẫn em để hoàn thành luận văn Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn iii MỤC LỤC LỜI CAM ĐOAN i MỤC LỤC iii DANH MỤC BẢNG BIỂU v DANH MỤC HÌNH ẢNH vi LỜI MỞ ĐẦU .1 1.Tính cấp thiết đề tài .1 Mục tiêu nghiên cứu: Nội dung nghiên cứu: Chƣơng 1: MẬT MÃ RC4 VÀ KỸ THUẬT TIME-MEMORY TRADE –OFF ÁP DỤNG TRONG BÀI TOÁN TẤN CÔNG MẬT MÃ .3 1.1 Tổng quan RC4 1.2 Các kỹ thuật thám mã 1.2.1 WEP 1.2.2 Tấn công chọn mã .5 1.2.3 Thám mã tích cực: .5 1.2.4 Thám mã Affine 1.2.5 Thám mã Vigenere 1.2.6 Các tính RainbowCrack: 1.2.7 Các công cụ mối quan hệ chúng RainbowCrack 1.3 Xây dựng RainbowCrack: 1.4 Thuận toán MD5 .15 1.4.1 Giới thiệu thuật toán: .15 1.4.2 Thuật toán MD5 24 Chƣơng 2: KỸ THUẬT TẤN CÔNG RAINBOW ĐỐI VỚI RC4 29 2.1 Các kỹ thuật công mật .29 2.1.1 Kỹ thuật công Bruteforce .29 2.2.2 Kỹ thuật công vào hệ thống có cấu hình không an toàn .29 2.2.3 Kỹ thuật công dùng Cookies .30 2.2.4 Kỹ thuật time – memory trade –off (TMTO) áp dụng toán công mật mã 30 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn iv 2.2.5 Kỹ thuật RainbowCrack: .31 2.2.6 Xác thực mật bảo mật văn MS- Word 2007 31 2.2.6.1 Lƣợc đồ xác thực mật bảo mật văn 32 2.2.6.2 Cấu trúc phần mềm RainbowCrack 33 2.2.6.3 Cấu trúc tổng thể phần mềm RainbowCrack 35 2.2.6.4 Một số hàm RainbowRack 36 2.2.7 Cấu trúc phần mềm Wcracker 39 2.2.7.1 Phần mềm Wcracker 39 2.2.7.2 Nâng cấp Wcracker .40 2.2.8.Mô hình bảo mật tệp văn MS- Word 2007 .45 2.2.9 Lựa chọn điểm công 47 2.2.10 Phần mềm song song tìm khóa RC4 Word 2007 .49 2.2.10.1 Mô hình tính toán song song 49 2.2.10.2 Lƣu đồ trạng thái Master Slave 49 2.2.11 Phần mềm tính toán tham số công Rainbow RC4 50 2.2.11.1 Cấu trúc tĩnh chƣơng trình 50 2.2.11.2 Giải thuật hàm chức 52 Chƣơng 3: XÂY DỰNG CHƢƠNG TRÌNH TÍNH TOÁN THAM SỐ TẤN CÔNG RAINBOW ĐỐI VỚI RC4 .56 3.1 Các tính công RC4 Wcracker 56 3.1.1 Chức kiểm tra mật 56 3.1.2 Chức thiết lập tham số công 58 3.1.3 Chức công tìm khóa RC4 59 3.1.4 Cài đặt chƣơng trình 60 3.2 Lựa chọn tham số Rainbow để công RC4 65 3.3 Xây dựng bảng Rainbow 65 3.4 Thử nghiệm tính mở rộng Wcracker 66 3.5 Kết phân tích khóa phần mềm xử lý song song 67 KẾT LUẬN .68 TÀI LIỆU THAM KHẢO 70 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn v DANH MỤC BẢNG BIỂU Bảng 1.1: Bảng Thám mã Affine Bảng1.2: Bản mã hệ mật mã Vigenere .7 Bảng 2.1: Bảng cầu vồng-Rainbow Table 31 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn vi DANH MỤC HÌNH ẢNH Hình 1.1: Các tính RainbowCrack Hình1.2: Các công cụ Phần mềm RainbowCrack Hình 1.3: Giao diện Rainbow Crack 10 Hình 1.4: Mô hình tổng quát sản sinh thông báo rút gọn sử dụng MD5 19 Hình 1.5: Mô hình biểu diễn công việc xử lý khối đơn 512 bit (HMD5) .20 Hình 1.6: Các yếu tố MD5 22 Hình 2.1: Bảng cầu vồng-Rainbow Table 31 Hình 2.2: Lƣợc đồ xác thực mật bảo mật văn 32 Hình 2.3: Cấu trúc tổng thể phần mềm RainbowCrack .35 Hình 2.4: Hộp thoại option Wcracker 40 Hình 2.5: Mô hình bảo mật mật MS- Word 2007 47 Hình 2.6: Mô hình bảo mật mật .48 Hình 2.7: Mô hình tính toán song song .49 Hình 2.8: Lƣu đồ trạng thái Master Slave .50 Hình 3.1: Thử nghiệm với văn MS-Word 2007 56 Hình 3.2: Thử nghiệm với văn MS-Word 2007 57 Hình 3.3: Tính cài đặt tham số Wcracker 58 Hình 3.4: Các tham số đƣợc Wcracker lƣu trữ registry 59 Hình 3.5: Tấn công tìm khóa RC4 59 Hình 3.6: Kết thử nghiệm công với tệp TestTest.doc 60 Hình 3.7: Lựa chọn tham số Rainbow để công RC4 65 Hình 3.8: Kết thử nghiệm chức kiểm tra mật Wcracke 66 Hình 3.9: Kết chức công tìm khóa RC4 66 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn LỜI MỞ ĐẦU 1.Tính cấp thiết đề tài RC4 tên thuật toán mã hóa đƣợc sử dụng WEP, MS-OFFICE Một thuật toán mã hóa tập hợp hoạt động mà sử dụng để biến đổi văn chƣa mã hóa thành mật mã Nó hữu ích, trừ có thuật toán giải mã tƣơng ứng Trong trƣờng hợp RC4, thuật toán đƣợc sử dụng để mã hóa giải mã Giá trị thuật toán mã hóa khả bảo mật cao dễ dàng sử dụng Sức mạnh thuật toán đƣợc đo độ khó để crack mã đƣợc mã hóa thuật toán Chắc chắn có phƣơng pháp mạnh RC4 Tuy nhiên, RC4 đơn giản để thực đƣợc coi mạnh, đƣợc sử dụng cách Kỹ thuật đánh đổi nhớ-thời gian (Time Memory Trade –Off) có tên gọi khác đánh đổi không gian-thời gian dùng để việc sử dụng nhớ lƣu trữ liệu tính toán trƣớc với mục đích giảm thời gian tính toán thao tác cụ thể Đây kỹ thuật đƣợc áp dụng số toán chia thao tác tính toán thành hai phần: tính toán trƣớc tra cứu liệu chuẩn bị trƣớc Nếu tính toán lƣu trữ trƣớc đƣợc nhiều thời gian giải toán cụ thể tƣơng đƣơng với thời gian tra cứu Các phƣơng tiện lƣu trữ máy tính ngày lớn làm cho khả ứng dụng kỹ thuật TMTO ngày thực Đã có nhiều ứng dụng sử dụng kỹ thuật TMTO để giải vấn đề tốc độ nhớ lƣu trữ Chẳng hạn, toán liên quan đến tra cứu bảng liệu, toán lƣu trữ liệu dạng nén, toán lƣu trữ thuật toán, lƣu trữ kết hình ảnh hiển thị công thức toán học trang HTML, Kỹ thuật mật mã cần làm việc với không gian liệu lớn (không gian khóa) Tuy nhiên, số chế độ làm việc, tổ chức tính toán sẵn mã rõ để thành lập từ điển tra cứu cho phép mã hóa giải mã nhanh Mã thám lợi dụng tính chất để công mật mã (kiểu công Brute-Force) có đủ nhớ Đề tài luận văn lựa chọn mật mã RC4 với độ dài khoá 40 bit để nghiên cứu Đây dạng RC4 ứng dụng nhiều phần mềm Độ dài khóa tƣơng Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn đƣơng với số kết nghiên cứu ứng dụng kỹ thuật TMTO công bố số thuật toán mật mã khác Kết nghiên cứu đề tài hƣớng mở cho nghiên cứu ứng dụng công mật bảo vệ tệp văn soạn số phần mềm xử lý văn Đồng thời kinh nghiệm cho mã thám viên kỹ thuật TMTO áp dụng cho công nhiều dạng mật mã ứng dụng khác Đề tài luận văn tìm hiểu lý thuyết kỹ thuật TMTO, vấn đề cần quan tâm ứng dụng, cải tiến công bố gần cho kỹ thuật TMTO Đề tài tiến hành áp dụng kỹ thuật TMTO vào thực tế công giải thuật mật mã cụ thể có khả triển khai ứng dụng thực tế Mục tiêu nghiên cứu: - Nghiên cứu kỹ thuật Time Memory Trade-Off (TMTO) đánh đổi không gian lƣu trữ với thời gian công mật mã Nghiên cứu cải tiến “Điểm phân biệt” “Bảng cầu vồng” đƣợc công bố kỹ thuật - Sử dụng kỹ thuật TMTO đƣợc Oechslin áp dụng với cải tiến “Rainbow Crack” công thám khoá mã RC4 ứng dụng phần mềm soạn thảo văn MS-WORD phiên 2007 MicroSoft Nội dung nghiên cứu: Luận văn đƣợc trình bày chƣơng, có phần mở đầu, phần kết luận, phần mục lục, phần tài liệu tham khảo Các nội dung luận văn đƣợc trình bày theo cấu trúc nhƣ sau: Chƣơng 1: Mật mã RC4 kỹ thuật Time-Memory Trade-Off áp dụng toán công mật Chƣơng 2: Kỹ thuật công Rainbow RC4 Chƣơng 3: Xây dựng chƣơng trình tính toán tham số công Rainbow RC4 Bằng cố gắng nỗ lực thân đặc biệt giúp đỡ tận tình, chu đáo thầy giáo TS Nguyễn Ngọc Cƣơng , em hoàn thành luận văn thời hạn Do thời gian làm đồ án có hạn trình độ nhiều hạn chế nên tránh khỏi thiếu sót Em mong nhận đƣợc đóng góp ý kiến thầy cô nhƣ bạn sinh viên để luận văn hoàn thiện Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn Chƣơng 1: MẬT MÃ RC4 VÀ KỸ THUẬT TIME-MEMORY TRADE –OFF ÁP DỤNG TRONG BÀI TOÁN TẤN CÔNG MẬT MÃ Trong chƣơng trình bày tập hợp thông tin sở kỹ thuật TMTO; cải tiến “điểm phân biệt” Rivest “bảng cầu vồng” Oechslin Nội dung chƣơng làm rõ phƣơng thức chia không gian tìm kiếm thành phận tổ chức lƣu trữ hiệu phận không gian tìm kiếm Đặc biệt phƣơng pháp tổ chức “bảng cầu vồng” Oechslin, phƣơng pháp đƣợc ứng dụng hiệu phần mềm OPH-Crack Thuật toán mật mã RC4 đóng vai trò trung tâm lƣợc đồ xác thực mật Bên cạnh phƣơng pháp thám mã khác đƣợc áp dụng nhiều thực tế 1.1 Tổng quan RC4 RC4 tên thuật toán mã hóa đƣợc sử dụng WEP, MS-OFFICE Một thuật toán mã hóa tập hợp hoạt động mà sử dụng để biến đổi văn chƣa mã hóa thành mật mã Nó hữu ích, trừ có thuật toán giải mã tƣơng ứng Trong trƣờng hợp RC4, thuật toán đƣợc sử dụng để mã hóa giải mã Giá trị thuật toán mã hóa khả bảo mật cao dễ dàng sử dụng Sức mạnh thuật toán đƣợc đo độ khó để crack mã đƣợc mã hóa thuật toán Chắc chắn có phƣơng pháp mạnh RC4 Tuy nhiên, RC4 đơn giản để thực đƣợc coi mạnh, đƣợc sử dụng cách Thật may mắn RC4 đơn giản để thực mô tả Ý tƣởng mã hóa RC4 tạo chuỗi trình tự giả ngẫu nhiên (giả ngẫu nhiên) byte đƣợc gọi khóa dòng, sau đƣợc kết hợp với liệu cách sử dụng toán tử OR (XOR) Toán tử XOR kết hợp hai byte tạo byte Nó làm điều cách so sánh bit tƣơng ứng byte Nếu chúng nhau, kết 0, chúng khác nhau, kết Về mặt lý thuyết, RC4 hệ thống mã hóa hoàn toàn an toàn tạo dòng giả ngẫu nhiên chính, byte thực ngẫu nhiên Nhƣng đủ chắn an toàn cho ứng dụng, đƣợc áp dụng RC4 mật mã có cỡ khóa biến đổi Ron Rivest phát triển vào năm 1987 cho liên hợp an ninh liệu RSA Trong bảy năm sở hữu độc Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn quyền chi tiết thuật toán ta có đƣợc sau ký thỏa thuận không tiết lộ bí mật Vào tháng năm 1994, ngƣời lạc danh gửi mã nguồn qua bƣu điện vào danh sách thƣ tín Cypherpunks, Nó nhanh chóng lan tỏa đến nhóm Usenet qua Internet đến site ftp giới Liên hiệp an ninh liệu RSA tuyên bố bí mật thƣơng mại đƣợc công bố, nhƣng việc muộn Bởi đƣợc thảo luận phân tích kỹ Usenet, đọc phân phát hội nghị đƣợc đƣa vào giáo trình mật mã RC4 có địa vị xuất đặc biệt độ dài khóa 40 bít Địa vị xuất đặc biệt dẫn đến việc để làm độ an toàn thuật toán, liên hợp an ninh liệu RSA nói bóng gió nhiều nãm có Tên thuật toán ðýợc thýõng mại hóa ðó ngýời viết mã riêng phải gọi tên khác Các tài liệu bên khác liên hợp an ninh liệu RSA chƣa đƣợc công bố RC4 phần mềm sản phẩm mật mã thƣơng mại, bao gồm Lotus Notes, Apple Computer’s AOCE ORACLE Security SQL Nó phận dẫn kỹ thuật Cellular Digital Packed Data RC4 họ thuật toán phụ thuộc vào tham số nguyên dƣơng, mà điển hình trƣờng hợp n= Ở thời điểm t, trạng thái bên RC4 gồm bảng n S1=(S1(l)) l20 1 có từ n-bít trỏ n-bít it jt Do cỡ nhớ la M=n2n+2n(bít) Gọi Zt từ n-bít RC4 thời điểm t Bít có nghĩa thấp từ bít bên trái 1.2 Các kỹ thuật thám mã 1.2.1 WEP WEP (Wired Equivalent Privacy) thuật toán nhằm bảo vệ trao đổi thông tin chống lại nghe trộm, chống lại kết nối mạng không đƣợc cho phép nhƣ chống lại việc thay đổi làm nhiễu thông tin truyền WEP sử dụng stream cipher RC4 với mã 40 bit số ngẫu nhiên 24 bit (initialization vector - IV) để mã hóa thông tin Thông tin mã hóa IV đƣợc gửi đến ngƣời nhận Ngƣời nhận giải mã thông tin dựa vào khóa WEP biết trƣớc Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 57 Với mật đúng, Wcracker xác nhận mật hợp lệ (VALID PASSWORD), thông báo mật dạng rõ giá trị HASH mật Khóa RC4 byte đầu giá trị HASHPASS Hình 3.2: Thử nghiệm với văn MS-Word 2007 Các hình thử nghiệm với văn MS-Word 2007 có tên TestTest.doc Đây tệp văn có cài đặt mật Các giá trị tham gia trình xác thực mật gồm: DOCID = 7400621C6B3A642D0248FA9C94DFCF7A (Hexa) SALT = D6B92DEC5F2F1FBA24D2E4E721585405 (Hexa, mã hóa) HASHSALT = 7AEE5518193E92A47FEDF1BA2DA6CDD0 (Hexa, mã hóa) Với mật “testtest” mà ngƣời sử dụng đƣa ra, Wcracker xác nhận mật đúng: Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 58 HashedPass:9B2BB6008362C3D49EE054E4AC6C1E1C (Hexa) VALID PASSWORD = testtest Nhƣ hàm thƣ viện RC4, lƣu đồ thuật toán xác thực mật MSWord 2007 mà Đề tài nghiên cứu cài đặt xác Giá trị HASHPASS đƣợc sử dụng để so sánh với kết công tìm khóa RC4 mô tả dƣới Kiểm tra mật bƣớc nghiên cứu quan trọng nhằm đảm bảo lƣu đồ xác thực mật hàm thƣ viện mật mã, hàm băm hoạt động 3.1.2 Chức thiết lập tham số công Tấn công mật MS-Word 2007 sử dụng bảng Rainbow yêu cầu cài đặt tham số cho Wcracker Đó tên bảng Rainbow mà giải thuật công cần sử dụng Tính cài đặt tham số Wcracker đƣợc mở rộng nhƣ hình dƣới Hình 3.3: Tính cài đặt tham số Wcracker Các tham số đƣợc Wcracker lƣu trữ registry hệ thống để cần thiết lập lần cho lần công với bảng Rainbow Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 59 Hình 3.4: Các tham số Wcracker lưu trữ registry 3.1.3 Chức công tìm khóa RC4 Tấn công tìm khóa RC4 đƣợc xây dựng theo phƣơng thức lợi dụng tính có “sắp đặt” chuỗi Rainbow MD5 Các giá trị MD5 chuỗi đƣợc truy vấn đƣợc sử dụng làm khóa RC4 lƣu đồ xác thực mật Với khóa đúng, lƣu đồ xác nhận giá trị băm mật lƣu trữ giá trị băm tính toán đƣợc Đến đó, việc truy vấn chuỗi Rainbow dừng lại Khóa đƣợc thông báo cho ngƣời sử dụng Hình 3.5: Tấn công tìm khóa RC4 Cần lƣu ý, Đề tài không đặt mục tiêu giải mã tệp văn với khóa RC4 Chúng ta có phần mềm thực thao tác thực tế Việc xây dựng thêm chức giải mã khó khăn với thƣ viện WV, gói mã nguồn Abi-Word Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 60 Hình 3.6: Kết thử nghiệm công với tệp TestTest.doc Hình kết thử nghiệm công với tệp TestTest.doc (có mật testtest) Thời gian thực công lớn, chƣa đáp ứng đƣợc yêu cầu hiệu mà Đề tài đặt 3.1.4 Cài đặt chương trình Sau cài đặt Master, Slave chƣơng trình TMTO Môi trƣờng lập trình Linux, sử dụng truyền thông điệp LAM/MPI +) Master ///////////////////////////////////////////////////////////////// // Master.h Header file of TMTO Project // Created: 16-10-2014 @dang cong // Please put all data types, prototypes ref in Master.c here ///////////////////////////////////////////////////////////////// #ifndef TDH_TMTO_MASTER_H #define TDH_TMTO_MASTER_H #include #include #include "tmto.h" void master_init (void); void master_finalize (void); void getCmdInputs (void); Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 61 void getCmdFile (FILE *p); void getTimeDiff (char *s, struct timeb *sb, struct timeb *st); void get_input (void); void do_master (void); void work_in_parallel (void); unit_of_work_t *get_next_work_item (size_t *count); BYTE *put_mem (size_t *count, unit_of_work_t *gwork); void process_results (size_t, BYTE *mem, int id); #endif //TDH_TMTO_MASTER_H Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 62 +) Slave ///////////////////////////////////////////////////////////////// // Slave.h Header file of TMTO Project // Created: 16-10-2014 @ dang cong // Please put all data types, prototypes ref in Master.c here ///////////////////////////////////////////////////////////////// #ifndef TDH_TMTO_SLAVE_H #define TDH_TMTO_SLAVE_H #include "tmto.h" size_t get_mem (BYTE *mem, unit_of_work_t *work); void slave_init (void); void slave_finalize (void); BYTE do_compare (BYTE *block1, BYTE *block2, size_t); void do_slave (void); int key_searchEX (unit_of_work_t *work); #endif//TDH_TMTO_SLAVE_H Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 63 +) TMTO ///////////////////////////////////////////////////////////////// // TMTO.h Header file of TMTO Project // Created: 16-10-2014 @ dang cong // Please put all data types, prototypes ref in TMTO Proj here ///////////////////////////////////////////////////////////////// #ifndef TDH_TMTO_TMTO_H #define TDH_TMTO_TMTO_H #include #include "mpi.h" #define WORKTAG #define DIEDTAG #define DONETAG #define IDLETAG //#define KEY_BLOCK 1048576 // = 2^20 //#define KEY_BLOCK 4194304 // = 2^22 #define KEY_BLOCK 67108864 // = 2^26 #define MAX_KEY 1099511627776 // = 2^40 typedef unsigned char U8; typedef unsigned long int U32; typedef unsigned long long int U64; typedef unsigned char BYTE; typedef struct { U32 crank; //node ID U64 start_key; //begin point of RC4 key range U64 end_key; //end point of RC4 key range U8 tmp_salt[64]; U8 tmp_hsalt[16]; //Salt for comparison //Encrypted hash salt for comparison } unit_of_work_t; #endif //TDH_TMTO_TMTO_H Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 64 +) Mã nguồn TMTO #include #include "mpi.h" //Refs to LAM/MPI communicator #include "tmto.h" //Refs to TMTO header file #include "master.h" //Refs to TMTO master functions #include "slave.h" //Refs to TMTO slave functions int myrank; int main (int argc, char ** argv) { /* Initialize MPI */ MPI_Init (&argc, &argv); /* Find out my identification in the communicator */ MPI_Comm_rank (MPI_COMM_WORLD, &myrank); if (myrank == 0) { do_master (); } else { do_slave (); } /* Shutdown MPI communicator */ MPI_Finalize (); return (0); } Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 65 3.2 Lựa chọn tham số Rainbow để công RC4 Theo kết nghiên cứu công bố, với máy tính có vi xử lý Pentium 4, tần số xung nhịp 1.5GHz, nhớ 500MB SDRAM (tƣơng đƣơng với máy tính xách tay loại trung bình), tốc độ tính toán cho mắt xích chuỗi Rainbow khoảng 700.000/s; ổ địa cứng truy vấn liệu với tốc độ 610 truy vấn 19 giây; không gian khóa RC4 256^5 Lựa chọn tham số: số bảng Rainbow (l) 8; bảng gồm chuỗi có độ dài (t) 10.000; số chuỗi bảng Rainbow (m) là: 76.447.744 Kết tính toán dựa tham số nhƣ sau: Hình 3.7: Lựa chọn tham số Rainbow để công RC4 Với tham số lựa chọn, công RC4-40bit biết tham số thuật toán đạt tỷ lệ thành công 99% với thời gian trung bình 154 giây Thời gian tính toán trƣớc 100 ngày 3.3 Xây dựng bảng Rainbow Sử dụng chƣơng trình phần mềm gói phần mềm RainbowCrack, Đề tài xây dựng bảng Rainbow cho MD5 với tham số m = 1.000.000, t=1.600 Bảng Rainbow xếp đƣợc lƣu tệp “md5_byte#45_0_1000000x1600_test.rt” Tệp đƣợc sử dụng Wcracker cho chức công tìm khóa RC4 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 66 3.4 Thử nghiệm tính mở rộng Wcracker Hình dƣới kết thử nghiệm chức kiểm tra mật Wcracker ngƣời sử dụng cho biết mật Hình 3.8: Kết thử nghiệm chức kiểm tra mật Wcracke Hình 3.9 dƣới cho biết kết chức công tìm khóa RC4 tìm đƣợc khóa từ chuỗi bảng Rainbow Hình 3.9: Kết chức công tìm khóa RC4 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 67 3.5 Kết phân tích khóa phần mềm xử lý song song Thử nghiệm với tệp Test.doc, mật để mở tệp Chƣơng trình tính toán song song chạy máy tính 20Gflop với cấu hình 64 node tính toán Kết tìm thấy khóa RC4 sau ngày thực Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 68 KẾT LUẬN Đề tài thực nghiên cứu về: 1.Giải thuật xác thực mật bảo mật văn MS- Word sử dụng thuật toán mã hóa RC4 Giải thuật xác thực mật ứng dụng MS-Word phức tạp có kết hợp yếu tố ngẫu nhiên (bao gồm DOCID SALT), tăng cƣờng khả chống lại công dựa từ điển mã hóa (ECB-Electronic Code Book) Mỗi văn soạn thảo MS-Word đƣợc gắn với giá trị ngẫu nhiên xác định văn (Document Identification Number- DOCID) muối mật (SALT), văn có mật bảo mật nhƣng có giá trị mã hóa lƣu trữ tệp văn khác Tấn công TMTO dựa tính toán trƣớc để giảm thời gian công dạng từ điển mã nên gặp khó khăn Gói phần mềm Rainbow-crack Rainbow-crack Project Đây gói phần mềm tính toán sẵn, sau xếp bảng lƣu trữ giá trị tính toán sẵn thành chuỗi phân lập, đƣợc đặt tên chuỗi cầu vồng (Rainbow) gần với tán sắc ánh sáng tƣợng tự nhiên Không gian mã thuật toán mật mã lựa chọn đƣợc phân lập thành chuỗi liên kết lại với nhau, tƣơng tự nhƣ thành phần ánh sáng màu tạo thành dải màu cầu vồng Với kết cấu nhƣ vậy, cần lƣu trữ điểm đầu điểm cuối chuỗi cầu vồng xác định thuật toán xây dựng lại giá trị trung gian đủ để lƣu trữ từ điển mã thuật toán mật mã Tuy nhiên muốn lƣu trữ toàn không gian mật mã (xác suất công đạt 100%) số số lƣợng chuỗi cầu vồng tăng Philippe Oechslin để tính toán tham số xây dựng bảng rainbow cho RC4 với mã khóa 40 bít Phần mềm tính toán tham số đƣợc xây dựng , tham số đƣợc xác định : t=10.000; m= 76.447.744; l= 8; thời gian tính toán trƣớc 101ngày, xác suất đạt 99% Nghiên cứu Rainbow-crack xác định chƣơng trình công mật vào hệ thống Windows (Lmpass, Nthansh, MD5hash ) ứng dụng hiệu xác định mật truy nhập hệ thống Windows có giá trị mã mật Tuy nhiên, kết nghiên cứu giải thuật sử dụng RC4 ứng dụng cụ thể MS-Word để xác thực mật bảo mật không thuận lợi cho tính toán áp dụng TMTO, nên đề tài không tiến hành xây dựng bảng Rainbow cho RC4 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 69 Thay vào đó, Đề tài lựa chọn hƣớng triển khai áp dụng TMTO thông qua bảng MD5 trực tiếp xây dựng khóa RC4 để công tìm khóa mã cho văn đƣợc bảo mật mật Chƣơng trình phần mềm chạy hệ điều hành Windows chƣơng trình tính toán song song hệ điều hành Linux LAM/MPI đƣợc xây dựng thử nghiệm công Chƣơng trình phần mềm tính toán song song cho kết tìm đƣợc khóa mã RC4 để giải mã văn Để thực công thử nghiệm, Đề tài sử dụng RainbowCrack để xây dựng bảng rainbow MD5 cho mật có độ dài đến byte tập 356 giá trị byte Bảng Rainbow đƣợc lựa chọn kích thƣớc gồm 1.000.000 chuỗi với độ dài chuỗi 16.000 phần tử Chƣơng trình phần mềm chạy hệ điều hành Windows chƣơng trình tính toán song song hệ điều hành Linux LAM/MPI đƣợc xây dựng thử nghiệm công Chƣơng trình phần mềm tính toán song song cho kết tìm đƣợc khóa mã RC4 để giải mã văn Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 70 TÀI LIỆU THAM KHẢO Phần liệt kê số phần mềm mà Đề tài sử dụng để cài đặt chƣơng trình phần mềm nội dung nghiên cứu đề [1]McKenzie, Patrick (9 tháng năm 2014) “What Heartbleed Can Teach The OSS Community About Marketing” (bằng tiếng Anh) Truy cập ngày 10 tháng năm 2014 [2] Biggs, John (9 tháng năm 2014) “Heartbleed, The First Security Bug With A Cool Logo” TechCrunch (bằng tiếng Anh) Truy cập ngày 10 tháng năm 2014 [3]Goodin, Dan (8 tháng năm 2014) “Critical crypto bug in OpenSSL opens twothirds of the Web to eavesdropping” Ars Technica (bằng tiếng Anh) Truy cập ngày tháng năm 2014 [4] Seggelmann, R.; Tuexen, M.; Williams, M (tháng năm 2012) “RFC 6520: Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) Heartbeat Extension” (bằng tiếng Anh) Internet Engineering Task Force Truy cập ngày tháng năm 2014 [5] Mutton, Paul (8 tháng năm 2014) “Half a million widely trusted websites vulnerable to Heartbleed bug” (bằng tiếng Anh) Netcraft Truy cập ngày tháng năm 2014 [6] Thƣ viện RainbowCrack Zhu Shuanglei@hotmail.comcài đặt phƣơng pháp công TMTO Philippe Oechslin đề xuất năm 1994 [7] Martin Hellman, IEEE Transaction on information theory vol IT -26, No 4, July 7/1980, A cryptanalytic time –memory trade-off [8] D.R Stinson, Crytography: Theory and Practice, 1995 by CRC Press Inc [9] Philippe Oechslin, Lecture notes in computer science volume 2729, 2003, phƣơng pháp617-630, Making a faster A cryptanalytic time –memory trade-off [10] Man Young Rhee, Wilay, Internet Security - Cryptographic Principles, Algorithms and Protocols, 2003 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 71 [11] William Stallings, Network Security Essentials: Applications and Standards, Prentice Hall, New Jersey, 1999 [12] William Stallings, Network Security Essentials, 2009 [13] Wasim.E Rajput Commerce Systems-Architecture & Application, 2013 [14] Douglas R Stinson, Cryptography Theory and Practice, University of Nebraska-Lincoln [15] Leong Yu Kiang Living with Mathematics 3rd Edition 2011 McGraw-Hill Education (Asia), Singapore ISBN 978-007-132677-3 [16] G Paul, S Rathi and S.Maitra, “Non-negligible Bias of the First Output Byte of RC4 towards the First Three Bytes of the Secret Key”, Proceedings of the International Workshop on Coding and Cryptography (WCC) 2007, pp 285294 and Designs, Codes and Cryptography Journal, pp 123-134, vol 49, no 1-3, December 2008 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ... Cỏc cụng c ca Phn mm RainbowCrack 1.3 Xõy dng RainbowCrack: RainbowCrack techniqueis the implementation of Philippe Oechslin's faster time-memory trade-off technique RainbowCrack lm vic da trờn... 32-bit Hỡnh 1.1: Cỏc tớnh nng RainbowCrack 1.2.7 Cỏc cụng c v mi quan h gia chỳng RainbowCrack Phn mm RainbowCrack bao gm nm cụng c: rtgen, rtsort, rt2rtc, rtc2rt v rcrack Hỡnh di õy gii thớch mi... 1.2.5 Thỏm mó Vigenere 1.2.6 Cỏc tớnh nng RainbowCrack: 1.2.7 Cỏc cụng c v mi quan h gia chỳng RainbowCrack 1.3 Xõy dng RainbowCrack: 1.4 Thun toỏn MD5 .15

Ngày đăng: 12/09/2017, 15:28

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