Nghiên cứu một số loại tấn công chữ ký số

63 1 0
  • Loading ...
1/63 trang

Thông tin tài liệu

Ngày đăng: 15/03/2019, 09:53

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Ữ SỐ 19 1.3.1 Khái niệm “chữ số” 19 1.3.1.1 Giới thiệu “chữ số” 19 1.3.1.2 đồ “chữ số” 20 1.3.2 Phân loại “chữ số” 21 1.3.2.1 Phân loại chữ theo đặc trưng kiểm tra chữ 21 1.3.2.2 Phân loại chữ theo mức an toàn 21 1.3.2.3 Phân loại chữ 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 tố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Ữ SỐ 32 2.1 TẤN CÔNG CHỮ RSA 32 2.1.1 Chữ RSA 32 2.1.1.1 đồ chữ 32 2.1.1.2 Ví dụ 32 2.1.2 Các dạng công vào chữ 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ữ (khơng tính trực tiếp khóa bí mật) .42 2.2 TẤN CƠNG CHỮ ELGAMAL 44 2.2.1 Chữ Elgamal 44 2.2.1.1 đồ chữ 44 2.2.1.2 Ví dụ 45 2.2.2 Các dạng công vào chữ 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ữ (khơng tính trực tiếp khóa bí mật) 47 2.3 TẤN CÔNG CHỮ DSS 49 2.3.1 Chữ DSS 49 2.3.1.1 đồ chữ 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 ln 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ẽ 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ế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 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ữ số đời Với cơng nghệ này, trợ giúp người giải toá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 chữ 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ữ 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ữ xây dựng là: chữ RSA, chữ ELGAMAL, chữ DSS, chữ RABIN Mặc dù chữ 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ố ngun 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 đồ chữ 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 toà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ữ điện tử, lấy mục tiêu an toàn lên hàng đầu Một chữ đ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 đồ chữ giả mạo chữ ký, điều có nghĩa kẻ cơng sinh chữ người lên thông điệp, mà chữ chấp nhận người xác nhận Trong thực tế hành vi công chữ đ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ữ 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ữ 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ố nguyên tố có vai trò ý nghĩa to lớn số học lý thuyết mật mã Bài tố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ố tốn quan tâm Ví dụ: 10 số nguyên tố lớn tìm thấy [33] rank Prime Digits Who when reference 32582657 -1 9808358 G9 2006 Mersenne 44?? 2 30402457 -1 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 +1 3918900 SB10 2007 27653 9167433 +1 2759677 SB8 2005 28433 7830457 +1 2357207 SB7 2004 10 33661 7031232 +1 2116617 SB11 2007 -1 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, 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 , a2 , , an , ước tất số Số nguyên m gọi bội chung số nguyên a1 , a2 , , an , bội tất số Một ước chung d > số nguyên a1 , a2 , , an , ước chung a1 , a2 , , an ước d, d gọi ước chung lớn (UCLN) a1 , a2 , , an hiệu d = gcd ( a1 , a2 , , an ) hay d = UCLN( a1 , a2 , , an ) Một bội chung m > số nguyên a1 , a2 , , an , bội chung a1 , a2 , , an bội m, m gọi bội chung nhỏ (BCNN) a1 , a2 , , an hiệu m = lcm( a1 , a2 , , an ) hay m = BCNN( a1 , a2 , , an ) 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 , a2 , , an ) = 1, số a1 , a2 , , an 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ố 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) + 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, y, z với x G G G: x*x‟ = x‟*x = e Cấp nhóm G hiểu số phần tử nhóm, 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 với x, y + S khép kín phép lấy nghịch đảo G, tức x 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 mà với a G, tồn n N để g n =g*g* *g = a (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 * = {x Z n , x nguyên tố với n} Tức x phải n Z * gọi Tập thặng dư thu gọn theo mod n, có số phần tử (n) n Z * 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 = n Tổng quát (Z * , phép nhân mod n) nhóm Cyclic n Nhóm nhân Z * Cyclic n có dạng: 2, 4, p k hay 2p k với p nguyên tố lẻ n 2/ Ví dụ: Cho n = 21, Z * = {1, 2, 4, 5, 8, 10, 11, 13, 16, 17, 19, 20} n 1.1.2.5 Phần tử nghịch đảo phép nhân 1/ Khái niệm Cho a Z n , tồn b Z cho a b (mod n), ta nói b phần tử n nghịch đảo a Z n 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 SigG (u) 2.1.2.2 Tấn công dạng 2: Giả mạo chữ (khơng tính trực tiếp khóa bí mật) 1/ trước, Mã hóa sau Người gửi G gửi tài liệu x chữ y đến người nhận N, G trước vào x chữ y = SigG (x) , sau mã hóa x y nhận Z eG (x, y) G gửi z cho N H lấy trộm thông tin truyền từ G đến N Để cơng x, H tìm cách giải mã thơng tin lấy Để công vào chữ thay chữ (giải mạo), H tìm cách giải mã Z, nhận y Sau H thay y chữ giả mạo y‟, gửi đến N Tuy nhiên trường hợp H phải giải mã trước, sau giả mạo chữ Giải pháp phòng tránh: chọn số lập mã giải mã số ngun lớn, có kích cỡ lớn gần thân số n 2/ Mã hóa trước, sau Người gửi G gửi tài liệu x chữ y đến người nhận N, G mã hóa trước x u eG (x) , sau vào u chữ v G gửi (u, v) cho N H lấy trộm thông tin đường truyền từ G đến N Để công x, H tìm cách giải mã thơng tin lấy Để cơng chữ v, H sẵn có v‟, H việc thay v v‟ H thay chữ v u, chữ (của H) v’ = SigH (u) , gửi (u, v’) đến N Khi nhận v’, N kiểm thử thấy sai, gửi phản hồi lại G G chứng minh chữ giả mạo G gửi chữ v cho N, trình truyền tin bị chậm lại Như trường hợp này, H giả mạo chữ mà không cần giải mã Giải pháp phòng tránh: Hãy trước, sau mã hóa chữ Chọn số lập mã giải mã số ngun lớn, có kích cỡ lớn gần thân số n 42 3/ Kẻ cơng có khả kiểm tra chữ khác có phù hợp với thơng điệp có trước hay không Đây kiểu công thông dụng thực tế thường chia làm lớp: - Kẻ cơngchữ cho lớp thông điệp - Kẻ công dành chữ cho danh sách thông điệp trước tiến hành hoạt động phá hủy chữ ký, cách cơng non-adaptive (khơng mang tính phù hợp), thơng điệp chọn trước chữ gửi - Kẻ công phép sử dụng người bên đáng tin cậy, kẻ cơng yêu cầu chữ cho thông điệp, mà thơng điệp phụ thuộc vào khóa cơng khai người Như kẻ cơng u cầu chữ thông điệp phụ thuộc vào chữ thông điệp dành trước qua tính tốn chữ Giải pháp phòng tránh: Sử dụng giải pháp phòng tránh trình bày với dạng công chữ Đây kiểu công thám mã chuyên nghiệp 43 Z *p 2.2 TẤN CÔNG CHỮ ELGAMAL 2.2.1 Chữ Elgamal 2.2.1.1 đồ chữ 1/ đồ (Elgamal đề xuất năm 1985) * Tạo cặp khóa (bí mật, công khai) (a, h): Chọn số nguyên tố p cho toán logrit rời rạc Z p “khó” giải Chọn phần tử nguyên thủy g Chọn khóa bí mật a Z *p Đặt P = Z *p , A = Z *p x Z p Z *p Tính khóa cơng khai h Định nghĩa tập khóa: K = {(p, g, a, h): h g a mod p g a mod p} Các giá trị p, g, h công khai, phải giữ bí mật a * số: Dùng khóa ký: khóa a khóa ngẫu nhiên bí mật r (Vì r Z *p , nên nguyên tố p -1, tồn r mod (p-1)) Chữ x P y = Sigk ( x, r) = ( , ), y A (E1) Trong Z *p , = g r mod p Zp 1: = (x – a* )* r mod (p-1) * Kiểm tra chữ ký: Ver (x, , ) = g x mod p h * (E2) k 2/ Chú ý: Nếu chữ tính đúng, kiểm thử thành cơng h * Do g a * g r* mod p = (x – a * ) * r g(a r* ) mod p g x mod p mod (p-1) nên (a * + r * ) x mod (p-1) - Chữ Elgamal thuộc loại chữ kèm thông điệp Tức người gửi chuyển “chữ ký”, phải gửi kèm thông điệp “ký” “chữ ký” Ngược lại, người nhận khơng có thơng điệp gốc 44 2.2.1.2 Ví dụ Chữ Elgamal liệu x = 112 * Tạo cặp khóa (bí mật, cơng khai) (a, h): Chọn số nguyên tố p = 463 Đặt P = Z *p , A = Z *p x Z p Chọn phần tử nguyên thủy g = Chọn khóa bí mật a = 211 Tính khóa cơng khai h Z *p Z *p g a mod p = 211 mod 463 = 249 g a mod p} Định nghĩa tập khóa: K = {(p, g, a, h): h Các giá trị p, g, h cơng khai, phải giữ bí mật a * số: Chọn ngẫu nhiên bí mật r = 235 Vì r Z *p Khóa (a, r) Z * , nên nguyên tố p-1, tồn r mod (p-1) Cụ thể: p Chữ liệu x = 112 ( , ) = (16, 108), đó: = g r mod p = 235 mod 463 = 16 = (x – a* )* r mod (p-1) = (112 – 211 * 16) * 289 mod 462 = 108 * Kiểm tra chữ ký: Verk (x, , ) = h * h * 24916 *16108 mod 463 132 g x mod p 2112 mod 463 132 Hai giá trị nhau, chữ 45 g x mod p 2.2.2 Các dạng công vào chữ Elgamal 2.2.2.1 Xác định khóa (tìm cách xác định khóa bí mật) 1/ Số ngẫu nhiên r bị lộ: Nếu r bị lộ, thám mã tính khóa mật a = (x – r ) mod( p 1) Giải pháp phòng tránh: Cần thận trọng việc sử dụng số ngẫu nhiên k, không để lộ số k dùng 2/ Dùng r cho hai lần khác nhau: Giả sử dùng r cho hai lần x1 x2 ( , ) chữ x1 , ( , ) chữ x2 , Khi thám mã tính a sau: * x Do ta có Đặt , tương đương với Đặt d = ( 1 x1 x2 r * (mod p) x (mod p) (mod p) ta có x1 x2 k*( ) 12 x x r( ) mod( p (mod p) 1) (1) , p-1) Khi d | (p-1), x' d|( 12 ) d | ( x1 x2 ) x1 x2 d ' d p' p d Khi đồng dư thức (1) trở thành: Vì ( ‟, p‟) = nên tính x' r * = ( ‟-1) mod p‟ '(mod p') tính r = x‟* mod p‟ r = x‟* + i*p‟ mod (p-1), với i giá trị đó, i d-1 Thử với giá trị đó, ta tìm r (điều kiện thử để xác định r Tiếp theo tính a trường hợp → Giải pháp phòng tránh: lần sử dụng số k khác 46 r mod p ) 3/ Khóa mật a q nhỏ Nếu khóa mật a q nhỏ, phương pháp dò tìm đơn giản, người ta tính Giải pháp phòng tránh: chọn khóa bí mật a số ngun lớn, có kích cỡ lớn gần thân số n 4/ Số ngẫu nhiên r nhỏ Tương tự khóa mật a, số ngẫu nhiên r phải bí mật Trong trường hợp tham số nhỏ, hiển nhiên phương pháp dò tìm đơn giản người ta tìm chúng Khi đồ chữ an toàn Nếu r bị lộ, thám mã tính khóa mật a = (x – r ) mod( p 1) Giải pháp phòng tránh: chọn số ngẫu nhiên r số ngun lớn, có kích cỡ lớn gần thân số n 2.2.2.2 Giả mạo chữ (không tính trực tiếp khóa bí mật) 1/ Trường hợp 1: Giả mạo chữ không với tài liệu + H cố gắng giả mạo chữ x, mà khơng biết khóa bí mật a Như vậy, H phải tính * Nếu chọn trước , H phải tính gxh Tức mod p hay qua đẳng thức h * g x mod p (E2) log g x h mod p * Nếu chọn trước , H phải tính qua phương trình: h * g x mod p Hiện chưa có cách hữu hiệu trường hợp trên, đoán khó tốn logarit rời rạc Có thể có cách tính , đồng thời với ( , ) chữ ký? Chưa có trả lời rõ! * Nếu chọn trước , , sau tính x, H phải đối dấu với tốn logarit rời rạc Ta có h * Như x g x mod p (E2) logg g x logg h * 47 2/ Trường hợp 2: Giả mạo chữ với tài liệu H tài liệu ngẫu nhiên cách chọn trước đồng thời x, Cách * Chọn x, , , thỏa mãn điều kiện kiểm thử sau: Chọn số nguyên i, j cho i, j g i h j mod p , p-2, j mod( p 1) , (j, p-1) = tính: x ij mod( p 1) Trong tính theo mod (p-1) (nghĩa j nguyên tố với p-1) j1 * Chứng minh ( , ) chữ x, cách kiểm tra điều kiện kiểm thử: h (g i h j ) h j mod p h g i j 1h mod p g x mod p Cách * Nếu ( , ) chữ tài liệu x có từ trước, giả mạo chữ tài liệu x‟ khác + Chọn số ngẫu nhiên k, i, j thỏa mãn k, i, j p-2, (k (kj mod p , ) mod( p kgihj x' (kx i )(k - j , p-1) = tính: 1) , j ) mod( p 1) * ( , ) chữ x‟, thỏa mãn điều kiện kiểm thử: h g x ' mod p Chú ý Cả hai cách giả mạo nói cho chữ tài liệu tương đương, khơng phải tài liệu chọn theo ý người giả mạo Tài liệu tính sau tính chữ ký, giả mạo loại thực tế khơng có ý nghĩa nhiều 48 2.3 TẤN CÔNG CHỮ DSS 2.3.1 Chữ DSS 2.3.1.1 đồ chữ DSS 1/ Giới thiệu chuẩn chữ số DSS Chuẩn chữ số (DSS: Digital Signature Standard) đề xuất năm 1991, cải biên đồ chữ Elgamal, chấp nhận chuẩn vào năm 1994 để dùng số lĩnh vực giao dịch USA Thơng thường tài liệu số mã hóa giải mã 1lần Nhưng chữ lại liên quan đến pháp luật, chữ phải kiểm thử sau nhiều năm Do chữ phải bảo vệ cẩn thận Như số nguyên tố p phải đủ lớn (chẳng hạn dài cỡ 512 bit) để bảo đảm an tồn, nhiều người đề nghị phải dài 1024 bit Tuy nhiên, độ dài chữ theo đồ Elgamal gấp đối số bít p, p dài 512 bít độ dài chữ 1024 bit Trong ứng dụng dùng thẻ thông minh (Smart card) lại mong muốn có chữ ngắn, nên giải pháp sửa đổi mặt dùng p với độ dài từ 512 bit đến 1024 bit (bội 64), mặt khác chữ ( , ), số , có độ dài biểu diễn ngắn, ví dụ 160 bit Khi chữ 320 bit Điều thực cách dùng nhóm cyclic Z q* Z *p thay cho Z *p , tính tốn thực Z *p , thành phần chữ lại thuộc Z q* Thay đổi cơng thức tính đồ chữ Elgamal thành Điều kiện kiểm thử h a x* ** Nếu (x + g * g x mod p sửa thành (mod p) , p-1) = mod p tồn 49 (x a * )r mod q 2/ đồ chữ DSS đồ * Tạo cặp khóa (bí mật, cơng khai) (a, h): + Chọn số nguyên tố p cho toán logarit rời rạc Chọn q ước nguyên tố p-1 Tức p-1 = t * q Z p “khó” giải hay p = t * q + (Số nguyên tố p cỡ 512 bit, q cỡ 160 bit) (g phần tử sinh Z *p ) Z *p bậc q mod p, + Chọn g = g t , chọn khóa bí mật a Z *p , tính khóa cơng khai h Tính + Đặt P = Z q* , A = Z q* x Z q* , K = {(p, q, , a, h)/ a + Với khóa (p, q, Z *p , h , a, h), k‟ = a bí mật, k” = (p, q, a a mod p } , h) công khai * số: Dùng khóa ký: khóa a khóa ngẫu nhiên bí mật r Chữ x ( r Z *p (x Z q* ( , ) , Sigk ' (x, r) mod p) mod q , mod p a * ) * r mod q Z q* , để bảo đảm tồn r mod q) (Chú ý r * Kiểm tra chữ ký: Với e Ver (x, , ) x* mod q , e * mod q k" e (1 * he2 mod p) mod q 2.3.1.2 Ví dụ * Tạo cặp khóa (bí mật, cơng khai) (a, b): Chọn p = 7649, q = 239 ước nguyên tố p – 1, t = 32 Tức p-1 = t * q hay p = t * q + = 32 * q + = 32*239 + = 7649 Chọn g = phần tử sinh Z g t mod p 332 mod 7649 7098 7649 a Chọn khóa mật a = 85, khóa cơng khai h 5387 mod p 709885 mod 7649 * * số: Dùng khóa ký: a khóa ngẫu nhiên r = 58 Z q , r mod q = 136 + Chữ x = 1246 ( r Sigk ' (x, r) ( , ) = (115, 87), mod p) mod q = ( 709858 mod7649) mod 239 = 593 mod 239 = 115 (x a * ) * r mod q = (1246 + 85 * 115) * 136 mod 239 = 87 50 * Kiểm tra chữ ký: ( , ) = (115, 87) chữ x = 1246 1 e * ex * mod q = 1246 * 11 mod q = 83, mod q = 115 * 11 mod q = 70 Điều kiện kiểm thử ? ( e * he mod p) mod q , với = 11 (709883 * 538770 mod 7649) mod 239 593mod 239 115 Chú ý: 1) Liên quan tới tính tốn cụ thể đồ: + Chú ý phải có (mod q) để bảo đảm có mod q điều kiện kiểm thử (tương đương UCLN( , p-1) = 1) Vì chọn r mà không điều kiện trên, phải chọn r khác để có Tuy nhiên khả (mod q) (mod q) 160 , điều khơng xảy + Một ý thay tính p trước tính q, ta tính q trước tìm p 2) Liên quan chung tới DSS (1991): + Độ dài cố định p 512 bit Nhiều người muốn p thay đổi lớn Vì NIST sửa đồi p có độ dài thay đổi, bội 64: từ 512 đến 1024 bit + Nếu dùng chữ RSA với thành phần kiểm thử chữ nhỏ, việc kiểm thử nhanh việc Đối với DSS, ngược lại, việc nhanh kiểm thử Điều dẫn đến vấn đề: Một tài liệu lần, lại kiểm thử nhiều lần, nên người ta muốn thuật toán kiểm thử nhanh Máy tính kiểm thử nào? Nhiều ứng dụng dùng thẻ thông minh với khả có hạn, kết nối với máy tính mạnh hơn, nên xây dựng đồ chữ liên quan đến thẻ Nhưng tình đặt thẻ thơng minh sinh chữ kiểm thử chữ ký, khó kết luận? NIST trả lời thời gian kiểm thử sinh chữ ký, nhanh không quan trọng, miễn đủ nhanh Chữ DSS thuộc loại chữ kèm thơng điệp Đó cải tiến chữ Elgamal Các dạng công vào DSS tương tự với chữ Elgamal 51 KẾT LUẬN Cùng với phát triển chung lồi người, cơng nghệ thơng tin lĩnh vực đem lại nhiều lợi ích cho xã hội, trở thành yếu tố thiếu kinh tế hội nhập toàn cầu hóa xã hội lồi người Chính an tồn bảo mật thơng tin yếu tố quan trọng, đảm bảo an toàn cho việc áp dụng nhiều ứng dụng thực tiễn, cho giao dịch điện tử Các giải pháp quyền điện tử, thương mại điện tử khơng thực khơng có sở an tồn thơng tin vững Một nhiệm vụ bảo đảm an tồn thơng tin bảo vệ chữ (công cụ xác thực quan trọng), đề tài nghiên cứu chữ số Cụ thể nghiên cứu khả cơng chữ ký, từ đưa giải pháp khắc phục, tránh cố giả mạo chữ Kết Đồ án tốt nghiệp tìm hiểu nghiên cứu qua tài liệu để hệ thống lại đề sau: 1/ Trình bày số khái niệm mã hóa liệu, chữ số 2/ Trình bày số khả công chữ số thám mã giải pháp phòng tránh Để hồn thành luận văn, em nhận bảo, hướng dẫn tận tình thầy giáo PGS.TS Trịnh Nhật Tiến Tuy nhiên, luận văn khơng tránh khỏi thiếu sót, mong góp ý Thầy, Cô giáo bạn 52 BẢNG CHỮ VIẾT TẮT RSA (Rivest-Shamir-Adleman) ELGAMAL (T ElGamal) DSS (Digital Signature Standard) DES (Data Encryption Standard) USA (United States of America) NIST Viện tiêu chuẩn công nghệ quốc gia UCLN Ước chung lớn BCNN Bội chung nhỏ ATTT An tồn thơng tin TT Trung tâm phân phối khóa Smart card Thẻ thơng minh PT Độ phức tạp 53 TÀI LIỆU THAM KHẢO Phan Đình Diệu Lý thuyết mật mã An tồn thơng tin, 2004 TS Nguyễn Ngọc Cương (1999), Bài giảng An tồn hệ thống thơng tin PGS.TS Trịnh Nhật Tiến Bài giảng mơn An tồn liệu, 2005 Phạm Huy Điển, Hà Duy Khối (2003), Mã hóa thơng tin: Cơ sở toán học ứng dụng, nhà xuất Đại Học Quốc Gia Hà Nội Jalal Feghhi, Jalil Feghhi, Peter Williams Digital Certificates Applied Internet Security, 1999 S Castano, M Fugina, G Martella, P Samarati Database Security, 1994 Danley Harrisson “An Introduction to Steganography”, 2002 54 ... điệp, ký chữ ký Ví dụ: Chữ ký RSA chữ ký khơi phục thơng điệp, trình bày mục sau 2/ Chữ ký kèm thông điệp: Là loại chữ ký, người gửi cần gửi chữ ký , phải gửi kèm thông điệp ký chữ ký ... 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ố. .. 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
- Xem thêm -

Xem thêm: Nghiên cứu một số loại tấn công chữ ký số , Nghiên cứu một số loại tấn công chữ ký số

Tài liệu mới bán

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay