Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 82 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
82
Dung lượng
1,25 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ LAN ANH Nghiên cứu độ an toàn ca s ch ký s luận văn thạc sĩ CƠNG NGHỆ THƠNG TIN Hµ néi - 2006 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ LAN ANH Nghiên cứu độ an toàn sơ ch ký s Mó s : 1.01.10 luận văn th¹c sÜ CƠNG NGHỆ THƠNG TIN Người hướng dẫn khoa học: PGS.TS Trịnh Nhật Tiến Hµ néi - 2006 LỜI 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 đƣợc 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 nhƣ yêu cầu trao đổi thông tin đƣợc đá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 hoá-Giáo dục-Y tế Ích lợi Internet mang lại xã hội vô cùng, nhƣ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 nhƣ 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 đƣợc 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 đƣợc gửi “khơng đƣợc nhìn thấy”, khơng thể giả mạo văn bản, dù có xâm nhập đƣợc vào văn Nhu cầu ngày đƣợc đáp ứng cơng nghệ mã hố chữ ký số đời Với cơng nghệ này, trợ giúp ngƣời giải đƣợc 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ố 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 nhƣ ứ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 đƣợc đảm bảo Chính vậy, việc nghiên cứu vấn đề an tồn thơng tin nói chung phƣơng pháp ký số nói riêng, có vai trị quan trọng, tảng cho việc phát triển ứng dụng thực tiễn Ngày chữ ký số đƣợc sử dụng nhiều lĩnh vực nhƣ 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ý đƣợc 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ế nhƣ kích thƣớc chữ ký, hay khả chống giả mạo chƣa cao nhƣng khả mà đem lại hữu ích RSA (Rivest-Shamir-Adleman): năm 1977, R.l Rivest, A Shamir L.M Adleman đề xuất hệ mật mã khố 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 đƣợc 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) đƣợc đề xuất từ năm 1991 đƣợc 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ật mã khoá công khai đƣợc 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ố” Một điều mà cần quan tâm chữ ký số độ an toàn sơ đồ chữ ký Đó vấn đề đƣợc nghiên cứu luận văn “Nghiên cứu độ an toàn sơ đồ chữ ký số” Nội dung luận văn bao gồm chƣơng: Chƣơng1: Tổng quan an tồn, bảo mật thơng tin Chƣơng 2: Độ an toàn sơ đồ chữ ký số Chƣơng 1: TỔNG QUAN VỀ AN TỒN, BẢO MẬT THƠNG TIN 1.1 VẤN ĐỀ AN TỒN BẢO MẬT THƠNG TIN Ngày Internet với dịch vụ phong phú có khả cung cấp cho ngƣời phƣơng tiện thuận tiện để trao đổi, tổ chức, tìm kiếm cung cấp thơng tin Tuy nhiên, nhƣ phƣơng thức truyền thống, việc trao đổi, cung cấp thông tin điện tử nhiều lĩnh vực địi hỏi tính bí mật, tính tồn vẹn, tính xác thực nhƣ trách nhiệm thông tin đƣợc trao đổi Bên cạnh đó, tốc độ xử lý máy tính ngày đƣợc nâng cao, với trợ giúp máy tính tốc độ cao, khả công hệ thống thông tin có độ bảo mật dễ xảy Chính ngƣời ta khơng ngừng nghiên cứu vấn đề bảo mật an tồn thơng tin để đảm bảo cho hệ thống thông tin hoạt động an toàn Cho đến ngày nay, với phát triển cơng nghệ mã hố phi đối xứng, ngƣời ta nghiên cứu đƣa nhiều kỹ thuật, nhiều mô hình cho phép áp dụng xây dựng ứng dụng địi hỏi tính an tồn thơng tin cao Trong văn pháp luật Quốc hội ban hành công nhận luật giao dịch điện tử – Ngày 29/11/2005, Quốc hội thông qua luật giao dịch điện tử 51/2005/QH11 Phạm vi điều chỉnh chủ yếu giao dịch điện tử hoạt động quan nhà nƣớc, lĩnh vực dân sự, kinh doanh, thƣơng mại… Luật công nhận bảo vệ hợp đồng điện tử Trong giao kết thực giao dịch điện tử, thơng báo dƣới dạng thơng điệp “số” có giá trị pháp lý nhƣ thông báo truyền thống Nhà nƣớc công nhận giá trị pháp lý chữ ký điện tử chứng thƣ điện tử nƣớc ngoài, nhƣ chữ ký điện tử chứng thƣ điện tử có độ tin cậy tƣơng đƣơng với độ tin cậy chữ ký điện tử chứng thƣ điện tử theo qui định pháp luật Việc xác định mức độ tin cậy chữ ký điện tử chứng thƣ điện tử nƣớc phải vào tiêu chuẩn quốc tế thừa nhận, điều ƣớc nƣớc Cộng hoà xã hội chủ nghĩa Việt Nam thành viên yếu tố có liên quan khác Vấn đề đặt việc bảo đảm an ninh, an toàn giao dịch điện tử bên tham gia giao dịch điện tử Và việc nghiên cứu độ an toàn chữ ký điện tử cần thiết cho việc bảo đảm an ninh, an toàn giao dịch điện tử 1.2 CƠ SỞ TỐN HỌC TRONG AN TỒN BẢO MẬT THÔNG TIN 1.2.1 Số học số nguyên + Ta ký hiệu Z tập hợp số nguyên, Z = –2, -1, 0, 1, , tập Z tập + hợp số nguyên không âm Z = 0, 1, Trong mục nhắc lại số kiến thức số học số nguyên cần cho việc trình bày lý thuyết mật mã 1) Tính chia hết số ngun Tập hợp Z đóng kín phép cộng, trừ nhân nhƣng khơng đóng kín phép chia: chia số nguyên cho số nguyên đƣợc số nguyên Trong số học, tính chất chia hết, tức chia số nguyên a cho số nguyên b đƣợc thƣơng số nguyên q (a = b.q) có ý nghĩa đặc biệt Khi ta nói a chia hết cho b, b chia hết cho a, a bội số b, b ƣớc số a ký hiệu b│a Với định nghĩa nhƣ ta thấy số ƣớc số nguyên bất kỳ, số bội số nguyên bất kỳ, số nguyên a ƣớc số, đồng thời bội số Cho hai số ngun a b, b > Thực phép chia a cho b ta đƣợc hai số q r cho: a = b.q + r, 01 đƣợc gọi số nguyên tố, a khơng có ƣớc số ngồi Số a đƣợc gọi hợp số số nguyên tố Thí dụ số 2, 3, 5, 7, 11 số nguyên tố; số 4, 6, 8, 10, 12 hợp số Hai số a b đƣợc gọi nguyên tố nhau, chúng khơng có ƣớc chung khác 1, tức gcd(a, b) = Một số nguyên n>1 đƣợc viết dƣới dạng: a a ak n = p1 1.p2 .pk Trong p1, p2, , pk số nguyên tố khác nhau, a1, a2, , ak số nguyên dƣơng Nếu không kể thứ tự thừa số nguyên tố, dạng biểu diễn nhất, ta gọi dạng triển khai tắc n Các số nguyên tố vấn đề số nguyên tố có vai trò quan trọng số học ứng dụng vào lý thuyết mật mã Số nguyên m đƣợc gọi bội số chung a b a│m b│m Số m đƣợc gọi bội số chung bé a b, đƣợc ký hiệu lcm(a, b) m>0, m bội số chung a b, bội số chung a b bội số m Với hai số nguyên dƣơng a b ta có quan hệ lcm(a, b).gcd(a, b) = a.b Ta thấy rằng, b>0 b│a gcd(a, b) = b a = bq + r gcd(a, b) = gcd(b, r) Từ tính chất ngƣời ta xây dựng thuật tốn thực việc tìm ƣớc số chung lớn hai số nguyên Thuật tốn Euclide tìm ƣớc số chung lớn nhất: INPUT: hai số nguyên không âm a b, với a b OUTPUT: ƣớc số chung lớn a b b>0, thực hiện: đặt r a mod b, ab, br cho kết (a) Ta biết gcd(a, b) = d, phƣơng trình bất định a.x + b.y = d có nghiệm nguyên (x, y), nghiệm nguyên nhƣ tìm đƣợc thuật tốn Euclide mở rộng nhƣ sau: INPUT: hai số nguyên không âm a b với a b OUTPUT: d = gcd(a, b) hai số x, y cho a.x + b.y = d Nếu b = đặt d a, x 1, y cho (d, x, y) Đặt x2 = 1, x1 = 0, y2 = 0, y1 = Trong b > thực hiện: 3.1 q a div b, r a mod b, x x2-qx1, y y2-qy1 3.2 q b, b r, x2 x1, x1 x, y2 y1, y1 y Đặt d a, x x2, y y2, cho kết (d, x, y) 2) Phƣơng trình đồng dƣ tuyến tính Cho n số ngun dƣơng Ta nói hai số nguyên a b đồng dƣ với theo modulo n viết a b (mod n), n│(a, b) (Tức a-b chia hết cho n, hay chia a b cho n ta đƣợc số dƣ ) Quan hệ đồng dƣ (theo modulo n) tập hợp số nguyên có tính chất phản xạ, đối xứng bắc cầu, tức quan hệ tƣơng đƣơng Khi đó, tạo phân hoạch tập hợp số nguyên Z, thành lớp tƣơng đƣơng: hai số nguyên thuộc lớp tƣơng đƣơng chúng cho số dƣ chia cho n Mỗi lớp tƣơng đƣơng nhƣ đƣợc đại diện số tập hợp Zn = 0, 1, 2, , n-1, số dƣ chia số lớp cho n Vì vậy, ta đồng Zn với tập hợp lớp tƣơng đƣơng số nguyên theo mod n Cho a Zn Một số nguyên x Zn đƣợc gọi nghịch đảo a theo mod n, a.x 1(modn) Nếu có số x nhƣ ta nói a khả nghịch, ký hiệu a mod n Từ định nghĩa ta suy a khả nghịch theo mod n gcd(a, n) = 1, tức a n nguyên tố với -1 Định nghĩa phép chia Zn nhƣ sau: a:b (mod n) = a.b mod n Phép chia thực đƣợc b khả nghịch theo mod n Phƣơng trình đồng dƣ tuyến tính có dạng a.x b(mod n), (1.1) a, b, n số nguyên, n > 0, x ẩn số Phƣơng trình có nghiệm d = gcd(a, n)│b có d nghiệm theo mod n Thật vậy, đặt a‟ = a/d, b‟ = b/d, n‟ = n/d ta thấy phƣơng trình đồng dƣ (1.1) tƣơng đƣơng với phƣơng trình a.x‟ b‟ (mod n‟) Vì gcd(a‟, n‟) = nên phƣơng trình có nghiệm theo mod n‟: -1 x = x0 b‟.a‟ (mod n‟), phƣơng trình (1) có d nghiệm theo mod n là: x = x0, x0 + n‟, , x0 + (d-1)n‟ (mod n) Tất d nghiệm khác theo mod n, nhƣng đồng dƣ với theo mod n‟ Hệ phƣơng trình đồng dƣ tuyến tính có dạng: x1 a1 (mod n1) x2 a2 (mod n2) (1.2) với a số mũ mật Việc giải phƣơng trình đồng dƣ bậc (2.5) đơn giản, nhƣ khoá mật a đƣợc tìm 3) Khố mật a q nhỏ Nếu khố mật a q nhỏ, phƣơng pháp dị tìm đơn giản, ngƣời ta tính đƣợc 4) Tham số khoá mật k nhỏ Tƣơng tự nhƣ khoá mật a, tham số k phải bí mật Trong trƣờng hợp tham số q nhỏ, hiển nhiên phƣơng pháp dị đơn giản ngƣời ta tìm đƣợc chúng Khi sơ đồ chữ ký an tồn Vì biết k tính đƣợc k mod p thuật tốn bình phƣơng nhân, sau thuật tốn Euclide mở rộng, tính đƣợc -k mod p, tìm đƣợc rõ m = -k mod p 2.3 CHỮ KÝ SỐ DSS 2.3.1 Sơ đồ Chuẩn chữ ký số DSS đƣợc đề xuất từ năm 1991 đƣợc 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 Để đảm bảo an toàn, số nguyên tố p cần phải đủ lớn, biểu diễn nhị phân p phải có từ 512 bit trở lên (cụ thể từ 512 đến 1024 bit, số bit bội 64) Tuy nhiên, độ dài chữ ký theo sơ đồ ElGamal gấp đôi số bit p, mà nhiều ứng dụng ngƣời ta lại mong muốn có chữ ký độ dài ngắn, nên giải pháp sửa đổi đƣợc đề xuất là: dùng p lớn với độ dài biểu diễn 512 bit trở lên, hạn chế độ dài chữ ký (, ) vào khoảng 160 bit (nhƣ chữ ký có độ dài khoảng 320 bit) 66 Điều đƣợc thực cách dùng nhóm cyclic Zq* Zp* thay cho thân Zp*, tính tốn đƣợc thực nhƣ Zp* nhƣng liệu thành phần chữ ký lại thuộc Zq* Sơ đồ chuẩn chữ ký số DSS : Chọn p số nguyên tố lớn với độ dài biểu diễn 512 bit, cho tốn tính logarit rời rạc Zp khó, q ƣớc số nguyên tố p-1, có độ dài biểu diễn cỡ 160 bit Gọi Z*p bậc q theo mod p Đặt P = Z*p; A = Zq* x Zq* Chọn a Zq* tính a (mod p) Xác định khoá K = (K‟, K‟‟), khố bí mật K‟ = a, khố công khai K‟‟ = (p, q, , ) Với x P = Z*p, chọn số ngẫu nhiên k (0 k q - 1) Thuật toán ký nhƣ sau: Sigk‟ (x, k) = (, ), = (k mod p) modq = (x + a)k-1 mod q Thuật toán kiểm thử chữ ký nhƣ sau: verK‟‟(x, (, )) = (e1.e2 mod p) mod q = , e1 = x.-1 mod q e2 = .-1 mod q Chú ý phải có mod q, để tính đƣợc -1mod q dùng thuật tốn kiểm thử Vì chọn k mà mod q, phải chọn số k khác để có đƣợc mod q Thuật toán: Đầu vào: - Văn x 67 - Số nguyên tố lớn p, q - Tập khoá K = (p, q, , a, ) Đầu ra: Chữ ký sigk(x, k)=(, ) có không? Kiểm thử chữ ký verk(x, , )= thoả mãn điều kiện (e1e2 mod p) mod q = Chƣơng trình ký ký tự C kiểm tra chữ ký Readln(q); q ƣớc nguyên tố (p-1) Readln(p); Readln(a); Readln(); :=Mu_To(, a, p); Readln(k); 1 k q-1 Readln(c); Nhập ký tự C Procedure KY_DSS; Begin x:=ord(c) – 64; := Mu_To(, k, p) mod q; :=Nghich_dao(k)*(x-a*) mod q; 68 Writeln(, ); Chữ ký sigk(x, k) = (, ) End; Procedure KT_DSS; Begin Readln(, ); e1:=Nghich_dao()*x mod q e2:=Nghich_dao()* mod q If ((Mu_To(, e1, p) * Mu_To(, e2, p))mod p) mod q= Then Xác nhận chữ ký hợp lệ Else Xác nhận chữ ký khơng hợp lệ End; Ví dụ: Giả sử q = 101, p = 78q + = 7879 Có phần tử nguyên thuỷ Z7879, nên lấy = 378 mod 7879 = 170 Chọn a = 75, đó: = a (mod p) = 17075 mod 7879 = 4576 Nếu muốn ký tin x = 1234, chọn k ngẫu nhiên k=50 k-1 modq = 50-1mod 101 = 99 * Chữ ký x (, ), 69 = (k mod p) mod q = (7050 mod 7879) mod 101 = 2518 mod 101 = 94 = (x + a)k-1mod q = (1234 + 75 * 94) 99 mod 101 = 97 * Chữ ký (94, 97) x = 1234 đƣợc xác minh việc tính: -1 = -1 mod q = 97-1 mod 101 = 25 e1 = 1234*25 mod 101 = 45 e2 = 94*25 mod 101 = 27 Ta có: (e1.e2 mod p)mod q = (17045 * 457627 mod 7879) mod 101 = 2518 mod 101 = 94 = Chữ ký hợp lệ 2.3.2 Độ an tồn + Việc giữ bí mật khố a (dùng để tạo chữ ký) có ý nghĩa định việc bảo đảm tính an tồn chữ ký + Nếu khơng có a, phải tính a thơng qua α, β, p cơng khai cách tính logα β mod p Đây tốn “khó” Chuẩn chữ ký số DSS phiên cải tiến sơ đồ chữ ký Elgamal Sự khác biệt DSS với lƣợc đồ Elgamal là: Vì lƣợc đồ Elgamal khơng an tồn tốn logarit rời rạc nên cần dùng số p lớn (khoảng 521 1024 bit) 70 Tuy nhiên lấy p = 512 chữ ký 1024 bit Đối với ứng dụng thẻ thông minh lại cần chữ ký ngắn DSS cải tiến sơ đồ Elgamal theo hƣớng cho chữ ký có độ dài tổng cộng 320 bit, nhƣng dùng p = 512 bit Khi hệ thống làm việc nhóm Zp * có kích thƣớc 2160 Độ an tồn hệ thống dựa độ khó việc tìm logarit rời rạc nhóm Zp* Khi DSS đời có trích mặt kỹ thuật, chủ yếu kích thƣớc module p bị cố định 512 bit Nhiều ngƣời thích cỡ p khơng cố định Đáp ứng cầu NIST chọn tiêu chuẩn cho phép có nhiều cỡ module, nghĩa cỡ module chia hết cho 64 từ 512 1024 bit Một phàn nàn khác DSS chữ ký đƣợc tạo nhanh việc kiểm thử Trong đó, dùng lƣợc đồ chữ ký RSA với số mũ nhỏ (ví dụ = 3) kiểm thử nhanh nhiều so với việc lập chữ ký Điều dẫn đến hai vấn đề ứng dụng: - Thông điệp đƣợc ký lần, song lại cần kiểm tra chữ ký nhiều lần Điều gợi ý cần có thuật tốn kiểm tra nhanh - Kiểu máy tính dùng để ký kiểm tra chữ ký Nhiều ứng dụng, chẳng hạn thẻ thơng minh có khả xử lý hạn chế, lại liên lạc với máy tính mạnh hơn, có tình cần thẻ thơng minh tạo chữ ký, tình khác lại cần thẻ thơng minh kiểm tra chữ ký Do đƣa giải pháp xác định khó khăn Sự đáp ứng NIST yêu cầu số lần tạo chữ ký số lần kiểm tra chữ ký, thực khơng có vấn đề ngồi yêu cầu tốc độ, miễn hai thực đủ nhanh 71 2.4 CHỮ KÝ KHÔNG PHỦ ĐỊNH ĐƢỢC VÀ KHÔNG CHỐI BỎ ĐƢỢC 2.4.1 Sơ đồ chữ ký chống chối bỏ Chữ ký “chống chối bỏ” Chaum Antwerpen đƣa từ năm 1989 So với chữ ký số khác, chúng có số đặc điểm Đặc điểm khác biệt chữ ký khơng thể xác minh đƣợc, khơng có hợp tác ngƣời ký A Điều bảo vệ đƣợc A, trƣớc khả tài liệu đƣợc ký bị nhân bản, hay bị phân phối phƣơng pháp “điện tử” mà khơng có đồng ý Tuy nhiên, liệu có cần hợp tác A để xác minh chữ ký không? (điều nhằm ngăn chặn việc A từ chối ký thơng báo trƣớc đó) A tun bố chữ ký hợp lệ giả mạo từ chối xác minh nó, thực giao thức theo cách để chữ ký đƣợc xác minh 72 Để ngăn chặn tình này, sơ đồ chữ ký chống chối bỏ kết hợp giao thức “từ chối” (theo giao thức A chứng minh chữ ký giả mạo) Nhƣ vậy, A có khả chứng minh trƣớc chữ ký giả mạo Nếu không chấp nhận tham gia vào giao thức từ chối, đƣợc xem nhƣ chứng chứng tỏ chữ ký thực tế thật, cố gắng từ chối chữ ký Nhƣ vậy, sơ đồ chữ ký chống chối bỏ gồm ba thành phần: thuật toán ký, giao thức xác minh giao thức “từ chối” Thuật toán ký Cho p = 2q+1 số nguyên tố cho q số nguyên tố toán logarit rời rạc Zp “khó” giải Giả sử Zp phần tử bậc q Cho a q-1 định nghĩa = a mod p Giả sử G biểu thị nhóm nhân bậc q Z*p (G gồm thặng dƣ bậc hai modulo p) Cho P = A = G định nghĩa tập khoá K = { (p, , a, ): = a mod p } Trong đó: p, , cơng khai; a bí mật Với k = (p, , a, ) x G, định nghĩa chữ ký tin x là: y = sigk(x) = xa mod p 73 Thuật toán xác minh Với x, y G, việc xác minh đƣợc thực nhƣ sau: B chọn ngẫu nhiên e1, e2 Z*q B tính c = y e e mod p gửi cho A A tính d = c a 1 mod q mod p gửi cho B B chấp nhận y chữ ký hợp lệ khi: d x e e mod p Giao thức từ chối B chọn ngẫu nhiên e1, e2 Z*q B tính c = y e e mod p gửi cho A A tính d = c a 1 mod q mod p gửi cho B B xác minh xem có d x e e mod p không B chọn ngẫu nhiên f1, f2 Z*q B tính C = y f f mod p gửi cho A A tính D = C a 1 mod q mod p gửi cho B B xác minh xem có D x f f mod p khơng B kết luận y giả mạo (d e ) f (D f ) e (mod p) 2 Ta xét vai trò p q sơ đồ Sơ đồ tồn Zp; cần có khả tính tốn theo nhóm nhân G Z*p có bậc nguyên tố Đặc biệt ta cần có khả tính đƣợc phần tử nghịch đảo modulo │G│ - lý giải thích │G│ số nguyên tố Để thuận lợi chọn p = 2q+1, q số nguyên tố Ví dụ: Giả sử lấy p = 467, phần tử nguyên thuỷ nên 22 = phần tử sinh G, gồm thặng dƣ bậc hai mod 467 Vì ta lấy = Chọn a = 101 làm khố mật, đó: = a mod 467 = 449 làm khố cơng khai A ký thông báo x = 119 với chữ ký: y = 119101 mod 467 = 129 B muốn xác minh chữ ký y, chọn số ngẫu nhiên chẳng hạn e1=38, e2=397 Tính c = 13 lúc A trả lời với d = 74 B kiểm tra câu trả lời việc xác minh rằng: 119384397 = mod 467 Vì B chấp nhận y chữ ký hợp lệ Ví dụ: Giả sử p = 467, = 4, a = 101 = 449 Giả sử tin x = 286 đƣợc ký với chữ ký y = 83 A muốn thuyết phục B chữ ký không hợp lệ Giả sử B chọn giá trị ngẫu nhiên e1 = 45, e2 = 237 B tính c = 305, A trả lời với d = 109 Sau B tính: 286454237 mod 467 = 149 Vì 149 109, nên B thực bƣớc chọn giá trị ngẫu nhiên f1=125, f1=9; B tính C =270 A trả lời với D=68 B tính: 28612549 mod 467 = 25 Vì 25 68 nên B thực tiếp bƣớc cuối kiểm tra tính phù hợp Bƣớc kiểm tra thành cơng vì: (109 x 4-237)125 188 mod 467 (68 x 4-9)45 188 mod 467 Vì B tin chữ ký x khơng hợp lệ 2.4.2 Độ an tồn chữ ký chống chối bỏ Trong thực tế ứng dụng, để đảm bảo tính an tồn, ta phải dùng số p, q lớn, chẳng hạn phải số có biểu diễn nhị phân cỡ 512 bit, ta có q 2510, tức 1/q 2-510, xác suất bé, kết không phụ thuộc vào giả thiết tính tốn nào, điều có nghĩa độ an tồn vơ điều kiện 1) Nếu y xa mod p, B nhận y chữ ký hợp lệ x với xác suất 1/q Trƣớc hết, nhận xét yêu cầu c tƣơng ứng xác với cặp đƣợc (e1, e2) Đó y phần tử nhóm nhân G có bậc nguyên tố q Vì y = t mod p, = a mod p nên c = y e e = te ae mod p = te ae mod p, 75 2 c cố định nên (te1+ae2) mod q = u cố định -1 * e2 = a (u-te1) mod q e1 Zq có q giá trị e1 có q cặp (e1, e2) cho giá trị c Bây giờ, A nhận đƣợc u cầu c, khơng có cách để biết cặp đƣợc (e1, e2) q cặp mà B dùng để xây dựng c Ta khẳng định, y xa mod p đáp ứng d G mà A tạo tƣơng ứng với xác q cặp đƣợc (e1, e2) Vì sinh G, nên viết phần tử thuộc G nhƣ số mũ , số mũ đƣợc xác định theo modulo q Vì viết c = i, d= j, x = k y = t , với i, j, k, t Zq phép tính số học theo modulo q Xét hai đồng dƣ thức : c y e e (mod p) d x e e (mod p) Hệ tƣơng đƣơng với hệ đồng dƣ thức : i te1+ae2 (mod q) j ke1+e2 (mod q) Giả thiết rằng: y xa mod p, rút ra: t ak mod q Vì thế, ma trận hệ số hệ đồng dƣ thức theo mod q có định thức khác nhƣ tồn nghiệm cho hệ thống Nghĩa là, d G đáp ứng với q cặp (e1, e2) đƣợc Xác suất để A đƣa cho B đáp ứng d đƣợc xác minh 1/q: -A thuyết phục B chữ ký không hợp lệ giả mạo -A làm B tin có chữ ký tin cậy giả mạo trừ xác suất bé 2) Nếu y xamod p A B thực theo giao thức từ chối, (d e ) f (D f ) e mod p 2 Do A B thực giao thức nên ta sử dụng yếu tố: 76 1 d c a mod p c y e e mod p a mod p 1 Ta có: (d e ) f ((y e e ) a e ) f (mod p) 2 1 y e1 f1a e a y e1 f1a 1 1 f1 1 e f (mod p) y e f a e f e 1 2 f1 mod p mod p 1 Tƣơng tự, dùng yếu tố D C a mod p, C y f f mod p a mod p, ta có: 1 (D f ) e y e f a mod p 1 phép kiểm tra tính phù hợp bƣớc thành công Giả sử y xa mod p B thực theo giao thức từ chối Nếu d x e e mod p D x f f mod p xác suất để (d e2 ) f (D f ) e mod p 1-1/q Xác suất để A từ chối chữ ký hợp lệ, trƣờng hợp không giả thiết A thực theo thủ tục, nghĩa A khơng xây dựng D d nhƣ giao thức Giả sử đồng dƣ thức sau thoả mãn 77 y x a mod p d x e e mod p D x f f mod p (d e ) f (D f ) e mod p 2 1 Ta đƣa đƣợc mâu thuẫn sau: Trong giao thức chối bỏ, bƣớc viết lại nhƣ sau: D d 0f f mod p, đó, d0 = d / e e / e1 mod p giá trị phụ thuộc vào bƣớc từ 1-4 Ta kết luận đƣợc y chữ ký hợp lệ d0 với xác suất 1-1/q Song ta giả thiết y chữ ký hợp lệ x, nghĩa ta có xa doa mod p với xác suất cao, điều kéo theo x = d0 Tuy nhiên d x e e mod p có nghĩa x d / e e Và từ biểu thức d0 = d / e e / e1 / e1 mod p mod p, suy x d0 Suy mâu thuẫn Nhƣ A lừa dối B theo cách với xác suất 1/q 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 tồn cầu hố xã hội lồi ngƣời Quốc hội Việt Nam thông qua luật giao dịch điện tử cuối năm 2005 chờ 78 thực hiện, Việt Nam gia nhập WTO cuối năm 2006, chữ ký điện tử có tƣ cách pháp lý nhƣ chữ ký giấy Việt Nam 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 đƣợc khơng có sở an tồn thơng tin vững Cho nên việc nghiên cứu độ an toàn chữ ký số góp phần chuẩn bị cho hội nói Kết Luận văn gồm có: Tìm hiểu nghiên cứu tổng quan an tồn bảo mật Tìm hiểu nghiên cứu chữ ký số thơng dụng, chữ ký phân tích đánh giá ƣu nhƣợc điểm Từ có số ý dùng chữ ký để tránh cố giả mạo Trên đây, đề cập đƣợc số nhân tố làm tính an tồn mà chúng tơi đƣợc biết chƣa phải tất cả, việc nghiên cứu để tìm trƣờng hợp gây tính an tồn sơ đồ chữ ký số để từ đƣa giải pháp khắc phục cịn đƣợc tiếp tục nghiên cứu Đó hƣớng nghiên cứu hứa hẹn nhiều kết bất ngờ Để hồn thành đƣợc luận văn, tơi nhận đƣợc bảo, hƣớng dẫn tận tình thầy giáo 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 TÀI LIỆU THAM KHẢO Tiếng Việt [1] TS Nguyễn Ngọc Cƣơng (1999), Bài giảng An tồn hệ thống thơng tin 79 [2] Phan Đình Diệu (1999), Lý thuyết mật mã an tồn thơng tin, Đại Học Quốc Gia Hà Nội [3] Phạm Huy Điển, Hà Duy Khối (2003), Mã hố thơng tin: Cơ sở toán học ứng dụng, nhà xuất Đại Học Quốc Gia Hà Nội [4] Trịnh Nhật Tiến, Nguyễn Đình Nam, Trƣơng Thị Thu Hiền (2005), Về quy trình bỏ phiếu từ xa, Tạp chí Khoa học ĐHQGHN, (Số 2PT 2005) [5] Trịnh Nhật Tiến, Trƣơng Thị Thu Hiền (2003), Một số kỹ thuật bỏ phiếu từ xa, Báo cáo hội thảo QG CNTT, Thái Nguyên Tiếng Anh [6] Alfred Menezes, Ming Qu, Doug Stinson, Yongge (2001), Evaluation of Security Level of Cryptography: ECDSA Signature Scheme, Certicom Research, Canada [7] Cetin K Koc (2000), Efficient Wireless Security Protocols based on Elliptic Curve Cryptography, An Abstract of the thesis of Murat Aydos for the degree of Doctor of Philosophy in Electrical & Computer Engineering [8] Don Johnson and Aifred Menezes, and Scott Vanstone, The Ellip Curve Digital Signature Algorithm, Dept of Combinatorics & Optimization, University of Waterloo, Canada [9] Gerardo Orlando (2002), Efficient Elliptic Curver Processor Architectures for Field Programmable Logic, A Dissertation Submitted to the Faculty of the Worcesrer Polytechnic Institute 80