Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
883,51 KB
Nội dung
MỤC LỤC GIỚI THIỆU Chương MỘT SỐ KHÁI NIỆM CƠ BẢN 1.1 CÁC KHÁI NIỆM TRONG TOÁN HỌC 1.1.1 Một số khái niệm số học 1.1.1.1 Số nguyên tố 1.1.1.2 Ước số bội số 1.1.1.3 Ước số chung bội số chung 1.1.1.4 Số nguyên tố 1.1.1.5 Khái niệm Đồng dư 1.1.2 Một số khái niệm đại số 1.1.2.1 Nhóm 1.1.2.2 Nhóm nhóm (G, *) 1.1.2.3 Nhóm Cyclic 1.1.2.4 Tập thặng dư thu gọn theo modulo 10 1.1.2.5 Phần tử nghịch đảo phép nhân 10 1.1.3 Độ phức tạp thuật toán 11 1.1.3.1 Khái niệm toán 11 1.1.3.2 Khái niệm thuật toán 11 1.1.3.3 Khái niệm Độ phức tạp thuật toán 11 1.1.3.4 Khái niệm “dẫn được” 13 1.1.3.5 Khái niệm khó tương đương 13 1.1.3.6 Lớp toán P, NP 13 1.1.3.7 Lớp toán NP-hard 14 1.1.3.8 Lớp toán NP-Complete 14 1.1.3.9 Hàm phía hàm cửa sập phía 14 1.2 VẤN ĐỀ MÃ HÓA DỮ LIỆU 15 1.2.1 Khái niệm Mã hóa 15 1.2.2 Phân loại mã hóa 16 1.2.2.1 Hệ mã hóa khóa đối xứng 16 1.2.2.2 Hệ mã hóa khóa cơng khai 17 1.3 VẤN ĐỀ CHỮ KÝ SỐ 19 1.3.1 Khái niệm “chữ ký số” 19 1.3.1.1 Giới thiệu “chữ ký số” 19 1.3.1.2 Sơ đồ “chữ ký số” 20 1.3.2 Phân loại “chữ ký số” 21 1.3.2.1 Phân loại chữ ký theo đặc trưng kiểm tra chữ ký 21 1.3.2.2 Phân loại chữ ký theo mức an toàn 21 1.3.2.3 Phân loại chữ ký theo ứng dụng đặc trưng 21 1.4 MỘT SỐ BÀI TOÁN QUAN TRỌNG TRONG MẬT MÃ 22 1.4.1 Bài toán kiểm tra số nguyên tố lớn 22 1.4.2 Bài toán phân tích thành thừa số nguyên tố 27 1.4.3 Bài tốn tính logarit rời rạc theo modulo 30 Chương TẤN CÔNG CHỮ KÝ SỐ 32 2.1 TẤN CÔNG CHỮ KÝ RSA 32 2.1.1 Chữ ký RSA 32 2.1.1.1 Sơ đồ chữ ký 32 2.1.1.2 Ví dụ 32 2.1.2 Các dạng công vào chữ ký RSA 33 2.1.2.1 Tấn công dạng 1: Tìm cách xác định khóa bí mật 33 2.1.2.2 Tấn công dạng 2: Giả mạo chữ ký (khơng tính trực tiếp khóa bí mật) 42 2.2 TẤN CÔNG CHỮ KÝ ELGAMAL 44 2.2.1 Chữ ký Elgamal 44 2.2.1.1 Sơ đồ chữ ký 44 2.2.1.2 Ví dụ 45 2.2.2 Các dạng công vào chữ ký Elgamal 46 2.2.2.1 Tìm cách xác định khóa bí mật 46 2.2.2.2 Giả mạo chữ ký (khơng tính trực tiếp khóa bí mật) 47 2.3 TẤN CÔNG CHỮ KÝ DSS 49 2.3.1 Chữ ký DSS 49 2.3.1.1 Sơ đồ chữ ký DSS 49 2.3.1.2 Ví dụ 50 KẾT LUẬN 52 BẢNG CHỮ VIẾT TẮT 53 TÀI LIỆU THAM KHẢO 54 GIỚI THIỆU Con người có nhu cầu trao đổi thơng tin với Nhu cầu tăng cao cơng nghệ đời đáp ứng cho việc trao đổi thông tin ngày nhanh Chúng ta không quên việc máy điện thoại đời bước tiến vượt bậc việc rút ngắn khoảng cách đáng kể thời gian không gian hai bên muốn trao đổi thơng tin Những thư hay điện tín gửi nhanh phương tiện truyền thông phát triển Đặc biệt từ Internet xuất hiện, dường yêu cầu trao đổi thông tin đáp ứng ấn phím “send” Sẽ cịn nhiều tiện ích mà cơng nghệ đem lại cho lĩnh vực Kinh tế-Văn hóa-Giáo dục-Y tế Ích lợi Internet mang lại xã hội vô cùng, không kể đến mặt trái người sử dụng với mục đích khơng tốt Vì mà thơng tin quan trọng truyền mạng hợp đồng ký kết, văn kiện mang tính bảo mật vấn đề quan tâm có truyền an tồn hay khơng? Do để chống lại cơng hay giả mạo, nảy sinh yêu cầu cần phải làm cho văn gửi “khơng nhìn thấy”, khơng thể giả mạo văn bản, dù có xâm nhập vào văn Nhu cầu ngày đáp ứng cơng nghệ mã hóa chữ ký số đời Với công nghệ này, trợ giúp người giải tốn nan giải bảo mật trao đổi thơng tin Cùng với phát triển mật mã khóa công khai, người ta nghiên cứu đưa nhiều phương pháp, nhiều kỹ thuật ký chữ ký số ứng dụng hoạt động kinh tế, xã hội Chẳng hạn ứng dụng thương mại điện tử, giao dịch chủ tài khoản ngân hàng, ứng dụng phủ điện tử địi hỏi việc xác nhận danh tính phải đảm bảo Ngày chữ ký số sử dụng nhiều lĩnh vực kinh tế với việc trao đổi hợp đồng đối tác kinh doanh, xã hội bỏ phiếu kín tiến hành bầu cử từ xa, hay thi phạm vi rộng lớn Một số chữ ký xây dựng là: chữ ký RSA, chữ ký ELGAMAL, chữ ký DSS, chữ ký RABIN Mặc dù chữ ký số nhiều hạn chế kích thước chữ ký, hay khả chống giả mạo chưa cao khả mà đem lại hữu ích RSA (Rivest-Shamir-Adleman): năm 1977, R.1 Rivest, A Shamir L.M Adleman đề xuất hệ mật mã khóa cơng khai mà độ an tồn hệ dựa vào tốn khó “phân tích số nguyên thành thừa số nguyên tố”, hệ trở thành hệ tiếng mang tên hệ RSA ELGAMAL: hệ mật mã ElGamal T ElGamal đề xuất năm 1985, độ an toàn hệ dựa vào độ phức tạp tốn tính logarit rời rạc DSS (Digital Signature Standard) đề xuất từ năm 1991 chấp nhận vào cuối năm 1994 để sử dụng số lĩnh vực giao dịch điện tử Hoa Kỳ DSS dựa vào sơ đồ chữ ký ElGamal với vài sửa đổi RABIN: hệ mã hóa khóa cơng khai M.O Rabin đề xuất năm 1977, độ an tồn hệ dựa vào tốn khó “phân tích số nguyên thành thừa số nguyên tố” Khi nói đến chữ ký điện tử, ln lấy mục tiêu an toàn lên hàng đầu Một chữ ký điện tử thực áp dụng thực tế chứng minh khơng thể giả mạo Mục tiêu lớn kẻ công sơ đồ chữ ký giả mạo chữ ký, điều có nghĩa kẻ cơng sinh chữ ký người ký lên thông điệp, mà chữ ký chấp nhận người xác nhận Trong thực tế hành vi công chữ ký điện tử đa dạng Đó vấn đề nghiên cứu luận văn “Nghiên cứu số loại công chữ ký số” Nội dung luận văn bao gồm chương: Chương 1: Một số khái niệm Chương 2: Tấn công chữ ký số Chương MỘT SỐ KHÁI NIỆM CƠ BẢN 1.1 CÁC KHÁI NIỆM TRONG TOÁN HỌC 1.1.1 Một số khái niệm số học 1.1.1.1 Số nguyên tố 1/ Khái niệm Số nguyên tố số tự nhiên lớn có hai ước 2/ Ví dụ: Các số 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37 số nguyên tố Số số nguyên tố chẵn Số ngun tố có vai trị ý nghĩa to lớn số học lý thuyết mật mã Bài toán kiểm tra tính nguyên tố số nguyên dương n phân tích số n thừa số nguyên tố toán quan tâm Ví dụ: 10 số ngun tố lớn tìm thấy [33] rank Prime Digits Who when reference 32582657 - 9808358 G9 2006 Mersenne 44?? 2 30402457 - 9152052 G9 2005 Mersenne 43?? 25964951 - 7816230 G8 2005 Mersenne 42?? 24036583 - 7235733 G7 2004 Mersenne 41?? 20996011 - 6320430 G6 2003 Mersenne 40?? 13466917 - 4053946 G5 2001 Mersenne 39?? 19249 13018586 + 3918900 SB10 2007 27653 9167433 + 2759677 SB8 2005 28433 7830457 + 2357207 SB7 2004 10 33661 7031232 + 2116617 SB11 2007 1.1.1.2 Ước số bội số 1/ Khái niệm Cho hai số nguyên a b, b Nếu có số nguyên q cho a = b*q, ta nói a chia hết cho b, kí hiệu b\a Ta nói b ước a, a bội b 2/ Ví dụ: Cho a = 6, b = 2, ta có = 2*3, ký hiệu 2\6 Ở ước bội Cho số nguyên a, b 0, tồn cặp số nguyên (q, r) (0 r < /b/) cho a = b*q + r Khi q gọi thương nguyên, r gọi số dư phép chia a cho b Nếu r = ta có phép chia hết Ví dụ: Cho a = 13, b = 5, ta có 13 = 5*2 + Ở thương q = 2, số dư r = 1.1.1.3 Ước số chung bội số chung 1/ Khái niệm Số nguyên d gọi ước chung số nguyên a1 , a , , a n , ước tất số Số nguyên m gọi bội chung số nguyên a1 , a , , a n , bội tất số Một ước chung d > số nguyên a1 , a , , a n , ước chung a1 , a , , a n ước d, d gọi ước chung lớn (UCLN) a1 , a , , a n Ký hiệu d = gcd ( a1 , a , , a n ) hay d = UCLN( a1 , a , , a n ) Một bội chung m > số nguyên a1 , a , , a n , bội chung a1 , a , , a n bội m, m gọi bội chung nhỏ (BCNN) a1 , a , , a n Ký hiệu m = lcm( a1 , a , , a n ) hay m = BCNN( a1 , a , , a n ) 2/ Ví dụ: Cho a = 12, b = 15, gcd(12, 15) = 3, lcm(12, 15) = 60 1.1.1.4 Số nguyên tố 1/ Khái niệm Nếu gcd( a1 , a , , a n ) = 1, số a1 , a , , a n gọi nguyên tố 2/ Ví dụ: Hai số 13 nguyên tố nhau, gcd(8, 13) = 1.1.1.5 Khái niệm Đồng dư 1/ Khái niệm Cho hai số nguyên a, b, m (m > 0) Ta nói a b “đồng dư” với theo modulo m, chia a b cho m, ta nhận số dư Ký hiệu: a b (mod m) 2/ Ví dụ: 17 (mod 3) chia 17 cho 3, số dư 1.1.2 Một số khái niệm đại số 1.1.2.1 Nhóm 1/ Khái niệm Nhóm bội (G, *), G , * phép tốn hai ngơi G thỏa mãn ba tính chất sau: + Phép tốn có tính kết hợp: (x*y)*z = x*(y*z) với x, y, z + Có phần tử trung lập e + Với x G: x*e = e*x = x G, có phần tử nghịch đảo x‟ với x G G G: x*x‟ = x‟*x = e Cấp nhóm G hiểu số phần tử nhóm, ký hiệu |G| Cấp nhóm G có vơ hạn phần tử Nhóm Abel nhóm (G, *), phép tốn hai ngơi * có tính giao hốn Tính chất: Nếu a*b = a*c, b = c Nếu a*c = b*c, a = b 2/ Ví dụ: * Tập hợp số nguyên Z với phép cộng (+) thơng thường nhóm giao hốn, có phần tử đơn vị số Gọi nhóm cộng số nguyên * Tập Q * số hữu tỷ khác (hay tập R * số thực khác 0), với phép nhân (*) thông thường nhóm giao hốn Gọi nhóm nhân số hữu tỷ (số thực) khác * Tập vectơ khơng gian với phép tốn cộng vectơ nhóm giao hốn 1.1.2.2 Nhóm nhóm (G, *) 1/ Khái niệm Nhóm G tập S G, S , thỏa mãn tính chất sau: + Phần tử trung lập e G nằm S + S khép kín phép tính (*) G, tức x*y + S khép kín phép lấy nghịch đảo G, tức x S với x, y S với x S S 1.1.2.3 Nhóm Cyclic 1/ Khái niệm Nhóm (G, *) gọi Nhóm Cyclic sinh phần tử Tức có phần tử g g n =g*g* *g = a G mà với a G, tồn n N để (Chú ý g*g* *g g*g với n lần) Nói cách khác: G gọi Nhóm Cyclic tồn g G cho phần tử G lũy thừa nguyên g 2/ Ví dụ: Nhóm (Z , +) gồm số nguyên dương Cyclic với phần tử sinh g = 1.1.2.4 Tập thặng dư thu gọn theo modulo 1/ Khái niệm Kí hiệu Z n = {0, 1, 2, , n-1} tập số nguyên không âm < n Z n phép cộng (+) lập thành nhóm Cyclic có phần tử sinh 1, phần tử trung lập e = (Z n , +) gọi nhóm cộng, nhóm hữu hạn có cấp n Kí hiệu Z *n = {x Z n , x nguyên tố với n} Tức x phải Z *n gọi Tập thặng dư thu gọn theo mod n, có số phần tử (n) Z *n với phép nhân mod n lập thành nhóm (nhóm nhân), phần tử trung lập e = Tổng quát (Z *n , phép nhân mod n) khơng phải nhóm Cyclic Nhóm nhân Z *n Cyclic n có dạng: 2, 4, p k hay 2p k với p nguyên tố lẻ 2/ Ví dụ: Cho n = 21, Z *n = {1, 2, 4, 5, 8, 10, 11, 13, 16, 17, 19, 20} 1.1.2.5 Phần tử nghịch đảo phép nhân 1/ Khái niệm Z n , tồn b Cho a Z n cho a b (mod n), ta nói b phần tử nghịch đảo a Z n ký hiệu a Một phần tử có phần tử nghịch đảo, gọi khả nghịch 2/ Ví dụ: Tìm phần tử nghịch đảo Z Tức phải giải phương trình x (mod 7), x phần tử nghịch đảo I gi ui vi 1 2 1 -2 3 Vì t = V = -2 < x = a := + n = -2 + = Vậy phần tử nghịch đảo Z 10 y 6/ Dùng tham số p-1 q-1 có ước nguyên tố nhỏ Khi xây dựng sơ đồ chữ ký RSA, ta bất cẩn việc chọn tham số p q để p-1 q-1 có ước nguyên tố nhỏ, sơ đồ chữ ký trở nên an tồn Khi p-1 q-1 có ước ngun tố nhỏ ta dùng thuật tốn Pollar đưa vào năm 1974 phân tích n cách hiệu Thuật toán Pollar Input : n cận b output: trả lời - Thành công đưa thừa số n - Không thành công Method: B1: a:=2; B2: For j:=2 to b a:= a j mod n B3: d:= UCLN(a-1, n); B4: If 1