Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 67 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
67
Dung lượng
1,41 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - o0o - NGUYỄN KHẢI NGHIÊNCỨU,SOSÁNHVÀĐÁNHGIÁĐỘANTOÀNCỦAHỆMẬTMÃRABINVÀRSA LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2016 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn i LỜI CAM ĐOAN Với mục đích nghiêncứu, tìm hiểu để nâng cao kiến thức trình độ chuyên môn để áp dụng toán cụ thể tương lai nên làm luận văn cách nghiêm túc hoàn toàn trung thực Nội dung luận văn tự tìm hiểu hoàn thành Trong luận văn, có sử dụng tài liệu tham khảo số tác giả nước để hoàn thành luận văn nêu phần tài liệu tham khảo Tôi xin cam đoan chịu trách nhiệm nội dung, trung thực luận văn tốt nghiệp Thạc sỹ Thái Nguyên, tháng năm 2016 Học viên Nguyễn Khải Số hóa Trung tâm Học liệu – ĐHTN i http://www.lrc.tnu.edu.vn ii LỜI CẢM ƠN Em xin chân thành cảm ơn toàn thể thầy cô giáo trường Đại học công nghệ thông tin truyền thông, Đại học Thái Nguyên hết lòng dạy dỗ bảo, tạo điều kiện tốt cho em suốt trình học tập thời gian thực luận văn Đặc biệt em gửi lời cảm ơn chân thành sâu sắc tới TS Hồ Văn Canh người trực tiếp quan tâm, tận tình hướng dẫn giúp đỡ tạo điều kiện thuận lợi cho em trình thực khóa luận Cảm ơn bạn đồng khóa gia đình động viên, giúp đỡ nhiều trình học tập trường Đại học công nghệ thông tin truyền thông Đại học Thái Nguyên trình thực khóa luận Thái Nguyên, tháng năm 2016 Học viên Nguyễn Khải Số hóa Trung tâm Học liệu – ĐHTN ii http://www.lrc.tnu.edu.vn iii MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN ii MỤC LỤC .iii DANH MỤC BẢNG vi DANH MỤC CHỮ VIẾT TẮT vii LỜI MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN MẬTMÃ 1.1 Tổng quan hệmậtmã 1.1.1 Các khái niệm 1.1.2 Lịch sử hình thành phát triển 1.1.3 Các loại hình công 1.1.4 Các chức mậtmã đại 1.2 Hệmã khóa đối xứng 1.2.1 Các loại thuật toán khóa đối xứng 1.2.2 Tốc độ 10 1.2.3 Hạn chế 10 1.3 Mã hóa công khai (Mã hóa bất đối xứng) 11 1.3.1 Antoàn 12 1.3.2 Ứng dụng 12 1.3.3 Điểm yếu 12 1.3.4 Khối lượng tính toán 13 1.4 Một số kiến thức sở lý thuyết số 14 Số hóa Trung tâm Học liệu – ĐHTN iii http://www.lrc.tnu.edu.vn iv 1.4.1 Các phép tính phần dư số học 14 1.4.2 Thuật toán Euclide (tìm ước số chung lớn số) 16 1.4.3 Phần tử nghịch đảo 19 1.4.4 Các phương trình đồng dư tuyến tính 20 1.1.5 Các hệ phương trình đồng dư tuyến tính 20 1.1.6 Thuật toán tính yn mod N 21 1.1.7 Thặng dư bậc 22 1.1.8 Các ký hiệu Legendre Jacobi 23 CHƯƠNG 2: HỆMẬTMÃRABINVÀHỆMẬTMÃRSA 27 2.1 Các thuật toán liên quan đến mã hóa, giải mã 27 2.1.1 Thuật toán tính bậc mod p với p (p ≥ 3) số nguyên tố lẻ 27 2.1.2.Thuật toán tím bậc mod p số nguyên tố p có dạng:p ≡ 3mod 28 2.1.3.Thuật toán tím bậc mod p số nguyên tố p có dạng:p ≡ 5mod 29 2.1.4 Thuật toán xét trường hợp n hợp số lẻ 29 2.2 MậtmãRSA 30 2.2.1 Mô tả hệmậtmãRSA 30 2.2.2 Nguyên lý hoạt động 32 2.2.3 Cơ sở khoa học thuật toán giải mã 32 2.2.4 Một số ý quan trọng RSA 32 2.3 MậtmãRabin 33 2.3.1 Quá trình tạo khóa 34 2.3.2 Mã hóa 34 2.3.3 Giải mã 35 2.3.4 Ví dụ 38 Số hóa Trung tâm Học liệu – ĐHTN iv http://www.lrc.tnu.edu.vn v CHƯƠNG 3: SOSÁNHHỆMẬTMÃ 40 3.1 Sosánhđộ phức tạp thuật toán 40 3.1.1 Lý thuyết độ phức tạp thuật toán 40 3.1.2 HệmậtmãRSA 41 3.1.3 HệmậtmãRabin 44 3.1.4.Kết luận 45 3.2 SosánhđộantoànhệmậtmãRabin với RSA 45 3.2.1 Khái niệm độantoàn thuật toán 45 3.2.2 HệmậtmãRSA 46 3.2.3.Độ antoànhệmậtRabin 50 3.2.4 Kết luận 52 3.3 Chương trình thực nghiệm 52 3.3.1 Chuẩn bị liệu thử nghiệm 52 3.3.2 Thử nghiệm chương trình 53 3.3.3 Thử nghiệm hiệu 54 KẾT LUẬN 58 TÀI LIỆU THAM KHẢO 59 Số hóa Trung tâm Học liệu – ĐHTN v http://www.lrc.tnu.edu.vn vi DANH MỤC BẢNG Bảng 1.1 Thuật toán Euclid mở rộng…………………………………… ……19 Bảng 2.1 Bảng thuật toán Rabin……………………………………………….38 Bảng 3.1 Bảng thử nghiệm hiệu ( kịch 1)……………………………56 Bảng 3.1 Bảng thử nghiệm hiệu ( kịch 2)……………………………57 Số hóa Trung tâm Học liệu – ĐHTN vi http://www.lrc.tnu.edu.vn vii DANH MỤC CHỮ VIẾT TẮT Viết tắt Tiếng Anh Tiếng Việt BSCNN Bội số chung nhỏ ƯSC Ước số chung ƯSLCN Ước số chung lớn Số hóa Trung tâm Học liệu – ĐHTN vii http://www.lrc.tnu.edu.vn LỜI MỞ ĐẦU Sự cần thiết lựa chọn đề tài Sự xuất mạng Internet cho phép người truy cập, chia sẻ khai thác thông tin cách dễ dàng hiệu quả, nhiên lại nảy sinh vấn đề antoàn thông tin Thực vậy, Internet có kỹ thuật tuyệt vời cho phép người truy nhập, khai thác, chia sẻ thông tin Nhưng nguy dẫn đến thông tin bạn bị hư hỏng phá huỷ hoàn toàn Để vừa bảo đảm tính bảo mật thông tin lại không làm giảm phát triển việc trao đổi thông tin quảng bá toàn cầu giải pháp tốt mã hoá thông tin Có thể hiểu sơ lược mã hoá thông tin che thông tin làm cho kẻ công chặn thông báo đường truyền đọc phải có giao thức người gửi người nhận để trao đổi thông tin, chế mã giải mã thông tin Năm 1949, C.Shannon đưa mô hình hệmậtmã đối xứng antoàn vô điều kiện dựa sở lý thuyết thông tin Các hệmã sử dụng chung khóa bí mật hai quy trình mã hóa - giải mã việc bảo mật thông tin đồng nghĩa với việc bảo mật khóa chung Tuy nhiên, hệ thống có nhiều nhóm người cần trao đổi thông tin mật với số khóa chung cần giữ bí mật lớn, khó quản lý trao đổi Trong thời đại ngày nay, nhiều toánmậtmã thực tế đặt “chỉ cần giữ bí mật thời gian cho số thông tin mà thôi” Với mục đích giải vấn đề trên, vào năm 1976, W.Diffie M.E.Hellman để xuất mô hình hệmậtmã phi đối xứng hay gọi hệmậtSố hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn mã khoá công khai, antoànmặt tính toán dựa sở lý thuyết độ phức tạp tính toán Các hệmã bất đối xứng sử dụng hai loại khóa cặp khóa, khóa bí mật khóa công khai Khóa công khai công bố rộng rãi sử dụng để mã hóa thông tin khóa bí mật người nắm giữ sử dụng để giải mã thông tin mã hóa khóa công khai Đặc điểm quan trọng tìm khóa giải mã biết khóa lập mã thời gian chấp nhận Do thời gian, khả thân, em khảo sát hết tất hệmậtmã khoá công khai biết, mànghiên cứu hệmậtmã giới sử dụng nhiều, rộng rãi nay, hệmậtmãRSA Ron Rivert, Adi Shamir Len Adleman sáng tạo, công bố vào năm 1977 dựa vào toán phân tích số nguyên hệmậtmãRABINhệmật dựa độ phức tạp việc tính bậc hai theo hợp số Để hiểu rõ thuật toánso sánh, đánhgiáđộantoàn thuật toán này, em lựa chọn đề tài: “Nghiên cứu,sosánhđánhgiáđộantoànhệmậtmãRabin RSA” làm luận văn tốt nghiệp Thạc sỹ Mục tiêu nghiên cứu đề tài - Nghiên cứu lý thuyết sốmật mã; - Tìm hiểu, phân tích nhận xét ưu nhược điểm hệmậtmãRabin RSA; - SosánhđánhgiáđộantoànhệmậtmãRabinRSA Đối tượng phạm vi nghiên cứu 3.1 Đối tượng Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 45 m thành m’ mã hóa, chẳng hạn thông điệp m đổi sang số thành: m = m1m2 … mk với mi ∈ {0, 1}, (i =1, 2, … , k) m’ = m1m2 … mkm1m2 … mb Với số b bên A quy định Thực tế, qui định không làm tăng độmật cho Rabinmà làm dễ dàng cho thực thể A xác định thông báo 3.1.4 Kết luận Để giải hệmậtmãRabin giải toán bậc Vấn đề phân tích thừa số n tiń h bă ̣c theo module n là tương đương về mă ̣t tiń h toán Nên ta thấy mậtmãRSA có độ phức tạp lớn mậtmãRabin 3.2 SosánhđộantoànhệmậtmãRabin với RSA 3.2.1 Khái niệm độantoàn thuật toán Nguyên tắc số giải mã là: “Thuật toán bị phá vỡ!” Các thuật toán khác cung cấp mức độantoàn khác nhau, phụ thuộc vào độ khó để phá vỡ chúng Tại thời điểm, độantoàn thuật toán phụ thuộc vào yếu tố: – Nếu chi phí, phí tổn cần thiết để phá vỡ thuật toán lớn giá trị thông tin mã hóa thuật toán tạm thời coi antoàn – Nếu thời gian cần thiết dùng để phá vỡ thuật toán lâu thuật toán tạm thời coi antoàn – Nếu lượng liệu cần thiết để phá vỡ thuật toán lớn so với lượng liệu mã hóa thuật toán tạm thời coi antoàn Từ tạm thời có nghĩa độantoàn thuật toán thời điểm định đó, luôn có khả cho phép Số hóa Trung tâm Học liệu – ĐHTN 45 http://www.lrc.tnu.edu.vn 46 người phá mã tìm cách để phá vỡ thuật toán Điều phụ thuộc vào thời gian, công sức, lòng đam mê tính kiên trì bền bỉ Như bạn thấy, ngày tốc độ CPU cao, máy tính ngày mạnh tốc độ tính toán nhanh, không dám khẳng định chắn điều thuật toánmà xây dựng nên antoàn mãi Trong giới Networking luôn tồn hai phe đối lập người chuyên công, khai thác hệ thống người chuyên phòng thủ, xây dựng qui trình bảo vệ hệ thống Theo [4] (Alfred J.Menezes, Paul C.van Oorschot Scott A.Vanstone: Handbook o Applied Cryptography CRC press; Boca Raton, New York, London, Tokyo, 1999) nói chung độantoàn hai hệmậtmã phu thuộc việc phân tích số n thành nhân tử nguyên tố ([4], pp.116-118) Tuy nhiên, thực tế chúng có khác 3.2.2 HệmậtmãRSAĐộantoànRSA giải toán đặt sau: Cho trước số nguyên dương n, với n = p.q p, q số nguyên tố đủ lớn, khác e số nguyên dương cho trước cho: ƯSCLN (e, ϕ(n) = 1, ϕ(n) = (p-1)(q-1) số nguyên c Hãy xác định số nguyên m cho: me ≡ c mod n Từ tham số n, e số nguyên c ∈ {0, 1, 2, … , n-1} tồn số m ∈ {0, 1, 2, … , n-1} cho: me ≡ c mod n Bài toán nêu gọi toánRSA Đã có nhiều nghiên cứu toán (xem [4]) Sau xin trình bày số phương pháp giải: 3.2.2.1 Phân tích nhân tử Số hóa Trung tâm Học liệu – ĐHTN 46 http://www.lrc.tnu.edu.vn 47 Việc đánhgiáđộantoàntoánRSA phân tích nhân tử Khi phân tích modulon, tức tìm p q cho n = p.q, người ta tìm hàm ϕ(n) = (p-1)(q-1) Từ dễ dàng tìm số mũ bí mật d nhờ thuật toán Euclide mở rộng: e.d ≡ mod ϕ(n) Mỗi số mũ bí mật d bị phát hiện, coi hệmậtmãRSA bị lộ hoàn toàn 3.2.2.2 Tấn công vào RSA nhờ số mũ công khai e nhỏ Để giúp việc mã hóa nhanh chóng, người ta thường chọn số mũ e bé, chẳng hạn e = Gỉa sử thực thể A có thông báo x ∈Zn cần gửi cho đối tác khác là: A1, A2, A3 𝐶1 ≡ 𝑥 𝑚𝑜𝑑 𝑛1 A mã hóa: (1) {𝐶2 ≡ 𝑥 𝑚𝑜𝑑 𝑛2 𝐶3 ≡ 𝑥 𝑚𝑜𝑑 𝑛3 Trong đó, khóa công khai Ai (e, ni) i = 1, 2, A gửi Ci cho Ai, i = 1, 2, Lúc Hacker nhận C1, C2, C3 cặp khóa công khai (e, ni) Ai, i = 1, 2, Vì x3 < n1 n2 n3 , theo định lý đồng dư Trung Hoa, Hacker thực hiện: Bước 1: Chuyển (1) (2): (2) Số hóa Trung tâm Học liệu – ĐHTN 𝑥 ≡ 𝐶1 𝑚𝑜𝑑 𝑛1 {𝑥 ≡ 𝐶2 𝑚𝑜𝑑 𝑛2 𝑥 ≡ 𝐶3 𝑚𝑜𝑑 𝑛3 47 http://www.lrc.tnu.edu.vn 48 Bước 2: Áp dụng định lý Đồng dư Trung Hoa, người ta xác định x2 Từ đó, x = √𝑥 Đó rõ 3.2.2.3 Tấn công vào thông điệp bé Trong trường hợp này, không gian thông báo bé, Hacker thử sai để tìm thông báo cách nhanh chóng 3.2.2.4 Tấn công vào số mũ bí mật d nhỏ Cũng giống trường hợp số mũ công khai e bé, trường hợp số d bé, Hacker thử sai để tìm thông báo Do đó, người ta khuyên chọn số mũ công khai e không bé số bí mật d không bé để đảm bảo antoàn cho RSA 3.2.2.5 Tấn công nhờ tính chất “nhân” RSA Cho m1, m2 hai thông báo rõ C1, C2 mãRSA tương ứng với m1, m2 Ta thấy rằng: (m1m2)e ≡ m1e m2e ≡ C1.C2 mod n Từ mã tương ứng với thông báo m = m1.m2 mod n C = C1C2 mod n Kết chứng tỏ tính đồng cấu (homomorphic) RSA Từ đó, kẻ công lợi dụng tính chất để công vào RSA sau: Giả sử kẻ công muốn giải mã C = me mod n gửi từ A Giả sử A giải mã tùy ý gửi đến cho Ví dụ mã 𝐶̅ = 𝑐𝑥 mod 𝑛 gửi từ kẻ công đến cho A Khi rõ: 𝑚 ̅ = (𝐶̅ )𝑑 𝑚𝑜𝑑 𝑛 = cd (xe)d mod n = mx mod n Từ kẻ công lĩnh : m = 𝑚 ̅ x-1 mod n Số hóa Trung tâm Học liệu – ĐHTN 48 http://www.lrc.tnu.edu.vn 49 3.2.2.6 Tấn công dùng modulus chung Giả sử thực thể A1 có khóa công khai (e1, n) khóa bí mật (d1, n) A2 có khóa công khai (e2, n) khóa bí mật (d2, n) Bây giờ, giả sử thực thể A có thông báo m cần gửi bí mật cho A1 A2 A tính: C1 = me1 mod n gửi cho A1 C2 = me2 mod n gửi cho A2 Khi Hacker sau trộm C1, C2 với cặp khóa công khai tính: Input: (n, e1), (n, e2), C1, C2 Output: Bản thông điệp m Bước 1: Tính f1 = e1-1 mod e2 Bước 2: Tính f2 = (f2.e1-1 )/ e2 Bước 2: Tính m1= c1f1 (c2f2)-1 mod n Khi đó, m1 = m thông điệp cần tìm Qua trình bày trên, ta thấy lỗ hổng 2, 3, 4, lỗ hổng trình ứng dụng hệmậtRSA sinh ra; lỗ hổng thứ khắc phục chọn số p q khác đủ lớn.Ta qui định số n phải lớn 10300 nhân tử nguyên tố không gần không cách xa độ lớn Số hóa Trung tâm Học liệu – ĐHTN 49 http://www.lrc.tnu.edu.vn 50 3.2.3.Độ antoànhệmậtRabin - Mô ̣t người tấ n công bị đô ̣ng cần phục hồi rõ m từ bản mã c Đây chính là giải toán bậc Vấ n đề phân tích thừa số n và tính bă ̣c theo module n là tương đương mă ̣t tính toán Vì giải sử viê ̣c phân tích thừa số số n là khó về mă ̣t tính toán lươ ̣c đồ mã hóa công khai Rabin đươ ̣c chứng minh là an toàn đối với mô ̣t người tấ n công bị đô ̣ng - Trong đươ ̣c chứng minh an toàn đố i với mô ̣t người tấ n công bị đô ̣ng Tuy nhiên độmậtRabin cần xem xét kỹ Thật vậy: Giả sử thực thể A (chẳng hạn Bộ Ngoại giao Tổng Công ty đó) cần gửi thông điệp m cho nhóm đối tác B1, B2, B3, giả sử đối tác sử dụng mậtmãRabin với khóa công khai khác là: n1, n2, n3 Rõ ràng, trường hợp (ni, nj) = với i ≠ j Nếu trái lại, chẳng hạn (n1, n2) = d >1 Khi d = p số nguyên tố chung n1 n2 tích số nguyên tố phân biệt, đó: q= 𝑛1 𝑝 = 𝑛2 𝑝 Thành thử n1=n2 =p.q Điều trái với giả thiết: n1 ≠ n2 A thực sau: Tính Ci = m2 mod ni , i =1, 2, Và A gửi mã Ci đến cho thực thể Bi , i= 1, 2, Số hóa Trung tâm Học liệu – ĐHTN 50 http://www.lrc.tnu.edu.vn 51 Bây giờ, giả sử có đối tượng D chặn bắt mã C1, C2, C3 đương nhiên D biết tham số công khai n1, n2, n3 B1, B2, B3 D công bảng mã sau: Giải hệ phương trình đồng dư tuyến tính sau đây: (I) 𝑥 ≡ 𝐶1 𝑚𝑜𝑑 𝑛1 {𝑥 ≡ 𝐶2 𝑚𝑜𝑑 𝑛2 𝑥 ≡ 𝐶3 𝑚𝑜𝑑 𝑛3 Vì (ni, nj) = 1; i ≠ j; Áp dụng định lý đồng dư trung hoa ta nhận nghiệm khoảng [0, n] với n = n1.n2.n3 Và yi = (n/ni)-1 mod ni (bằng áp dụng thuật toán Euclide mở rộng) Do ≤ m < ni (i = 1, 2, 3); ≤ x < n tính nghiệm hệ phương trình ( I ) nên x = m2 Từ D khôi phục thông báo m - Trong mậtmãRabin việc bổ sung tham số b không làm tăng thêm độantoàn cho mậtmãsố b công khao hóa Bây ta xét hệ thức: c = m2 mod n (1) Trong đó, m rõ, c mã, n khóa công khai Ta biết n = p.q tích số nguyên tố lẻ Do n phải số nguyên dương lẻ Vì ƯSCLN (2, n) = có tồn nghịch đảo theo modulo n mà ta ký hiệu là: d = 2-1 mod n Số hóa Trung tâm Học liệu – ĐHTN 51 http://www.lrc.tnu.edu.vn 52 Sau nhận mã c khóa công khai n, Hacker dễ dàng tính được: d = 2-1 mod n thuật toán Euclide mở rộng Do tính được: cd mod n = m mod n = m - Mặt khác, việc lặp lại số bít cuối rõ m để nơi nhận có chủ đích biết đâu rõ số nghiệm tìm cách thuận lợi mà không tăng độantoàn cho mậtmã Hơn nữa, ưu điểm hệmậtmã khóa công khai ứng dụng vào việc xác thực thông điệp ký số Trong hệmật Rabin, việc xác thực ký số gặp nhiều khó khăn so với hệmậtmãRSA 3.2.4 Kết luận Ta không nên dùng mậtmã khóa công khai Rabin bảo mật xác thực thong tin HệmậtRSA có lỗ hổng (được nêu 3.2.2.5), người ta có cách khắc phục mã 𝐶̅ = c.x2 mod n giải Như vậy, RSA cho antoàn theo chuẩn quốc tế (trong tiêu chuẩn quốc tế X.509 mậtmãRabinmà có mậtmãRSA ELGAMAL) 3.3 Chương trình thực nghiệm 3.3.1 Chuẩn bị liệu thử nghiệm Dữ liệu thử nghiệm chương trình tệp văn Tiếng Việt lưu trữ dạng tệp txt định dạng unicode Để kiểm tra tốc độ thực thuật toán, tác giả chuẩn bị liệu mẫu sau: Data1.txt: 1783 kí tự Data2.txt: 3568 kí tự Data3.txt: 7138 kí tự Số hóa Trung tâm Học liệu – ĐHTN 52 http://www.lrc.tnu.edu.vn 53 Data4.txt: 14278 kí tự Data5.txt: 28558 kí tự 3.3.2 Thử nghiệm chương trình Giao diện chương trình sau: - Vùng 1: vùng nhập tham số tùy chọn cho thuật toán hoạt động Tham số thứ kích thước giá trị p q tương ứng với độ lớn kích thước số hai số nguyên tố chương trình tự sinh, giá trị nhập vào số nguyên lớn Tham số thứ hai đường dẫn tệp liệu mô tả mục 3.4.1 - Vùng 2: hiển thị kết thực mã hóa giải mã theo thuật toánRSA Các thông tin hiển thị bao gồm giá trị số nguyên tố P, số nguyên tố Q, cặp khóa công khai để mã hóa (n, e), cặp khóa bí mật để giải mã (d, e), nội dung mã thời gian chạy thuật toán tính mili giây Số hóa Trung tâm Học liệu – ĐHTN 53 http://www.lrc.tnu.edu.vn 54 - Vùng 3: hiển thị kết thực mã hóa giải mã theo thuật toánRabin Các thông tin hiển thị bao gồm giá trị số nguyên tố P, số nguyên tố Q, nội dung mã thời gian chạy thuật toán tính mili giây Để chạy thử nghiệm thuật toán, giao diện chương trình cần nhập giá trị kích thước p,q chọn đến tệp liệu cần mã hóa Sau nhấn nút “THỰC HIỆN THUẬT TOÁN”, kết chương trình hiển thị vùng Dưới ví dụ với kích thước p, q 15 kí tự, kết thực thuật toán sau: 3.3.3 Thử nghiệm hiệu Kịch 1: Cố định kích thước p q 20, thay đổi tệp liệu đầu vào (từ data1.txt đến data5.txt, tệp liệu sau có kích thước gấp đôi tệp Số hóa Trung tâm Học liệu – ĐHTN 54 http://www.lrc.tnu.edu.vn 55 liệu trước) để theo dõi ảnh hưởng độ lớn văn đầu vào đến tốc độ thực thuật toán Với liệu đo lần ghi giá trị trung bình, lặp lại với liệu lại Kết thực ghi lại bảng đây: Bảng 3.1 Bảng thử nghiệm hiệu ( kịch 1) STT Bộ liệu Thời gian chạy RSA Thời gian chạy Rabin (mili giây) (mili giây) data1.txt 1008.057 105.9998 data2.txt 2041.117 210.0003 data3.txt 4108.1266 322.9935 data4.txt 8704.4984 655.0034 data5.txt 16075.9172 1197.0063 Số hóa Trung tâm Học liệu – ĐHTN 55 http://www.lrc.tnu.edu.vn 56 18000 16000 14000 12000 10000 8000 6000 4000 2000 Thời gian chạy RSA (mili giây) Thời gian chạy Rabin (mili giây) Qua kết thử nghiệm thấy tốc độ thực thuật toánRabin nhanh nhiều so với thuật toánRSA mức độ tăng Rabin Kịch 2: Cố định tệp liệu đầu vào (sử dụng tệp data5.txt), thay đổi kích thước p q để theo dõi ảnh hưởng kích thước số p, q đến tốc độ thực thuật toán Với liệu đo lần ghi giá trị trung bình, lặp lại với thử nghiệm lại Kết thực ghi lại bảng đây: Bảng 3.2 Bảng thử nghiệm hiệu ( kịch 2) Số hóa Trung tâm Học liệu – ĐHTN 56 http://www.lrc.tnu.edu.vn 57 Kích thước P,Q STT Thời gian chạy Thời gian chạy RSA (mili giây) Rabin (mili giây) 179.916 70.365 10 229.013 89.268 20 1002.065 105.306 40 5088.291 356.254 80 34567.91 1536.325 40000 35000 30000 25000 20000 15000 10000 5000 Thời gian chạy RSA (mili giây) Thời gian chạy Rabin (mili giây) Kết thử nghiệm tốc độ thuật toánRabin bị ảnh hưởng nhiều so với thuật toánRSASố hóa Trung tâm Học liệu – ĐHTN 57 http://www.lrc.tnu.edu.vn 58 KẾT LUẬN Trong luận văn em tiến hành nghiên cứu tổng quan hệmật mã; lý thuyết số; tìm hiểu, phân tích, nhận xét so sánh, đánhgiáđộantoànhệmậtmãRabinRSAHệmậtmãRSA có độ phức tạp lớn so với hệmậtmãRabin tốc độmã hóa mậtmãRabin nhanh mậtmãRSA nhiều Nhưng việc ứng dụng ký số xác thực hệmậtmãRSA tỏ ưu việt hẳn so với hệmậtmãRabin Còn mặtantoànmậtmãRabin có nhiều lỗ hổng RSA Ta không nên dùng mậtmã khóa công khai Rabin bảo mật xác thực thông tin HệmậtRSA có lỗ hổng (được nêu 3.2.2.5), người ta có cách khắc phục mã 𝐶̅ = c.x2 mod n giải Như vậy, RSA cho antoàn theo chuẩn quốc tế (trong tiêu chuẩn quốc tế X.509 mậtmãRabinmà có mậtmãRSA ELGAMAL) Mặc dù có nhiều cố gắng nghiên cứu thực luận văn, bảo nhiệt tình thầy giáo hướng dẫn, Tiến sỹ Hồ Văn Canh, động viên giúp đỡ bạn bè, đồng nghiệp luận văn tránh khỏi thiếu sót thời gian kiến thức người thực hạn chế Trong trình làm luận văn, em nhận giúp đỡ thầy cô trường Đại học Công nghệ thông tin Truyền thông nói chung thầy cô Phòng đào tạo sau đại học nói riêng Em xin chân thành cảm ơn toàn thể thầy cô giáo Bộ phận quản lý Đào tạo sau đại học Đặc biệt, em xin gửi lời cảm ơn sâu sắc đến thầy TS Hồ Văn Canh - Giáo viên trực tiếp hướng dẫn em hoàn thành luận văn này! Em xin chân ơn! Số hóa Trung tâm Học liệu – ĐHTN 58 http://www.lrc.tnu.edu.vn thành cảm 59 TÀI LIỆU THAM KHẢO Tài liệu tiếng việt: [1] Đặng Văn Cương - Vấn đề antoànhệmậtmã khoá công khai - Luận văn thạc sĩ, Khoa công nghệ thông tin - Đại học công nghệ 2003 [2] Phan Đình Diệu – Lý thuyết mậtmãantoàn thông tin, Đại học quốc gia Hà Nội 2002 [3] Trịnh Nhật Tiến – Giáo trình antoàn liệu – Khoa công nghệ thông tin, Đại học quốc gia Hà Nội 2008 Tài liệu tiếng anh: [4] Alfred J Menezes, Paul C Van Oorschot, Scott A Vanstone : Handboof of APPLIED CRYPTOGRAPHY CRC Press: Boca Raton, New York, London, Tokyo, 1997 [5] D.Bleichenbacher Chosen ciphertext attacks against protocols based on the RSA encryption standard PKCS #1 ,1998 [6] D.Boneh and G.Durfee New results on cryptanalysis of low private exponent RSA Preprint, 1998 [7] Mark Stamp Richard M.Low: “Applied Cryptanalysis”, A John Wiley & Sons INC publication, San Jose state University, San Jose CA 2007 [8] M Wiener Cryptanalysis of short RSA secret exponents IEEE Transactions on Information Theory, 1990 [9] http://www.RSA.com [10] http://www.RSAsercurity.com Số hóa Trung tâm Học liệu – ĐHTN 59 http://www.lrc.tnu.edu.vn ... vi nghiên cứu: - Tìm hiểu sở lý thuyết số; tổng quan hệ mật mã, mật mã khóa công khai; - Phân tích, nhận xét ưu nhược điểm hệ mật mã Rabin RSA; - So sánh, đánh giá độ an toàn hệ mật mã Rabin RSA; ... 45 3.2 So sánh độ an toàn hệ mật mã Rabin với RSA 45 3.2.1 Khái niệm độ an toàn thuật toán 45 3.2.2 Hệ mật mã RSA 46 3.2.3 .Độ an toàn hệ mật Rabin 50 3.2.4... TỔNG QUAN HỆ MẬT MÃ Trong chương giới thiệu tổng quan hệ mật mã; hệ mật mã khóa không công khai; hệ mật mã khóa công khai; kiến thức sở lý thuyết số Chương 2: HỆ MẬT MÃ RABIN VÀ HỆ MẬT MÃ RSA Trong