Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 41 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
41
Dung lượng
748,41 KB
Nội dung
TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN BỘ MÔN CÔNG NGHỆ THÔNG TIN - TIỂU LUẬN MÔN HỌC Đ Ề TÀ I : Nghiên cứu giải thuật mã hoá Hà Nội -2009 M ỤC L ỤC LỜI NÓI ĐẦU .3 CHƯƠNG I: CÁC HỆ MÃ Hệ mật mã đối xứng: .5 1.1 Giới thiệu: 1.2 Giải thuật DES (Data Encryption Standard) : 1.2.1 DES In Electronic CodeBook Mode (ECB) : 16 1.2.2 DES In Cipher Block Chaining Mode (CBC) : .17 Hệ mật mã bất đối xứng .18 2.1 Giới thiệu: .19 2.2 Lý thuyết mật mã khóa cơng khai: 20 2.3 Ứng dụng mật mã khóa cơng khai: 26 2.4 Các yêu cầu mật mã khóa công khai: 26 2.5 Giải thuật RSA (Rivest, Shamir Adleman – 1977): 27 2.5.1 Mô tả giải thuật: .27 2.5.2 Tính bảo mật giải thuật RSA: 31 2.5.2.1 Phương pháp p-1: .31 2.5.2.2 Bẻ khóa biết số mũ d hàm giải mã: .33 2.5.2.3 Bẻ khóa dựa attack lặp lại: 34 2.5.3 Sự che dấu thông tin hệ thống RSA .35 2.5.4 Các giải thuật toán học sử dụng RSA: 36 2.5.4.1 Giải thuật Euclidean – tìm USCLN hai số nguyên: 36 2.5.4.2 Lý thuyết số dư Trung Hoa: 36 2.5.4.3 Giải thuật Euclidean mở rộng: 36 2.5.4.4 Giải thuật Miller –Rabin kiểm tra số nguyên tố lẻ: 37 2.5.4.5 Giải thuật tính xb mod n: 38 Giải thuật băm MD5 38 TÀI LIỆU THAM KHẢO 50 LỜI NÓI ĐẦU Thế giới sôi sục muôn vàn biến động tạo người Và kỷ 20 này, máy tính sản phẩm vĩ đại Cùng với thời gian, người ta khơng muốn sử dụng máy tính đơn lẻ mà kết nối máy lại thành mạng máy tính nhằm tăng khả làm việc, hiểu biết, trao đổi, cập nhật thông tin … Mạng Internet xu hướng phát triển giới ngày Hiện nay, Internet trở nên phổ biến tồn giới Thơng qua mạng Internet người trao đổi thơng tin với cách nhanh chóng thuận tiện Những cơng ty phát triển kinh doanh môi trường Intranet/Internet họ phải đối diện với khó khăn lớn làm để bảo vệ liệu quan trọng, ngăn chặn hình thức cơng, truy xuất liệu bất hợp pháp từ bên (Intranet), lẫn bên (Internet) Khi người muốn trao đổi thông tin với người hay tổ chức thơng qua mạng máy tính u cầu quan trọng để đảm bảo thông tin không bị sai lệch bị lộ xâm nhập kẻ thứ ba Trước yêu cầu cần thiết đó, số giải thuật mã hóa dược xây dựng nhằm đảm bảo tính an tồn liệu nơi lưu trữ liệu truyền mạng, giải thuật mã hóa đối xứng (DES), giải thuật mã hóa cơng khai Việc tìm hiểu xây dựng chương trình giải thuật khơng nằm ngồi mục đích tập lớn Do thời gian khả có hạn, phạm vi đề tài lại rộng, nhóm chúng em tìm hiểu số giải thuật : DES, RSA, MD5 Chắc chắn nội dung khơng tránh khỏi thiếu sót, chúng em mong nhận góp ý, dẫn thêm Thầy Cơ, bạn bè để tập hồn thiện Chúng em xin chân thành cảm ơn Thầy Hoàn hướng dẫn tạo điều kiện thuận lợi nhóm em hồn thành thời hạn! CHƯƠNG I: CÁC HỆ MÃ Hệ mật mã đối xứng: 1.1 Giới thiệu: Các giải thuật mật mã đối xứng giải thuật sử dụng khóa bí mật cho tác vụ mã hóa tác vụ giải mã Ví du giải thuật thay hoán vị, giải thuật DES,… Ở ta ch ỉ tìm hiểu giải thuật DES (Data Encryption Standard) giải thuật mật mã đối xứng sử dụng phổ biến 1.2 Giải thuật DES (Data Encryption Standard) : Vào năm 1977, "National Bureau of standard" đưa chuẩn DES để sử dụng cho ứng dụng Mỹ DES mã hóa khối data 64 bits với khóa 56 bits Giải thuật dùng để mã hóa lẫn giải mã mơ tả tóm tắt hình Trước tiên 64 bit input T hoán vị phép hoán vị hoán vị khởi động IP, với To = IP(T) Sau qua 16 vòng lặp (mỗi vòng sử dụng khóa 48 bit tạo từ khóa input 56 bits) với tác động hàm F, hoán vị phép hoán vị đảo IP-1 để tạo 64 bit output cuối IP IP -1 cho bảng (bảng 1a bảng 1b) Các bảng đọc từ trái sang phải, từ xuống theo dạng: T = t1t2… t64 T0 = t58t50…….t7 Đầu tiên khối T tách thành hai khối trái phải (mỗi khối 32 bits): T = L0R0 với L0 = t1… t32 , R0 = t33… t64 Ở vòng lặp thứ i (0 < i < 16) : L i = Ri-1 , Ri = Li-1 F(Ri-1, Ki) phép cộng exclusive_or Ki khóa 48 bits Ở vịng lặp cuối nhánh trái phải không đổi chỗ cho input IP-1 R16L16 Hàm F S_boxes: (hình 3) Trước tiên Ri-1 mở rộng thành khối 48 bits E(Ri-1) với E bảng lựa chọn bit cho bảng Sau thực phép XOR E(R i-1) với Ki kết tách thành khối bit từ B1 tới B8 : E(Ri-1) Ki = B1B2 B8 Mỗi khối Bj sau đưa vào hàm S j (S - box) : Sj (Bj) trả khối bit (bảng 4) Các khối nối lại khối kết 32 bit hoán vị phép P (bảng 3) F(Ri-1 , Ki) = P(S1(B1) … S8(B8)) Hoạt động S-box: số nguyên tương ứng với b 1b6 chọn Row bảng, số nguyên tương ứng với b3b4b5b6 chọn Column Giá trị Sj(Bj) chọn số nguyên bit vị trí Row Column Tính khóa: (hình 2) DES tạo 16 khóa, khóa chiều dài 48 bit từ khóa input 56 bit, dùng cho 16 vịng lặp Lưu đồ tính tốn khóa cho hình 2: Khóa input khối 64 bit, với 8bit parity vị trí 8, 16,.…, 64 Permutation PC-1 loại bỏ bit parity hốn vị 56 bit cịn lại theo bảng Kết quả, PC-1(K) sau chia thành hai phần C D0 phần 28 bit Khóa Ki dùng vịng thứ i tạo từ C i-1 Di-1 theo quy tắc sau: vòng 1, 2, 16, Ci-1 Di-1 quay vịng bít qua trái, vịng cịn lại quay vịng hai bít qua trái Qua phép quay vòng Ci-1 Di-1 biến đổi thành C i Di Hoán vị Ci Di theo bảng Sau hốn vị Ci bỏ qua bít 9, 18, 22, 25 tạo thành trái K i (24 bít), cịn Di bỏ bít 35, 38, 43, 54 tạo phải K i (24 bít) Ghép trái phải tạo khóa Ki 48 bít Giải mã: Q trình giải mã thực theo giải thuật theo thứ tự ngược lại sau: IP-1 đảo IP vòng lặp thứ i sử dụng khóa K 17-i (K16 vòng lặp đầu tiên, K1 vòng lặp cuối cùng) và: Ri-1 = Li ; Li-1 = Ri F(Li, Ki) 58 50 42 34 26 18 10 40 48 16 56 24 64 32 60 52 44 36 28 20 12 39 47 15 55 23 63 31 62 54 46 38 30 22 14 38 46 14 54 22 62 30 64 56 48 40 32 24 16 37 45 13 53 21 61 29 57 49 41 33 25 17 36 44 12 52 20 60 28 59 51 43 35 27 19 11 35 43 11 51 19 59 27 61 53 45 37 29 21 13 34 42 10 50 18 58 26 63 55 47 39 31 23 15 33 Bảng 1a: Bảng hoán vị IP 41 49 17 57 25 Bảng 1b: Bảng hoán vị cuối IP-1 32 16 29 12 28 17 10 11 12 13 15 23 26 12 13 14 15 16 17 18 31 10 16 17 18 19 20 21 24 14 20 21 22 23 24 25 32 27 24 25 26 27 28 29 19 13 30 28 29 30 31 32 22 11 Bảng 2: Bảng chọn bít E 57 49 41 33 25 17 58 50 42 34 26 18 10 59 51 43 35 27 19 11 60 52 44 36 63 55 47 39 31 23 15 62 54 46 38 30 22 14 61 53 45 37 29 21 13 28 20 12 20 21 25 Bảng 3: Bảng hoán vị P 14 17 11 24 15 21 10 23 19 12 26 16 27 20 13 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32 Bảng 5: Bảng hoán vị khóa PC-1 Bảng 6: Bảng hốn vị khóa PC-2 Column Row 10 11 12 13 14 15 Bo x 14 13 1 10 12 15 1 12 11 14 1 12 10 15 12 1 11 14 10 13 7 13 12 10 10 11 15 14 1 13 14 11 12 15 13 10 1 12 14 1 2 13 12 11 8 14 12 11 15 1 12 10 14 15 14 11 12 10 14 1 13 13 3 10 13 1 13 14 3 2 11 12 15 13 11 7 12 10 14 10 9 1 14 3 15 4 11 12 14 0 12 15 13 14 14 11 12 15 10 11 1 12 14 11 12 1 15 10 S1 S2 S3 S4 S5