Nâng cao tốc độ tính toán của phương pháp mã hóa khóa công khai rabin

78 263 1
Nâng cao tốc độ tính toán của phương pháp mã hóa khóa công khai rabin

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG LÊ THỊ HUYỀN NÂNG CAO TỐC ĐỘ TÍNH TOÁN CỦA PHƯƠNG PHÁP MÃ HÓA KHÓA CÔNG KHAI RABIN LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên - Năm 2014 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG LÊ THỊ HUYỀN NÂNG CAO TỐC ĐỘ TÍNH TOÁN CỦA PHƯƠNG PHÁP MÃ HÓA KHOÁ CÔNG KHAI RABIN Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS Phạm Văn Ất Thái Nguyên - Năm 2014 i LỜI CAM ĐOAN Tôi xin cam đoan luận văn “Nâng cao tốc độ tính toán phương pháp mã hóa khóa công khai Rabin” công trình nghiên cứu tôi, hướng dẫn khoa học PGS.TS Phạm Văn Ất, tham khảo nguồn tài liệu rõ trích dẫn danh mục tài liệu tham khảo Các nội dung công bố kết trình bày luận văn trung thực chưa công bố công trình Học viên thực Lê Thị Huyền ii MỤC LỤC MỞ ĐẦU Chương 1: KHÁI LƯỢC VỀ MẬT MÃ VÀ CƠ SỞ TOÁN HỌC CỦA MẬT MÃ 1.1 Sơ lược lịch sử mật mã 1.2 Các hệ thống mật mã 1.2.1 Các toán an toàn thông tin 1.2.2 Mật mã khóa đối xứng mật mã khóa công khai 1.2.3 Thám mã tính an toàn hệ mật mã 1.3 Một số hệ mật mã khóa công khai 10 1.3.1 Sự đời hệ mật mã khóa công khai 10 1.3.2 Một số hệ mật mã khóa công khai 11 1.4 Cơ sở toán học lý thuyết mật mã 21 1.4.1 Độ phức tạp thuật toán 21 1.4.2 Phương pháp sinh số nguyên tố 24 1.4.3.Thuật toán Euclid 33 1.4.4 Định lý số dư Trung Quốc 34 Chương 2: MỘT SỐ SƠ ĐỒ CẢI TIẾN NÂNG CAO TỐC ĐỘ TÍNH TOÁN CỦA PHƯƠNG PHÁP MÃ HÓA KHÓA CÔNG KHAI RABIN 38 2.1 Một số khái niệm định nghĩa 38 2.1.1 Ký hiệu Legendre 38 2.1.2 Luật thuận nghịch bình phương 44 2.1.3 Kí hiệu Jacobi 47 2.1.4 Phương trình Rabin 51 2.2 Cải tiến Shimada 51 2.2.1 Quy trình mã hóa 51 2.2.2 Quy trình giải mã 52 2.2.3 Tính đắn thuật toán 53 2.3 Sơ đồ cải tiến Chen-Tsu 55 iii 2.3.1 Áp dụng định lý số dư Trung Quốc giải phương trình Rabin 56 2.3.2 Thuật toán giải mã 58 2.4 Cải tiến THA 59 2.4.1 Một số khái niệm, định nghĩa 60 2.4.2 Thuật toán mã hóa 61 2.4.3 Thuật toán giải mã 62 2.4.4 Chứng minh tính đắn 62 2.5 So sánh sơ đồ cải tiến phương pháp mã hóa khóa công khai Rabin 64 2.5.1 Độ phức tạp tính toán 64 2.5.2 Mức độ bảo mật 65 2.5.3 Phạm vi ứng dụng 65 Chương 3: PHẦN MỀM THỬ NGHIỆM 66 3.1 Sinh kiểm tra số nguyên tố làm khóa .68 3.2 Mã hóa theo sơ đồ cải tiến Shimada 67 3.3 Giải mã theo sơ đồ cải tiến Shimada 68 3.4 Kết thực nghiệm 68 KẾT LUẬN VÀ KIẾN NGHỊ 70 TÀI LIỆU THAM KHẢO 71 iv DANH MỤC BẢNG Trang Bảng 1.1 Bảng chữ số tương ứng Error! Bookmark not defined Bảng 2.1: Độ phức tạp tính toán thuật toán giải mã 65 Bảng 3.1: Thời gian thực thuật toán giải mã 69 v DANH MỤC HÌNH VẼ Trang Hình 3.1: Sinh số nguyên tố tạo khóa 66 Hình 3.2: Kiểm tra số nguyên tố 67 Hình 3.3: Mã hóa theo sơ đồ cải tiến Shimada 67 Hình 3.4: Giải mã theo sơ đồ cải tiến Shimada 68 MỞ ĐẦU Hiện nay, tất nước phát triển phát triển, mạng máy tính ngày đóng vai trò thiết yếu lĩnh vực hoạt động toàn xã hội, trở thành phương tiện điều hành hệ thống nhu cầu bảo mật an toàn thông tin đặt lên hàng đầu Nhu cầu máy an ninh, quốc phòng, quản lý nhà nước, mà trở thành thiết nhiều hoạt động kinh tế xã hội: tài chính, ngân hàng, thương mại, chí số hoạt động thường ngày người dân (thư điện tử, toán, tín dụng, ) Bởi phải đảm bảo tính suốt thông tin Nếu bạn gửi thư cho người bạn lại bị kẻ lạ mặt xem trộm sửa đổi nội dung thư trái với chủ ý bạn, tệ hại bạn ký hợp đồng, gửi thông qua mạng lại bị kẻ xấu sửa đổi điều khoản đó, nhiều điều tương tự Hậu nào? Bạn bị người khác hiểu nhầm nội dung thư bị thay đổi, hợp đồng bị phá vỡ điều khoản không nguyên vẹn Trước thực tế đó, yê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 Mã hoá thông tin phương pháp đảm bảo tính suốt thông tin Nó giải vấn đề rắc rối giúp bạn, thông tin mã hoá gửi kẻ xấu khó giải mã Một số giải thuật mã hóa xây dựng nhằm đảm bảo tính an toà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 Trong số hệ mật mã hóa công khai hệ mật RSA thường dùng nhiều nhất, hệ mã Rabin Hai hệ có độ an toàn Hệ Rabin có ưu điểm tốc độ mã hóa nhanh RSA, nhược điểm việc giải mã không cho lời giải lời giải rõ cần tìm Trong năm gần có số cải tiến để khắc phục nhược điểm hệ mật Rabin, hầu hết sách tài liệu tiếng Việt trình bày phương pháp Rabin gốc Chính vậy, em chọn đề tài: “Nâng cao tốc độ tính toán phương pháp mã hóa khóa công khai Rabin” Nội dung luận văn: Trình bày thuật toán kiểm tra sinh số nguyên tố Nhằm tìm số nguyên tố làm khóa cho hệ mật mã khóa công khai Nghiên cứu hướng cải tiến phương pháp mã hóa khóa công khai Rabin nhằm nâng cao tốc độ xử lý Luận văn bao gồm chương: Chương 1: Giới thiệu chung mật mã sở toán học lý thuyết mật mã Nhằm giới thiệu lịch sử mật mã, giới thiệu hệ thống mật mã, đưa số hệ mật mã khóa công khai Trình bày kiến thức toán học làm tảng cho nội dung luận văn như: Độ phức tạp thuật toán, thuật toán Euclid, thuật toán Euclid mở rộng, số nguyên tố phương pháp kiểm tra số nguyên tố Chương 2: Một số sơ đồ cải tiến nâng cao tốc độ tính toán phương pháp mã hóa khóa công khai Rabin Trình bày ký hiệu Legendre, Jacobi, định lí số dư Trung Quốc Trình bày số cải tiến phương pháp mã hóa khóa công khai Rabin nâng cao tốc độ xử lý: Cải tiến Shimada, Chen-Tsu, THA Chương 3: Cài đặt thực nghiệm Cài đặt chương trình kết thực nghiệm số sơ đồ cải tiến phương pháp mã hóa khóa công khai Rabin Do thời gian trình độ hạn chế nên luận văn khó tránh khỏi thiếu sót, kính mong nhận đóng góp, bảo thầy giáo, cô giáo bạn đồng nghiệp Cuối cùng, em xin chân thành bày tỏ lòng biết ơn sâu sắc đến thầy giáo PGS TS Phạm Văn Ất – Đại học Giao thông Vận tải tận tình hướng dẫn, bảo, giúp đỡ, khích lệ em suốt trình làm luận văn Đồng thời, em xin chân thành cảm ơn thầy cô Phòng Sau Đại học – Trường Đại học Công nghệ thông tin Truyền thông, thầy cô Viện Công nghệ thông tin – Viện Khoa học Công nghệ Việt Nam tạo điều kiện thuận lợi, giúp đỡ em hoàn thành luận văn Thái Nguyên, tháng 09 năm 2014 Học viên thực Lê Thị Huyền 57 M  1 N  J  M  M   L  1  p  q   L M  p  L  M   L   q M  p Hoặc L    1   M  L   q    1  TH1: M = root1 M  xp QRp  L    M ( p 1)/2 mod p  x p ( p 1)/2 mod p   p xq QRq  L    M ( q 1)/ mod q  xq ( q 1)/2 mod q   q  M  M   J   1 N TH2: M = root2 xp q-xq M  ( p 1)/2 mod p  x p ( p 1)/2 mod p  M  p QRp  L  M  q QNRq  L   ( q 1)/2 mod q  xq ( q 1)/2 mod q  1 M  M  J    1  N - TH3: M = root3 p-xp xq M  QNRp  L    M ( p 1)/2 mod p  x p ( p 1)/2 mod p  1  p M  ( q 1)/2 mod q  xq ( q 1)/ mod q  M  q  QRq  L  M   J    1  N -TH4: M = root4 58 M  p-xp QNRp  L    M ( p 1)/2 mod p  x p ( p 1)/2 mod p  1  p q-xq QNRq  L  M  q  ( q 1)/2 mod q  xq ( q 1)/2 mod q  1 M  M  J    N Vì vậy, td (C) = 1, ud(C) = nghiệm phương trình M2 = mod N root root4 Tương tự với trường hợp lại 2.3.2 Thuật toán giải mã Với mã C {0, 1, … , N - 1}, rõ M có theo bước sau: Bước 1: Tính td(C) C C  L    L     p q td(C) = C  C C L   L    L     p  p q C  C L   L     p  p Bước 2: Tính ud(C) C  ud(C)=    C L   * L     p  q  C C  * L    1  p  q  L  Bước 3: Tính θ θ =C  [td(C)]-1  [ud(C)]-1 mod N : 59 [td(C)]-1  [td(C)] = (mod N) [ud(C)]-1  [ud(C)]=1 (mod N) Bước 4: Tìm cặp nghiệm (xp, xp), (xp, q - xq), (p - xp, xq), (p - xp, q - xq) Tính : Tính : M mod p   mod p  a M mod q   mod q  b x p  a ( p 1)/ mod p xq  b( p 1)/ mod q Bước 5: Tính td(C), ud(C) - TH1: td(C) = ud(C) =1  Tính M = CRT( N, p, q, xp, xq) Nếu M   0,  N   output M Ngược lại tính M = N - M output M 2 - TH2: td(C) = ud(C) =2  Tính M = CRT( N, p, q, xp, q-xq)   Nếu M   0, N   output M Ngược lại tính M = N-M output M 2 - TH3: td(C) = -1 ud(C) =2  Tính M = CRT( N, p, q, xp, q-xq) N  , N   output M Ngược lại tính M = N-M output M 2  Nếu M   - TH4: td(C) = -1 ud(C) =1  Tính M = CRT( N, p, q, p-xp, q-xq) N  , N   output M Ngược lại tính M = N - M output M 2  Nếu M   2.4 Cải tiến THA Trong sơ đồ yêu cầu hai số nguyên tố p, q có dạng p = (mod 8) q = (mod 8), điều dẫn đến phạm vi ứng dụng bị thu hẹp khai triển thực tế Ngoài ra, sơ đồ yêu cầu tính toán nhiều Sau sơ đồ 60 có lượng tính toán thực hơn, mặt khác sử dụng số nguyên tố p, q dạng 3(mod 4) hệ mật mã Rabin ban đầu 2.4.1 Một số khái niệm, định nghĩa Đối với đại lượng phương trình Rabin, ta có Bổ đề Ta có: x  x  x  x  (1) Nếu p| , x1 = x3, x2 = x4, x2 = N - x1, J    J    N N (2) Nếu q| , x1 = x2, x3 = x4, x3 = N - x1, J    J    N N (3) Nếu p  q , x  x  J    J    x4 = N - x1 N N x  x  J    J     x3 = N - x2 N N Ở kí hiệu p  q  có nghĩa  không chia hết cho p (q) Chứng minh : (1) Nếu p| xp=0 p=xp=0 Từ suy : x  x  x2 = N - x1, J    J    N N x1 = x3, x2 = x4, (2) Được chứng minh tương tự (3) Do p  q  giả thiết p, q, , N suy xp thặng dư bình phương p, xq thặng dư bình phương q, nên :  xp L  p   xq   L   q   p  xp  1 , L   p   q  xq   L   q    1  Từ suy : x  x  J    J   1 N N x  x  J    J    1 N N 61 Mặt khác thấy, x nghiệm phương trình X2= mod N  x J    -1, N - x nghiệm phương trình X = mod N N    N x  x J   J   Từ suy x4 = N - x1 x3 = N - x2  N  N Vậy bổ đề chứng minh Từ bổ đề trực tiếp suy bổ đề Bổ đề : Giả sử M nghiệm cần tìm phương trình X2= mod N, M xác định sau: M  (1) Nếu J    1, M = x1 M = N - x1 N M  (2) Nếu J     M = x2 M = N - x2 N M   N  1 Từ bổ đề ta thấy rằng, biết J   biết M thuộc nửa 0,  N  N 1   nửa  , N  1 đoạn  0, N  1 , từ bổ đề ta xác định   giá trị M thông qua x1 x2 2.4.2 Thuật toán mã hóa - Bước 1: Xác định : M    M  N  N  1 0,  M   N 1  = 0, J    = 1, J    M   , N  1 N   M   N  1 M   N 1  = 2, J    1 M  0,  N    = 3, J    1 M   , N  1 N   - Bước 2: Xác định mã C theo công thức: 62 C =  (M2 MOD N) +  2.4.3 Thuật toán giải mã - Bước 1: Tính  = C MOD  = C DIV - Bước 2: Xác định nghiệm x1, x2 phương trình: X2 = mod N - Bước 3: Bản rõ M bốn nghiệm trên, tùy thuộc vào giá trị nghiệm giá trị  Cụ thể sau: =0   Nếu x1  0, N  1 M = x1 , trái lại M = N - x1  =1  N 1  Nếu x1   , N  1 M = x1 , trái lại M = N - x1   =2   Nếu x1  0, N  1 M = x2 , trái lại M = N - x2  =3 N 1  Nếu x1   , N  1 M = x2 , trái lại M = N - x2   2.4.4 Chứng minh tính đắn Từ Bước thuật toán mã hóa Bước thuật toán giải mã suy  =  X2 =M2 mod N Như vậy,  thặng dư bình phương N, nên phương trình Bước thuật toán giải mã phương trình Rabin bốn nghiệm x1, x2, x3, x4 hoàn toàn tính Mặt khác, rõ M hiển nhiên nghiệm phương trình Do đó, M phải trùng với nghiệm nói Vì  = , nên  nhận giá trị từ đến Ta xét trường hợp Bước thuật toán giải mã 63 M   N (1) Nếu  = 0, từ Bước thuật toán mã hóa suy J  N  1 M thuộc nửa 0,  Nên theo bổ đề 2, M = x1 M = N - x1 Vì vậy, M   = x1 x1 thuộc nửa M = N - x1 trái lại (2) Nếu  = 1, lập luận tương tự khác M thuộc nửa Do M = x1 x1 thuộc nửa M = N - x1 trái lại M (3) Nếu  = 2, từ Bước thuật toán mã hóa suy J    1 M N N 1  thuộc nửa 0,  Nên theo bổ đề 2, M = x2 M = N - x2 Vì vậy, M =  x2 x2 thuộc nửa M = N - x2 trái lại (4) Nếu  = 3, lập luận tương tự  = 2, khác M thuộc nửa Do M = x2 x2 thuộc nửa M = N - x2 trái lại Vậy tính đắn sơ đồ chứng minh Ví dụ: Với tham số sau: p=11, q=7 M=8 Mã hóa: n=77, J(M/N) = J(8/77) = -1 Do M thuộc [0, N/2] =>α=2 C=4 (M2 mod N) + α =4 (64 mod 77) + 2=258 Giải mã α=C mod 4=258 mod 4=2 θ= C div =258 mod 4=64 a= θ mod p =64 mod 11=9 => xp=a(p+1)/4 mod p = 93 mod 11 =3 b= θ mod q =64 mod 7=1 => xq=a(q+1)/4 mod q = 12 mod =1 Do α=2, Giải hệ => X=8 Vậy suy X=M 64 2.5 So sánh sơ đồ cải tiến phương pháp mã hóa khóa công khai Rabin 2.5.1 Độ phức tạp tính toán Độ phức tạp tính toán thuật toán mã hóa sơ đồ cải tiến tương M  đương cần phải tính J   M2 mod N Vì vậy, so sánh độ N phức tạp tính toán thuật toán giải mã Trước hết dễ dàng nhận thấy, tính toán chủ yếu thuật toán giải mã Shimada gồm: C  C  (1) Tính L   L   Các đại lượng này, trường hợp tổng quát,  p q C C tính theo công thức: L    C ( p 1)/2 mod p L    C ( q 1)/2 mod q  p q Nếu xem phép tính phép nhân phép chia mod, theo [1], số phép tính p 1   q 1     log     log  p  1   q  1      cần thực xấp xỉ  log  (2) Tính nghiệm x1, x2, x3, x4 phương trình X2 = mod N theo công thức mục 2.4.1 Trong số đó, hai công thức phức tạp : x p  a ( p 1)/ mod p, x p  b( q 1)/ mod q Cũng theo [1] phép tính cần dùng xấp xỉ  p 1  q 1  log     log     log  p  1   q  1      (3) Tính hai hàm te(x) ue(x) nghiệm, nhiều nghiệm Do đó, trung bình phải tính te(x) ue(x) hai số bốn nghiệm x1, x2, x3, x4 nên số phép tính xấp xỉ  p 1   q 1   log     log     log  p  1   q  1      Từ (1), (2) (3) suy ra, độ phức tạp tính toán thuật toán giải mã Shimada xấp xỉ  log  p  1   q  1  So với Shimada thuật toán giải mã Chen-Tsu giảm phép tính 65 (3), nên độ phức tạp xấp xỉ bằng:  log  p  1   q  1  Thuật toán giải mã sơ đồ THA phải thực phép tính (2), nên độ phức tạp xấp xỉ bằng:  log  p  1   q  1  Các kết phân tích trình bày bảng sau: Sơ đồ Số phép toán THA   log  p  1   q  1  Chen-Tsu   log  p  1   q  1  Shimada   log  p  1   q  1  Bảng 2.1: Độ phức tạp tính toán thuật toán giải mã 2.5.2 Mức độ bảo mật Trong sơ đồ, khóa bí mật hai số nguyên tố p, q khóa công khai N=pxq Do vậy, mức độ bảo mật chúng độ khó toán phân tích số thừa số nguyên tố 2.5.3 Phạm vi ứng dụng Trong sơ đồ Shimada Chen-Tsu cần dùng tính chất te(M) = td(C) ue(M) = ud(C) Để có tính chất thì, cần chọn p dạng 7(mod 8) q dạng 3(mod 8) Cả dạng trường hợp riêng dạng 3(mod 4) Thực tế cho thấy tập số nguyên dạng 7(mod 8) 3(mod 8) nhỏ nhiều so với tập số nguyên 3(mod 4) Sơ đồ THA sử dụng dạng 3(mod 4) nên phạm vi ứng dụng rộng so với sơ đồ trước 66 Chương PHẦN MỀM THỬ NGHIỆM Cài đặt chương trình Để so sánh tốc độ thực thuật toán cải tiến trình bày luận văn với nhau, tác giả tiến hành cài đặt phương pháp ngôn ngữ lập trình Csharp Net Framework 4.0 Nội dung cài đặt bao gồm module sau: a) Module sinh số nguyên tố có độ dài hàng trăm chữ số Trong mudule này, tác giả sử dụng thuật toán kiểm tra số nguyên tố Miller – Rabin để sản sinh dạng số nguyên tố khác ứng với sơ đồ cải tiến b)Module mã hóa ba phương pháp Shimada, Chen-Tsu THA c) Module giải mã ba phương pháp Shimada, Chen-Tsu THA Chi tiết giao diện, thao tác sử dụng module mô trả phần 3.1 Sinh kiểm tra số nguyên tố làm khóa Hình 3.1: Sinh số nguyên tố tạo khóa Với giao diện trên, người dùng thực thiện bước sau : Bước 1: Chọn độ dài cho hai số nguyên tố p q 67 Bước 2: Chọn chức Rabin Shimada&Tsu để chương trình sản sinh hai số nguyên tố có dạng tương ứng với sơ đồ mã hóa Bước 3: Chọn chức Tạo Khóa để chương trình sinh cặp khóa công khai khóa bí mật, hai khóa lưu trữ vào hai tệp khóa tương ứng giao diện Bên cạnh đó, module cung cấp cho người dùng giao diện để thực chức kiểm tra dạng số nguyên tố cho trước sau : Hình 3.2: Kiểm tra số nguyên tố 3.2 Mã hóa theo sơ đồ cải tiến Shimada Các sơ đồ cải tiến có giao diện thao tác sử dụng tương đối giống nhau, sau xin trình bày giao diện sơ đồ cải tiến Shimada Hình 3.3: Mã hóa theo sơ đồ cải tiến Shimada 68 Với giao diện trên, người dùng thực thiện bước sau : Bước 1: Nạp khóa công khai N để thực mã hóa Bước 2: Nạp tệp rõ cần mã hóa Bước 3: Chọn chức Mã hóa để chương trình thực mã hóa, mã lưu với tên tương ứng giao diện Chương trình thông báo mã hóa thành công kết thúc trình mã hóa 3.3 Giải mã theo sơ đồ cải tiến Shimada Hình 3.4: Giải mã theo sơ đồ cải tiến Shimada Với giao diện trên, người dùng thực thiện bước sau : Bước 1: Nạp khóa công bí mật p, q để thực giải mã Bước 2: Nạp tệp mã Bước 3: Chọn chức Giải mã để chương trình thực giải mã, rõ lưu với tên tương ứng giao diện Chương trình thông báo thời gian giải mã thành công kết thúc trình giải mã 3.4 Kết thực nghiệm Để so sánh thời gian thực thuật toán cải tiến, tác giả sử dụng cố định cặp số nguyên tố p, q cho tất sơ đồ Hai số nguyên tố p, q sử dụng có độ dài khoảng 60 chữ số cụ thể sau: 69 p=17940613248426056992444596099059329882824054832508914788524842691 637599 q = 60817366542854590443814656698938261640013625642547 Quá trình thực nghiệm thực rõ có kích thức khác thực máy tính ASUS X83V, kết chạy máy trình bày bảng sau: Bảng 3.1: Thời gian thực thuật toán giải mã STT Kích thước tệp Thời gian giải mã (giây) Shimada Chen-Tsu THA 4KB 0.195 0.070 0.032 120KB 21.824 7.254 3.385 202KB 41.012 13.447 6.193 223KB 43.570 14.430 6.739 609KB 118.592 32.454 20.704 787KB 164.564 51.745 24.117 1.09MB 224.297 73.694 33.992 70 KẾT LUẬN VÀ KIẾN NGHỊ Kết luận Sau thời gian thực luận văn, với cố gắng thân, giúp đỡ tận tình thầy giáo hướng dẫn, thầy cô trường Đại học CNTT &TT Thái Nguyên, đồng nghiệp bạn bè, gia đình luận văn thực theo nhiệm vụ giao thời hạn theo yêu cầu Trong thời gian nghiên cứu thực luận văn tốt nghiệp, thân thu số kết sau: - Hiểu khái quát mật mã mật mã khóa công khai Nắm số kiến thức sở toán học lý thuyết mật mã - Tìm hiểu rõ số nguyên tố, phương pháp kiểm tra sinh số nguyên tố - Nghiên cứu số cải tiến hệ mật mã Rabin - Cài đặt số cải tiến hệ mật mã khóa công khai Rabin đánh giá phương pháp cải tiến Kiến nghị Hướng phát triển luận văn kết hợp mật mã khóa công khai với nội dung bảo mật an toàn thông tin khác giấu tin, thủy vân số 71 TÀI LIỆU THAM KHẢO Tiếng Việt [1] [2] [3] [4] [5] Phạm Văn Ất, Nguyễn Văn Long, Nguyễn Hiếu Cường, Đỗ Văn Tuấn, Cao Thị Luyên, Trần Đăng Hiên, Đề xuất thuật toán xử lý số nguyên lớn ứng dụng hệ mật mã khóa công khai, Kỷ yếu hội thảo quốc gia lần thứ XII, Một số vấn đề chọn lọc Công nghệ thông tin Truyền thông, Đồng Nai - 8/2009, tr 107-118 Phan Đình Diệu (2006), Lý thuyết mật mã An toàn thông tin, NXB ĐHQG HN Hà Huy Khoái, Phạm Huy Điển (2003), Số học thuật toán: Cơ sở lý thuyết tính toán thực hành, NXB ĐHQG HN Hà Huy Khoái, Phạm Huy Điển (2004), Mã hoã thông tin: Cơ sở toán học ứng dụng, NXB ĐHQG HN Đỗ Văn Tuấn, Trần Đăng Hiên, Phạm Văn Ất, Một sơ đồ cải tiến hệ mật mã khóa công khai Rabin, Kỷ yếu hội thảo quốc gia lần thứ XIV, Một số vấn đề chọn lọc Công nghệ thông tin Truyền thông, Cần Thơ - 2011, tr 280-289 Tiếng Anh [6] Chin-Chen Chang and Sun-Min Tsu (2000), “An improvement on Shimada’s public-key cryptosystem”, Journal of Science and [7] [8] [9] Engineering, vol 3, no 2, pp 75-79 Harn, and Kiesler (1989), “Improved Rabin’s scheme with high efficiency”, Electron Lett., 25, (1 l), pp 726-728 Rabin, M O (1980), “Probabilistic algorithm for testing primality”, J Number theory, 12(1): 128 – 183 Safuat Hamdy (2005), “The Miller – Rabin Primality Test”, United Arab Emirates University College of IT [10] Shimada, M (1992), "Another Practical Public-Key Cryptosystem", {\em Electronics Letters}, Vol.28, No.23, pp.2146-2147 [...]...4 Chương 1 KHÁI LƯỢC VỀ MẬT MÃ VÀ CƠ SỞ TOÁN HỌC CỦA MẬT MÃ Tóm tắt chương: Trong chương này, luận văn giới thiệu tổng quan về mật mã bao gồm lịch sử mật mã, các hệ thống mật mã: mật mã khóa đối xứng, mật mã khóa công khai, một số hệ mã hóa khóa công khai như RSA, Elgamal, Rabin Độ phức tạp tính toán và phương pháp sinh số nguyên tố 1.1 Sơ lược lịch sử mật mã Mật mã học là một ngành có lịch sử từ... Tính an toàn theo nghĩa được chứng minh hay tính toán được sử dụng nhiều trong việc nghiên cứu các hệ thống mật mã hiện đại, đặc biệt là các hệ thống mật mã khóa công khai 1.3 Một số hệ mật mã khóa công khai 1.3.1 Sự ra đời của hệ mật mã khóa công khai Sự ra đời của khái niệm hệ mật mã khóa công khai là một tiến bộ có tính chất bước ngoặt trong lịch sử mật mã nói chung, gắn liền với sự phát triển của. .. giải mã K’’, còn khóa lập mã K’ có thể được công bố công khai; tuy nhiên điều đó chỉ có ý nghĩa thực tiễn khi việc biết K’ tìm K" là cực kỳ khó khăn đến mức hầu như không thể thực hiện được Một hệ mật mã khóa phi đối xứng có tính chất nói trên, trong đó khóa lập mật mã K’ của mỗi người tham gia đều được công bố công khai, được gọi là hệ mật mã khóa công khai Khái niệm mật mã khóa công khai mới được ra... lập mật mã (và ta có hàm lập mã ek’), K’’ dành cho việc giải mã (và có hàm giải mã dk’’), các hàm lập mã và giải mã thỏa mãn hệ thức dk’’(ek’(x)) = x với  x  P, thì được một hệ mật mã khóa phi đối xứng Như vậy, trong một hệ mật mã khóa phi đối xứng, các khóa lập mã và giải mã (K’ và K’’) là khác nhau, nhưng tất nhiên có quan hệ với nhau Trong hai khóa đó, khóa cần phải giữ bí mật là khóa giải mã K’’,... mã đó, mà tốt nhất là tìm ra được bản rõ gốc của bản mật mã đó Tình huống thường gặp là bản thân sơ đồ hệ thống mật mã, kể cả các phép lập mã và giải mã (tức các thuật toán E và D), không nhất thiết là bí mật, do đó bài toán quy về việc tìm chìa khóa mật mã K, hay chìa khóa giải mã K’’, nếu hệ mật mã có khóa phi đối xứng Như vậy, có thể quy ước xem bài toán thám mã cơ bản là bài toán tìm khóa mật mã. .. nếu bài toán này giải được thì bài toán kia cũng giải được với cùng một độ phức tạp như nhau) - An toàn tính toán: hệ mật mã được xem là an toàn (về mặt) tính toán, nếu mọi phương pháp thám mã đã biết đều đòi hỏi một nguồn năng lực tính toán vượt mọi khả năng (kể cả phương tiện thiết bị) tính toán của một kẻ thù giả định An toàn theo nghĩa này, nói theo ngôn ngữ của lý thuyết về độ phức tạp tính toán, ... vào một văn bản) - Ẩn danh: che giấu danh tính của một thực thể tham gia trong một tiến trình nào đó (thường dùng trong giao dịch điện tử) - Thu hồi: rút lại một giấy chứng chỉ hay ủy quyền đã cấp - v.v… Cơ sở của các giải pháp cho các bài toán kể trên là các phương pháp mật mã, đặc biết là mật mã khóa công khai 1.2.2 Mật mã khóa đối xứng và mật mã khóa công khai Giả sử một người gửi A muốn gửi đến... mật mã khóa công khai mà độ an toàn của hệ dựa vào bài toán khó “phân tích số nguyên thành thừa số nguyên tố”, hệ này về sau trở thành một hệ nổi tiếng và mang tên là hệ RSA, được sử dụng rộng rãi trong thực tiễn bảo mật và an toàn thông tin Cũng vào thời gian đó, M.O Rabin cũng đề xuất một hệ mật mã khóa công khai dựa vào cùng bài toán số học khó nói trên Liên tiếp sau, nhiều hệ mật mã khóa công khai. .. mật mã Y, và biết bản rõ tương ứng X Điều này có thể xảy ra khi người thám mã chiếm được tạm thời máy giải mã 1.2.3.2 Tính an toàn của một hệ mật mã Tính an toàn của một hệ thống mật mã phụ thuộc vào độ khó khăn của bài toán thám mã khi sử dụng hệ mật mã đó Người ta đã đề xuất một số cách hiểu cho khái 10 niệm an toàn của hệ thống mật mã, để trên cơ sở các cách hiểu đó nghiên cứu tính an toàn của nhiều... hệ mật mã khóa công khai 1.3.2.1 Sơ đồ chung hệ mật mã khoá công khai S = {P, C, K, E, D} P - tập ký tự của bản rõ C - tập ký tự của bản mã K = (K', K") - tập các khóa K' - tập các giá trị dùng làm khoá công khai K" - tập các giá trị dùng làm khoá bí mật y = E(K', x) - phép biến đổi x  P thành y  C, dùng để tạo mã x = D(K", y) - phép biến đổi y  C thành x  P, dùng để giải mã 1.3.2.2 Hệ mật mã RSA

Ngày đăng: 12/05/2016, 10:18

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan