Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
86,05 KB
Nội dung
B GIO DC V O TO TRNG I HC s PHM H NI HONG TH CM NGUYấN NGHIấN CU MT Sể K THUT TN CễNG H M CễNG KHAI V NG DNG Chuyờn ngnh: Toỏn ng dng Mó s: 60 46 01 12 LUN VN THC s TON HC Ngũi hng dn khoa hc: TS Trn Vn Dng H Ni, 2015 Lun c hon thnh ti trng i hc S phm H Ni di s hng dn ca thy giỏo TS Trn Vn Dng S giỳp v hng dn tn tỡnh, nghiờm tỳc ca thy sut quỏ trỡnh thc hin lun ó giỳp tụi trng thnh hn rt nhiu cỏch tip cn mt mi Tụi xin by t lũng bit n, lũng kớnh trng sõu sc nht i vi thy Tụi xin trõn trng cm n Ban giỏm hiu trng i hc S phm H Ni 2, phũng sau i hc v cỏc thy cụ giỏo nh trng ó giỳp to iu kin thun li cho tụi sut quỏ trỡnh thc Tụi xin chõn thnh cm n gia ỡnh, bn bố ó luụn giỳp ng viờn v to iu kin thun li tụi hon thnh khúa hc Thc s cng nh hon thnh lun ny H Ni, ngy 10 thỏng 12 nm 2015 Tỏc gi Hong Th cm Nguyờn Lun ny c hon thnh ti trng i hc S phm H Ni di s hng dn ca TS Trn Vn Dng Tụi xin cam oan rng s liu v kt qu nghiờn cu lun ny l trung thc v khụng trựng lp vi cỏc ti khỏc Trong quỏ trỡnh nghiờn cu v hon thnh lun tụi ó k tha nhng thnh qu khoa hc ca cỏc nh khoa hc v ng nghip vi s trõn trng v bit n Tụi cng xin cam oan rng mi s giỳp cho vic thc hin lun ny ó c cm n v cỏc thụng tin trớch dn lun ó c ch rừ ngun gc H Ni, ny 10 thỏng 12 nm 2015 Tỏc gi Hong Th cm Nguyờn MC LC Chng : MT s THUT TON CA H M KHểA CễNG KHAI 16 2.1 2.2 2.3 M U Lớ chon ti * 2.4 Bo mt l nhu cu ó xut hin t rt lõu i sng ca ngi Di nhu cu cn thit ny Mt mó hc ó ũi v phỏt trin ngy cng mnh m Mt mó hc l mt lnh vc liờn quan vi cỏc k thut ngụn ng v toỏn hc m bo an ninh an ton thụng tin Mt mó hc l mt lnh vc liờn ngnh, c to t mt s lnh vc khỏc Cỏc dng c nht ca mt mó hỏ ch yu liờn quan n ngụn ng gn õy thỡ tm quan trng ó thay i mt mó húa s dng v gn lin nhiu hn túi toỏn hc c th l toỏn ri rc bao gm cỏc liờn quan n lý thuyt s, lý thuyt thụng tin, phc tớnh toỏn, thng kờ v t hp 2.5 Mó húa v mó l hai mt ca mt v luụn phỏt trin song hnh Cựng vi s phỏt trin ca mt mó, cỏc phng phỏp mó ngy cng tinh vi hiu qu v luụn l thỏch thc ln i vi cỏc nh mt mó 2.6 Mc tiờu ca mó l tỡm nhng im yu hoc khụng an ton phng thc mt mó húa Thỏm mó cú th c thc hin bi nhng k tn cụng ỏc ý, nhm lm hng h thng; hoc bi nhng ngũi thit k h thng (hoc nhng ngi khỏc) vi ý nh ỏnh giỏ an ton ca h thng 2.7 Cui th k XX h mt mó khúa cụng khai c i, nú c coi nh tin trin lm thay i nn tng c bn cỏch lm vic ca h thng mt mó húa H thng mt mó khúa cụng khai c phỏt trin v ng dng rng rói thng mi in t, to khúa v xỏc thc ca mail, xỏc thc, truy cp t xa, v c bit l h thng ch kớ in t 2.8 Chớnh vỡ lớ c s dng rng rói thng mi in t nờn luụn cú rt nhiu s tn cụng nhm phỏ v s an ton ca h mt mó ny Thờm vo ú, cha cú mt chng minh no khng nh c nn tng toỏn hc ca mt mó dựng khúa cụng khai l khụng th b góy, cho nờn tin trin ca toỏn hc tng lai cú th s lm cho nhng h thng ph thuc vo chỳng tr nờn mt an ton 2.9 Qua tỡm hiu v nm bt c , tụi cm thy hng thỳ vi ch v phng phỏp tn cụng cỏc mó khúa cụng khai v c s ng ý hng dn lun t TS Trn Vn Dng nờn tụi ó la chn ti: 2.10 NGHIấN CU MT Sễ K THUT TN CễNG H M CễNG KHAI 2.11 V NG DNG cho lun tt nghip ca mỡnh Mc ớch nghiờn cu 2.12 Tng hp li cỏc phng phỏp mó cỏc mt mó khúa cụng khai, t ú mong mun ngi s dng s trỏnh c cỏc li dn n vic mt an ton ca loi mt mó ny Nhim v nghiờn cu - Nghiờn cu v lý thuyt mt mó - Nghiờn cu cỏc thut toỏn mó húa v mó - Nghiờn cu mt s phng phỏp mó v ng dng i tung nghiờn cu - Cỏc khỏi nim c bn v mt mó - C s toỏn hc ca mó húa v mó Phung phỏp nghiờn cu - S dng phng phỏp thu thp thụng tin, ti liu liờn quan n ni dung ti - Phõn tớch tng hp v h thng cỏc phng phỏp mó mt mó khúa cụng khai úng gúp mi 2.13 Lun ny l mt ti liu h thng khỏ y v mt mó v mt s k thut tn cụng mó ph bin 2.14 Lun c trỡnh by theo hng i t c s lý thuyt toỏn hc n thc tin, vỡ vy hy vng lun s l mt ti liu d hiu i vi ngi c v ỏp dng c vo thc tin 2.15 NI DUNG 2.16 Chng 1: TNG QUAN Vẩ MT M KHểA CễNG KHAI 2.17 Mt mó khúa cụng khai l mt chuyờn ngnh mt mó hc cho phộp ngi s dng trao i cỏc thụng tin mt m khụng cn phi trao i cỏc khúa chung mt trc ú iu ny c thc hin bng cỏch s dng mt cp khúa cú quan h toỏn hc vi l khúa cụng khai v khúa cỏ nhõn (hay khúa mt) 2.18 Trong mt mó hc khúa cụng khai, khúa cỏ nhõn phi c gi mt khúa cụng khai c ph bin cụng khai Trong khúa, mt dựng mó húa v khúa cũn li dựng gii mó iu quan trng i vi h thng l khụng th tỡm khúa mt nu ch bit khúa cụng khai 1.1 C s lớ thuyt ca mt mó khúa cụng khai 1.1.1 2.19 S hocModulo S hc modulo l c s c bn cho mt mó hc núi chung v RSA núi riờng nh ngha 7: Cho s nguyờn dng N Chỳng ta núi hai s nguyờn a v b ng d theo modun N nu tn ti s nguyờn k cho a-b = kN Chỳng ta miờu t mi quan h ny bi kớ hiu sau : 2.20 a=b mod N 2.21 D dng chng minh c rng quan h ng d l quan h tng ng nh ngha 2: Cho lúp tng ng [JICJ v [y] theo modun N, ta nh ngha phộp toỏn sau : 2.22 Phộp cng: H+W=[J:+3] 2.23 2.24 Phộp nhõn: [.*][)>] = [jty] Trong lun ny tụi s kớ hiu lúp tng ng [JICJ mt cỏch n gin l X, nu cú iu gỡ thay i s c chỳ thớch rừ rng 2.25 inh ngha 3: Cho s nguyờn N > , modulo vũng ZN l : 2.26 Z={[0],[l], ,[iV-l]} 2.27 cựng vúi cỏc phộp toỏn trờn modulo ó c nh ngha hờn to thnh mt vnh giao hoỏn Phộp chia l phn m rng ca phộp nhõn: chia lp tng ng X cho lúp tng ng y, ta nhõn X vi nghch o ca y (raod AO, ú lúp nghch o ca y (nu cú) l lúp m tớch ca nú vi y bng lp tng ng 2.28 Trong ZN, ta rt d dng xỏc nh c phn t nghch o, iu ú rt cn thit cho cỏc thut toỏn mó cụng khai 2.29 nh ngha 4: Cho a l mt phn t ca ZN Phn t nghch o ca a theo raodulo N l s nguyờn X tha món: 2.30 ax = mod N 2.31 phn t nghch o ca a kớ hiu : a~l mod N 2.32 iu quan trng cn lu ý õy l f1 mod N tn ti v ch a v N nguyờn t cựng nhau, tc l c chung ln nht ca chỳng bng 1: 2.33 gcd(a,A0 = l 2.34 Tht vy, theo thut toỏn Euclid m rng thỡ ta cú (a, N)=l v ch tn ti cỏc giỏ tr nguyờn X, y cho: xa + yN = Do ú ta cú : ax = mod N ax-l = kN ax-kN = Nu (a,N) ^ thỡ s khụng cú nghim nguyờn X, k cho phng trỡnh ny, ú khụng cú nghch o ca a theo moN 2.35 Mt th tc rt quan trng cho cỏc thut toỏn mó cụng khai v ng d l modulo ly tha Cho cỏc s nguyờn b, e, N gi s ta mun tớnh s nguyờn c tha món: 2.36 2.37 c=be mod N Phng phỏp trc tip tớnh c l ta tớnh toỏn be v sau ú l tớnh phn d theo mod N phc ca thut toỏn ny l 0(e), vỡ vy nú khụng cú tớnh kh thi cho cỏc giỏ tr e ln Sau õy, tụi xin gii thiu mt phong phỏp khỏc, hiu qu hon: 2.38 Thut toỏn 1: Cho cỏc s nguyờn b, e, N tớnh modulo ly tha c=be (mod N) ta tin hnh nh sau: Vit e di dng biu din nh phõn ca nú : (em_1,em_2, ,e1,e0)2 2.39 m- 2.40 cho: e = y]e2 2.41 i=0 t c = form = m -1 to i = c = c2 mod N If eĂ = then c = cb mod N 2.42 phc ca thut toỏn l 0(m) = (log(e)) 2.43 nh ngha 5: Cho s nguyờn a v s nguyờn N cho (a, N) = 1, bc ca a theo modulo N, c kớ hiu oN (a), l s nguyờn dng k nh nht cho: 2.44 ak = mod N 2.45 inh ngha 6: Cho s nguyờn q v s nguyờn n, ta núi q l ng d bc theo modulo n, nu tn ti s nguyờn X cho: 2.46 X2 = q mod n 1.1.2 nh lớ Fermat nh 2.47 ap l mod /7 = 2.48 ú, p l s nguyờn t v a l s nguyờn bt k khỏc bi ca p, tc l gcd(, p) = , hay vi mi s nguyờn t p v s nguyờn a khụng l bi ca p, ta luụn cú 2.49 ap =a mod p 2.338 Cỏc a s c lu tr di dng vector vi cỏc giỏ tr v Vỡ vy s cui cựng s l 3-5/~ 0,0,0,1,0,0,1,0,0,0,0,0,1,0,1,0,0) tng ng 2.339 vúi 2.340 (, l + i,2 + i,2-i, + 2, - 2, + , - , + 2, - 2i, -1, 2, 3, 5, 7,9, 11, 13, 17, 19, 23,29) Sau ú lm vic vi s nguyờn i s tỡm c mi quan h Ta tỡm thy 2.341 rng nu ta cng tt c cỏc vector * ta s cú vector Vỡ vy, nhõn tng ng 2.342 a ta s cú bỡnh phng s nguyờn i s, nhõn tng ng h(a) ta s 2.343 c bỡnh phng s nguyờn Kt qu ca cỏc * vi s nguyờn i s l 2.344 '12(1 + ')4(2 + )4(4 + if (4-)2 v kt qu tng ng vúi s nguyờn l 2.345 (-1)4.24.36.72.112.132.192.232 2.346 Cho 2.347 ò = i (1 + if (2 + if (4 + 0(4 - = 136 -102/ 2.348 Vỡ vy h(ò ) = 136 -102.50 = -4964 = 38 mod 2501 2.349 Cho t = (-1)2.22.33.7.11.13.19.23 = 47243096 = 1807 mod 2501 2.350 Do ú 382 = 1444 = 18072 mod 2501, gcd(l 807-38,2501) =61 v 2.351 2501/61 = 41 vỡ vy 2501 =61.41 3.3 Gii quyt bi toỏn logart trờn trng hu hn 2.352 Ta s xem xột hai phng phỏp gii quyt bi toỏn ny u tiờn l phng phỏp Pollig-Hellman, phng phỏp ny s hu ớch nu kớch thc F* 2.353 l trn Th hai l phng phỏp tớnh toỏn ch s 3.3.1 nh lớ phn d Trung Hoa 2.354 p dng nh lớ phn d Trung Hoa tng tc gii mó RSA 2.355 Cho n = pq Gi s M e =c modn Vic gii mt l tớnh toỏn c d =M mod n v tn thi gian l (log3 (ô)) Thay vo ú, t: c 2.356 M (mod p) = M p , M(mod) = M q , ; c mod p = Cp, c mod = 2.357 d modp-ỡ = d p , d modq-ỡ = d q 2.358 Ta cú M P ,M q ,C p ,C q ,d p ,d q [...]... thiệu một số hệ mật mã đặc trưng như RSA, trao đổi khóa Diffie - Heilman, xác thực mẩu tin và chữ kí điện tử 2.227 Chương 3: MỘT SỐ KỸ THUẬT TẨN CÔNG TRÊN HỆ MÃ KHÓA CÔNG KHAI 2.228 Mật mã khóa công khai có độ an toàn cao và dễ sử dụng nên có tính phổ biến lớn, cũng do lí do đó nên luôn có những cuộc tấn công nhằm phá vỡ sự an toàn của loại mật mã này Trong chương này tôi xin giới thiệu một số thuật. .. thực tế 2.223 Mã công khai thường chậm hon khá nhiều so với mã đối xứng, nên nó thường được dùng mã hóa những thông tin nhỏ quan trọng 2.224 Tóm tắt chương 2.225 Trong chương 2 tôi đã trình bày định nghĩa, cách thực hiện và độ an toàn của một số hệ mật mã khóa công khai 2.226 Trong chương này tôi cũng đã trình bày một số ví dụ để mô phỏng hoạt động của các thuật toán hệ mã khóa công khai Ở phần này... toàn dựa vào độ khó của bài toán phân tích ra thừa số các số lớn Bài toán phân tích ra thừa số yêu cầu 0(e l°ỗ n l°ỗ l°ỗ n) phép toán, đây là bài toán khó 2.142 Mã công khai RSA gồm hai giai đoạn: khởi tạo khóa RSA và giai đoạn mã hóa/giải mã 2.143 2.1.1 Định nghĩa hệ mật mã RSA 2.144 Ta xem xét hệ mật mã RSA là một bộ < N, M, c, K, E, D >ở đó: 2.145 N =pq - modun công khai, kết quả của hai số nguyên... phân tích một số ra thừa số - Có các bước tiến chậm theo thời gian; - Hiện tại cho rằng RSA 1024 hoặc 2048 là an toàn 2.173 Tấn công thời gian: - Được phát triển vào giữa năm 1990; - Paul Kocher chỉ ra rằng kẻ thám mã có thể xác định được khóa riêng nếu theo dõi thời gian máy tính cần để giải mã các bản tin - Tấn công thời gian không chỉ áp dụng cho RSA, mà cả với các hệ mã công khai khác - Tấn công thời... khác - Tấn công thời gian giống như kẻ cưóp đoán số điện thoại bằng cách quan sát một người nào đó trong bao lâu chuyển quay điện thoại từ số này sang số khác - Tấn công bản mã chọn trước - RSA có điểm yếu với tấn công bản mã chọn trước; - Kẻ tấn công chọn bản mã và đoán bản rõ được giải mã; - Chọn bản mã cho việc khám phá RSA, cung cấp thông tin để thám mã; 2.2 Trao đổi khóa Diffie -Heỉỉman 2.2.1 Yêu... mât mã RSA • • 2.140 RSA là mã công khai được sáng tạo bởi Rivest, Shamir & Adleman ở MIT (Trường Đại học Công nghệ Massachusetts) vào năm 1977 RSA là mã công khai được biết đến nhiều nhất và sử dụng rộng rãi nhất hiện nay Nó dựa trên các phép toán lũy thừa trong trường hữu hạn các số nguyên theo modulo nguyên tố Cụ thể, mã hóa hay giải mã là các phép toán luỹ thừa theo modulo số rất lớn Việc thám mã, ... thành thừa số nguyên tố - Bài toán thặng dư bậc hai - Bài toán tìm căn bậc hai mod n - Bài toán logarit rời rạc 2.137 Chương 2 : MỘT SỐ THUẬT TOÁN CỦA HỆ MÃ KHÓA 2.138 CÔNG KHAI 2.139 Thuật toán mật mã hóa công khai được thiết kế đầu tiên vào những năm 1970 và phát triển rất mạnh mẽ đến ngày nay Có rất nhiều thuật toán đã được phát triển và đánh giá cao như RSA, Diffie -Heilman, xác thực và chữ kí điện... mật mã khóa công khai và một số bài toán khó có liên quan đến mật mã khóa công khai 2.135 Trong phần cơ sở toán học đã trình bày các vấn đề sau: - Số học modulo - Định lí Fermat nhỏ - Định lí phần dư Trung Hoa - Hàm ệ Euler - Kiểm tra tính nguyên tố - Phân số tiếp diễn 2.136 Trong mục các bài toán khó liên quan đến hệ mật mã khóa công khai tôi đã trình bày các bài toán sau: - Bài toán phân tích số nguyên... có nhiều cách tấn công khác nhau đối với mã công khai RSA như sau: 2.169 Tìm kiếm khóa bằng phương pháp vét cạn, phương pháp này không khả thi với kích thước đủ lớn của các số hoặc tấn công bằng toán học dựa vào độ khó việc tính ^(iV)bằng cách phân tích N thành hai số nguyên tố p và q hoặc tìm cách tính trực tiếp ệ(N) Trong quá trình nghiên cứu việc thám mã người ta đề xuất kiểu tấn công thời gian... ngưòi sử dụng A và B đã thông bào công khai cho nhau biết khóa công khai yA và yB Khi đó mỗi ngưòi sử dụng A và B có thể tự tính được khóa phiên dùng chung như sau: • Khóa phiên dùng chung cho hai người sử dụng A, B là KAB 2.177 KAB = aXA'XB mod q 2.178 = yAB modợ (mà B có thể tính) 2.179 = yBA modợ (mà A có thể tính) • KAB được sử dụng như khóa phiên để mã hóa và giải mã thông điệp trao đổi giữa A và B