TRƯỜNG ĐẠI HỌC sư PHẠM HÀ NỘI KHOA TOÁN — 0O KHÓA LUẬN TỐT NGHIỆP ĐƯỜNG CONG ELLIPTIC VÀ ỨNG DỤNG TRONG MẬT MẢ CHUYÊN NGÀNH: TOÁN ỨNG DỤNG Giảng viên hướng dẫn: Trần Vĩnh Đức Sinh viên: Lê Thị Thu Lớp: K37-sp Toán HÀ NỘI, 5/2015 Bài khóa luận lioàn thành hướng dẫn nhiệt tình T.s Trần Vĩnh Đức Qua em xin gửi lời cảm ƠI1 sâu 8ắc tới thầy cô tổ Toán ứng dụng tliầy cô khoa Toán trường ĐHSP H Nội giúp đỡ em trình học tập để thuận lợi cho việc nghiên cứu Đặc biệt, em xin gửi lời cảm ƠI1 cliân thành tới T.s Trần Vĩnh Đức LỜI CẢM ƠN người dành cho em hướng dẫn nhiệt tình, chu đáo CỈ 1Ỉ bảo cho em suốt trình liọc tập nghiên cứu thực khóa luận Dù cố gắng, lần làm quen với việc nghiên cứu khoa liọc lực CÒI1 liạn cliế nên khó tránh, khỏi sai sót Em mong muốn nhận bảo, đóng góp quí thầy cô khóa luận tốt liơri Em xin chân thành cảm ơn! Hà Nội, tháng 05 năm 2015 Sinh viên Lê Thị Thu Em xin cam đoan khóa luận thân nghiên cứu với hướng dẫn T.s Trần Vĩnli Dức không trùng với đề tài LỜIviên CẢM ƠN Hà Nội, tìiánq 05 năm 2015 Sinh Lê Thị Thu Muc luc • • Lcfi cam dn Leri cam doan Cd sci? toan hoc Pliep cliia va phep cliia co dit 1.3 So lijmven to 1.4 Nhom 1.5 Tnidng 1.6 Tnfdng lifiu han 5 89 1 Lenstra Kit luan Tài liệu tham khảo Khóa luận tốt nghiệp GVHD: T.s Trần Vĩnh Đức Chương Cơ sở toán học 1.1 Phép chia phép chia có dư Tập hợp cảc số nguyên kí hiệu kí tự z Có tliể cộng , trừ, Iihân số nguyên theo cácli thông thường, Ĩ 1Ó đáp ứng tất quy tắc thông thường số học (luật giao hoán, luật kết hợp, luật phân phối, vv) Nếu A B số nguyên ta cộng cliúng A + B trừ chúng A — B, nhân chúng A.B Trong trường hợp, ta có kết số nguyên Nhưng ta muốn số nguyên có phép chia không pliải lúc có tliể clỉia số nguyên Ví dụ, cliúng ta kliông thề chia cho 2, số nguyên |.Diều dẫn đến khái niệm quan liệ cliia Định nghĩa 1.1.1 Clio A B số nguyên, với B Ỷ O.Nếu có iriột số nguyên C cho A = BC ta nói B chia hết A hay B ước A kí liiệu B I A Nếu B không cliia hết A ta kí hiệu B \ A Ví dụ Ta có 847 I 485331, 485331 = 847.573 Mặt khác, 355 \ 259943, thử cliia 259943 cho 355 ta số dư 83 Chính xác hơn,259943 = 355.732 + 83 259943 không bội 355 Mệnh đề 1.1.2 Cho a, 6, c € z số nguyên (a) Nếu a \ b b \ c a I c (b) a I b b I a a = ± (c) Nếu a \ b a \ c a I (b + c ) a I (6 — c ) Định lí 1.1.3 Clio số nguyên dương A B Klii tồn ợ, R cho: a = b.q + r v i < r < b Định nghĩa 1.1.4 (a) Một số nguyên gọi ước chung nhiều số ai,a- 2,^ 3, klii ước số (b) Một ước chung D số ai, a , D‘Ầ , CI N cho ước chung A,Ị , ữ 2j A 3I •■■■> A N ước d, gọi ước chung 1ỚI1 nhất(ƯCLN) ai, a , D‘Ầ, a n T a ký hiệu D = (ai, a , аз, A N ) (c) Nếu UCLN ữi, 02, аз, ,Ữ N số ữi, ữ 2, аз, A N gọi nguyên tố 1.2 Số học modun Định nghĩa Cho hai số nguyên A ò, M > Ta nói A ĐỒNG DƯ VỚI B THEO MODUN 772, phép cilia A B clio M ta số dư Ta ký hiệu A = B mod M Ví dụ 15 = mod 2, = —3 mod Đ ị n h l í 2 Cho m > ÌÀ số nguyên Các mệnh đề so,иỉà tương đương (a) A = B mod RN (b) m I a — b (c) Có số nguyên t cho a = b + mt CHỨNG MINH (a)^=>-(b) Tlieo giả thiết, kill cilia A B cho M ta số dư, có nghĩa tồn số tự nhiên r, < R < M số nguyên Q QB clio ta có A a = rn.q a + r b = m.q b + r, từ ta a-b = m(q a - q b ) Dẳng thức cliứng t ỎM I (A — B) (b) =^(c) Vì M I (A — B) nên ta có T £ z cho A — B = MT , hay A = B + MT KhóaLấy luận tốt nghiệp GVHD: T.s Trần Vĩnh Đức (c) =^(a) A chia cho ra, giả sử ta thương Q A dư r (0 < R < m), ngliĩa A = M.Q A + R Thay a A = B + MT ta b + mt = m.q a + r hay b = m(q a — t)r < r < m Hệ tliức clio ta thấy klii cliia B clio M, ta số dư R chia A cho ra, nghĩa A = B mod M □ Chúng ta viết Z/MZ = {0,l,2, ,ra — 1} gọi Z/mZ TẬP CÁC SỐ NGUYÊN MODUN ĨĨI Lưu ý klii thực phép cộng nhân Z/mZ, pliải chia clio ĨĨ 1, số dư CÒĨ lại pliần tử Z/mZ Hìnli 1.1 Minh họa clio Z/mZ cách thực phép cộng nhân modun cho bảng + Hình 1.1 Bảng pliép cộng pliép nliân modun Định nghĩa 1.2.3 Tập hợp thương tập hợp số nguyên quan hệ đồng dư theo modun m, qọi tập hợp lớp thặnq dư modun m, ký hiệu z m Mỗi pỉiần tử z m gọi lớp thặng dư modun m Định lí 1.2.4 Lớp thặng dư modun ra, A pliần tử kliả nghịch vành Z m klii A lớp nguyên tố modun M Ta gọi Ậ(M) Ĩ số cácKhóa phầnluận tử khả dư T.s Trần Vĩnh Đức tốt nghịcli nghiệp vành lớp thặng GVHD: moduli M Định lí 1.2.5 (Dịnli lý Euler) Nếu a, M G z, M < 0, (a, ra) = ta có: NỶ(M) = mod 777 Định lí 1.2.6 (Dịnli lí Fermat) Nếu P số nguyên tố A số nguyên không cilia hết cho P ta có P-i ^ ị moc Ị m _ a 1.3 số nguyên tố Đ ị n h n g h ĩ a Một số tự nhiên lớn khônq có ước khác ( k h ô n g c ó c t h ự c s ự ) gọi ÌÀ số nguyên tố M ệ n h đ ề Nếu p số nquyên tố, p chia ỉiết cho tích a.b với a , b ỈÀ hai số nguyên Thíp chia hết cho hai số a b Tổng quát hơn, p chia hết cho tích số nguyên, p I CL\Q>2 • CLf) p chia hết cho dị Đ ị n h l í ( D ị n l i l ý c b ả n ) Mọi số tự nhiên lớn ỉ phân tích thành tícìi thừa số nguyên tố pỉiân tích kỉiông kề thứ tự thừa số CHỨNG MINH, a) Sự phân tícli Giả sử A số tự nhiên 1ỚĨ Khi đó, a có số nguyên tố Pi ta có: A = PIAI,A,I E N Nếu CIỊ = Ì ta A = PI phân tích A thành tliừa số nguyên tố Nếu CHỊ > DỊ có ước nguyên tố P-2 ta có: A,Ị = Q>2 tố £ N nêll ữ = PÌP2^2Nếu Ü2 = I A = P1P2 pliân tích A thành tliừa số nguyên Khóa luận tốt nghiệp GVHD: T.s Trần Vĩnh Đức Nếu A > tliì tlieo lý luận trên, A có ước nguyên tố Рз, Quá trình phải kết tliúc, nghĩa có N cho A N = 1, A N _I = P số nguyên tố, bỏi ta có: a,ai,ơ, 2, dãy số tự nhiên giảm Như ta A = PI.P2 -PN phân tích А tliànli tích thừa số nguyên tố b) Sự Iiliất: Giả sử, ta có: А = P\.P2 -PN = liai dạng phân tích A thành tích thừa số nguyên tố Dẳng thức cliứng tỏ PI ước QI.Q2 -QM nên PI phải trùng với QJ (1 < J < M) Vì không kể đến thứ tự tliừa số liên coi PI = QỊ Từ đó, ta có P2 -PN — Q2 -QM- Ta lấy P-2 lặp lại vế không CÒ 11 thừa số nguyên tố Nhưng lúc ỏ vế lại không thừa số nguyên tố ngược lại xảy = Q N + Ị.Q N + Q M lioặc PM+IPM+2 -PM = Vì vậy, ta pliải có M, = N PI = QI, I = 1, 2, N Tínli Iihất chứng minh □ 1.4 Nhóm Clio X tập hợp tùy ý khác 0, X có pliép toán hai kí hiệu * X với pliép toán hai * rriột nhóm thỏa mãn điều kiện : (a) TÍ 11I kết hợp: ( A*B)*C = A*(B*C) với a,ò, с G X (b) Phần tử đồng nliất: TỒ 11 E G X thỏa mãn A*E = E*A với A G X (E gọi phần tử trung hòa) (c) Phần tử nghịch đảo: với A G X, tồn phần tử B G X tliỏa mãn A*B = B*A = E ( B gọi pliần tử nghịch đảo A) Và người ta kí hiệu phần tử nghịch đảo A A~ L • X gọi nhóm QIAO HOÁN{ Able) A*B = B*A với a, B G X Cấp nhóm X số pliần tử nhóm X Một nhóm có cấp hữu liạn gọi nhóm hữu liạn 18 A + 27 B Ỷ Nhận xét 2 Ta gọi A E = 4:A -\-27B 7^ biệt thức E Diều kiện Ỷ tương đương với điều kiện đa tliức X + AX + B nghiệm kép Nghĩa là, 19 20 X + AX + B = (X - ei )(X - e )(X - e ) 6i,e 2,e số, Ỷ klii ei,e 2,e đôi khác 21 22 Vậy A E Ỷ đường cong điểm kì dị Pliép cộng E địnli ngliĩa Iihư sau Nếu P Q liai điểm E L đường thẳng Iiối P ọ, tiếp tuyến E P P = Q Thì L cắt L ba điểm p, Q R Khi tổng P Q điểm R'(A , — 6) cách lấy đối xứng với điểm jR(a, B) qua trục X.Tà ký hiệu P © Q hay P + Q 24 Nếu P(a, 6) kí hiệu điểm đối xứng P OP = (a, — 6), lioặc kí hiệu —P 23 Đ ị n h l í Cho E ỉà đường cong elliptic Khi phép cộng E có tính chất sau: 26 ( a )P + = + P = P với p G E [ T í n h đ n g n l i ấ t ] 27 ( b )P + (-P) = với p £ E[ T í n h n g h ị c h đ ả o ] (c) (P + Q) + R = p + (Q + R) với p, Q, R E E [Tính kết liỢp] (d) P + Q = Q + P với P,Q E E [Tính giao hoán] 28 Nói cách khác ỈÀ luật cộng điểm E nhóm Aben 25 CHỨNG MINH Luật đồng (a) luật nghịch đảo(b) O nằm tất đường thẳng đứng Luật giao hoán (d) dễ dàng chứng rriinli, đường thẳng nối p Q giống đường thẳng nối Q p, tliứ tự điểm không quan trọng 30 Có nhiều cách chứng rriinli tính kết hợp, cách cliứng minh dễ dàng Sau klii phát triển công tliức rõ ràng cho luật cộng E (Dịnli lý 2.2),chúng ta sử dụng công tliức để kiểm tra luật kết hợp trực tiếp □ 29 31 Định lí 2.2.4 (Thuật toán Cộng đường cong elliptic) Dể clio E : Y = X + AX + B 33 ỉà đường cong ellvptic đê Pị P điểm E a ) Nếu P\ = o, Pị + P = P 32 (b) Cách khấc, P = o, tỉiìPị + P = Pị (c) Cácỉi kìiấc, viết Pị = (xi, yi) v P = ( í T -2, 2/ 2) (d) Nếu Xị = x v ĩjị = -y , t l i ì Pị + P = o (e) Cách khấc, định nqìiĩa X 34 35 36 37 Xs = A2 — Xị — X2 ys = X(xị — X 3) — ĩjị Thì Pị + p2 — (X‘3,7/3) CHỨNG MINH Phần (a), (b) hiển nhiên, (d) trường hợp đường thẳng qua P\ P2 để PỊ + P2 = O ( Lưu ý VÌ — Y-2 — đường thẳng đường tiếp tuyến, trường hợp nhiều) Dể chứng minh (e), ý P\ 7^ ? 2) À hệ số góc đường thẳng qua PỊ P-2, PI = P 2, À hệ số góc đường tiếp tuyến PỊ = P2 Trong hai trường hợp đường L cho phương trình Y = XX + V với V = Y — ẰXị Thay phương trình L vào phương trình E 39 {XX + v) = X + AX + B, 38 40 41 x3 - X X + {A- 2Xv)X + (B - V2) = Chúng ta biết phương trình có X ị X'2 hai nghiệm Nếu chứng ta gọi £3 nghiệm thứ ba, sau 42 43 X - X X + (A- 2Xv)X + (B- V2) = (X - Xl ){X - x )(X - x ) Bây khai triển nhìn hệ số X hai vế Hệ số X ỏ vế phải —X\ — X2 — £ 3, —À hệ số X vế trái Diều Iiày cho tínli £3 = À — XỊ — X2, sau Y- tọa độ giao điểm thứ ba E L cho XX‘S + V Cuối cùng, để có Pị + P2, cliúng ta pliải chiếu lên trục X có nghĩa tliay tọa độ Y Ĩ 1Ó □ 2.2.2 Phép nhân 44 Pliép nliân số nguyên K với điểm P tliuộc đường cong elliptic điểm Q xác định cách cộng N lần điểm P Q G E 45 46 2.3 nP = p + p + p + + p ' 47 -^ -V -48 n số Đường cong elliptic trường hữu hạn 49Chúng ta pliát triển lý thuyết đường cong elliptic hình học Ví dụ, tổng hai điểm phân biệt P Q đường cong elliptic E địnli nghĩa cách vẽ đường thẳng L nối P Q tìm điểm thứ ba mà L E giao Tuy nhiên, để áp dụng lý thuyết đường cong elliptic để mật mã, cần pliải tìm hiểu đường cong elliptic có điểm có tọa độ rriột trường hữu 50 hạn Fp đơn giản làxác địnli mộtđường cong elliptic Fp 51 iriột phương trình từ 52 E :Y = X + AX + B với A, B G FP điều kiện 4A + 27 B ^ 0, 53 điểm E có tọa độ FP , mà đươc biểu thị 54 E(Fp) = {(x, y) : x,y e Fp, y = X + Ax + B u o} Cho P = (XI,YI) Q = (# 2, 2/ 2) liai điểm E(FP) Tổng PI + p điểm ( 3, 1/ 3) thu cách áp dụng thuật 56 toán Cộng đường cong elliptic(Dịnli lý 2.2.4) Tuy nhiên, không tliể nói (# 3, 2/ 3) điểm E(FP) 55 Đ ị n h l í Cho E ỉ,à đường cong elìÁptìc E(Fp) cho hai điểm p Q E(Fp) (a) Các thuật toán Cộng đường cong elliptic( Dịnlỉ lý 2.2.4) áp 58 dụng cho p Q mang lại điểm E(Fp) Cỉiúng ta ký hiệu 59 điểm p + Q (b) Ngoài luật đáp ứng tất thuộc tính E ( F p ) liệt 60 Nói cácỉi khấc luật bổ sunq làm cho 61 kê định lý E(Fp) ỉ nhóm hữu hạn 62 2.2.3 57 63 Ví dụ Clio đường cong elliptic E :Y = X + 3X + t r ê n F 64 65 13 sử dụng thuật toán Cộng (Dịnli lý 2.2.4) để cộng điểm P = (9,7) Q = (1,8) E(F Ĩ ) ìl li 67 V ì p Ỷ Q ^ 66 68 ĨJ2 - ìJĩ _ 8-7 _ X 70 71 72 x2 — 69 X ị — 9—8 Tiếp tlieo tính V = V ỉ - Xx l = - 8.9 = -65 = X s = X — X ị — x = 64 — — = 54 = 2, 73 2/3 = -(\x + v) = 75 p + Q = ( 1, 8) + (9, 7) = ( 2, 10) E(F 3) Tương tự ,tính p + p, ta có 76 + A _ 3.9 + _ 246 77 79 -8 = - 16 = Vậy 74 78 8, 27/1 2.7 2À V = YI — XXỊ = 7—1.9 = 11 14 Sau X : I = X — X ị — X = 1—9—9 = 2/3 = — ( Ằ X s + v ) = —1.9— 11 = 6, Vì P + P = (9,7) + (9,7) = (9,6) E(FIS) Chúng ta có tliể tính tổng rriỗi cặp điểrri E(FỊ‘ Ò ) Các kết liệt kê bảng ( 12 ( 13 ( o 61,5) ( 71,8) ( 82,3) ( 92,10)( 10 9,6) ( 11 9,7) 12,11) 16 ( 17 ( 18 ( 19 ( 20 ( 21 ( 2212,2) ( 23 ( 14 o 15 o 1.5) 1,8) 2,3) 2,10) 9,6) 9,7) 12,2) 12,11) 24 ( 25 ( 26 ( 27 ( 30 ( 31 ( 32 ( 33 ( o 28 ( 29 1.5) 34 ( 1,5) 35 ( 36 2,10)o 37 ( 1.8) 38 ( 9,7) 39 ( 40 2,3) ( 12,2) 41 ( 4212,11) ( 9,6) 43 ( 1,8) 1,8) 2,3) 9,6) 1,5) 12,11) 2,10) 9,7) 12,2) 44 ( 45 ( 46 ( 47 ( 48 ( 49 ( 51 ( 52 ( 53 ( o 50 2,3) 54 ( 2,3) 55 ( 1,8) 56 ( 9,6) 57 ( 58 12,11)o 59 ( 6012,2) ( 1,5) 61 ( 622,10) ( 9,7) 63 ( 2,10) 2,10) 9,7) 1,5) 12,2) 1.8) 12,11) 9,6) 2,3) 64 ( 65 ( 66 ( 67 ( 68 ( 69 ( 70 ( 71 ( 73 ( o 72 9,6) 74 ( 9,6) 75 ( 2,3) 76 ( 12,11) 77 ( 12,2) 78 ( 1,8) 79 ( 80 9,7) ỡ 81 ( 82 1.5) ( 2,10) 83 ( 9,7) 9,7) 12,2) 2,10) 1.5) 12,11) 9,6) 2,3) 1,8) 84 ( 85 ( 86 ( 87 ( 88 ( 89 ( 90 ( 91 ( 92 ( 93 o 12,2) 94 ( 12,2) 95 ( 12,11) 96 ( 9,7) 97 ( 2,10) 98 ( 9,6) 99 ( 1001.5) ( 2,3) 101 ( 1021.8) ỡ 103 ( 12,11) 12,11) 9,6) 12,2) 9,7) 2,3) 2,10) 1,8) 1,5) 80 82 Bảng 2.1 : Bảng phép cộng E: Y = X + 3X + FI3 Y = X s + AX + B Đ ị n h l í ( H a s s e ) Cho E đường 83 cong elliptic Fp Thì $ E ( F p ) = p + — v i t h ỏ a r n ã n | í p | < 2y/p 84 85 Số lượng điểm E(FP) §E(FP) phải thỏa mãn địnli lý Hasse Định nghĩa 2.3.3 Bậc đường cong elliptic số điểm đường cong Bậc điểm P E E số K thỏa mãn KP = ỡ, K = ỊE(FP) P điểm sỏ E 86 Chương 87 Hệ mật mã đường cong elliptic 3.1 Mở đầu Năm 1976, Diffie Hellman giới thiệu liệ mật mã hóa công khai mà an toàn Ĩ 1Ó dựa độ khó toán DLP Họ đưa khái niệm hàm cửa sập cliieii(TOF) Năm 1985, Lenstra thành công việc sử dụng đường cong elliptic hệ Iiiật mã công khai 89 Sau nhiều công trình nghiên cứu quan trọng toán toán phân tích số toán logarit rời rạc chưa giải tliời gian đa tliức kliông cần đến tliời gian hàm III ũ để giải nó, mà có thuật toán thuật toán dùng tính số thuật toán dùng đường cong elliptic Lenstra, giới tliiệu năm 1985 Dù clio công trình không làm liệ mã sụp đổ, Ĩ 1Ó buộc phép xây dựng hệ mã pliải giảm hiệu phải dùng klióa dài để đảm bảo an toàn Công trình Lenstra đánh dấu lần lý thuyết đường cong elliptic sử dụng vào mật mã, có vai trò phá mã Diều thú vị sau lý thuyết đường cong elliptic sử dụng cho việc lập mã Koblitz Miller độc lập đề nghị tliay tliế việc sử dụng nhóm trường hữu hạn nhóm điểm đường cong elliptic đó, thuật toán mũ biết để giải toán logarit rời rạc không the áp dụng Từ 88 việc sử dụng đường cong elliptic dẫn tới dẫn đến hệ mã hiệu liơri (do không cần phải chọn khóa dài để chống lại thuật toán 111 ũ) 90 Miller Kobliz giới thiệu hệ mật mã elliptic Họ không phát minli thuật toán đóng góp 1ỚI1 viêc áp dụng elliptic cho hệ khóa công khai Miller đề xuất giao tliức trao đổi khóa tựa Diffie - Heilman vào năm 1985 Kobliz Khóa luận tốt nghiệp GVHD: T.s Trần Vĩnh Đức đưa thuật toán rriã hóa tương tự hệ ElGamal Massey-Orrmra vào năm 1987 Sơ đồ tương tự RSA liàm cliiều(có cửa sập) rriới dựa đường cong elliptic đưa vào năm 1991 Koyama, Maurer, Okamoto, Vanstone(thuật toán tốc độ tliực nhanh gấp lần so với RSA) Cùng với thời điểrri đó, Kaliski chứng minli liàĩn cửa sập cliiều đòi liỏi thời gian hàm mũ đế thực pliép tính nghịch đảo Menezes, Okamoto Vanstone đưa phương pháp công MOV để giải toán EDLP số trường hợp riêng Ngay sau đó, Miyaji tìm điều kiện để tránh khỏi công MOV đề xuất rriột ứng dụng tliực tế đường cong elliptic 92 Nărri 1993, Demytko đưa thuật toán rriới tương tự RSA clio đường cong elliptic vànli zn viĩỢt qua liạn cliế phiên trước, Menezens Vanstone đưa phương pliáp tliực tlii thiết bị cứng có the cải thiện tínli toán đường cong elliptic trường hữu hạn Năm 1997,1998 việc tìm hệ mật mã đường cong elliptic ngày thu hút nhiều ý số thuật toán đưa 91 3.2 Logarit rời rạc đường cong elliptic(ECDLP) Định nghĩa 3.2.1 Cho E rriột đường cong elliptic E(F P ), với P Q hai điểm E(FP) Klii toán logarit rời rạc E(F P ), toán tìm số nguyên N cho Q = NP Bằng cách tương tự với toán logarit rời rạc FP , ký hiệu số nguyên N 94 n log P (Q) 93 95 v c h ú n g t a g ọ i n l ỉoqarit rời rạc elliptic Q p Nhận xét 3.2.2 Tương tự với log bình thường ta có 96 97 log P (Qi + Q ) = logp(Qi) + logp(Q ) v i Q i , Q £ E{Fp)- ( - ) Tliực tế logarit rời rạc E(F P ) thỏa mãn (3.1) có Iigliĩa I1Ó tuân theo luật Cộng nliórri E(FP) ánh xạ vào nhóm Z/sZ Chúng 99 ta nói ánh xạ LOGP xác định gọi đồng cấu Iihóm 98 100 logp : E(Fp) —* Z/sZ 3.3 Mật mã đường cong elliptic Dó tliời gian để áp dụng đường cong mật mã Cliíing ta bắt đầu với ứng dụng đơn giản luận nhất, tốt Diffie-Hellman trao đổi khóa, GVHD: T.s bao Trần Vĩnh Đức Khóa nghiệp gồm thay toán logarit rời rạc clio trường hữu hạn FP toán logarit rời rạc cho đường cong elliptic E(FP) Sau mô tả tương tự hệ mật mã hóa ElGamal đường cong' elliptic 101 3.3.1 Diffie- Heilman elliptic trao đổi khóa Giả sử Alice Bob muốn thống Iihất klióa chung để liên lạc có bảo mật giĩta hai người mật mã Trước hết hai bên thống công khai chọn trường hữu hạn F V đường cong elliptic E khóa chung họ xây dựng từ rriột điểm ngẫu nhiên p từ đường cong vừa clio, họ làm cách cácli chọn tọa độ X P ngẫu nhiên FP 103 Dể tạo khóa, trước hết Alice chọn ngẫu nhiên số nguyên TỈA Số ĨĨA dược giữ bí mật Trên sở đó, Alice tính N^P G E , UAP công khai Đến lượt Bob làm vậy, chọn ngẫu nhiên số nguyên UJB bí mật, tính ĨIỴP G E công khai Khóa bí mật mà có hai người có 102 104 Q = (n A n B )P e E Eve suy (ĨIATIB)P n ếu không giải toán logarit rời rạc E trường FP 105 Ví dụ Alice Bob địnli sử dụng elliptic Diffie- Heilman với số nguyên , đường cong điểm: 107 P = 3851, EĨ Y = X + 324X + 1287, P = (920,303) e £(F 3851 ) Alice Bob chọn giá trị bí mật tương ứng ĨIA = 1194 ĨIỊỊ = 1759, sau đó: 108 Alice tính Q A = 1194P = (2067,2178) e E{F Z № Ì ) T 106 Thuật toán ElGamal Elip IĨIỞ rộng thông till 4-1 so rộng 2-1 ElGamal sử dụng Fp với tỉ lệmở Bob tính Q B = 1759 P = (3684,3125) E(F' Ầ S Ỉ ) Alice gửi QA tới Bob Bob gửi QB tới Alice Cuối cùng, 111 Alice tính N Ả Q B = 1194(3684,3125) = (3347,1242) E £(F 3851 ), Bob tính N B Q A = 1759(2067,2178) E E{F S Z) Bob Alice trao bí Vĩnh Đức KI ì, ó= a(3347,1242) luận tốt nghiệp GVHD: T Hđổi Trần mật điểm (3347,1242)) Họ phải loại bỏ tọa độ Y có giá trị X = 3347 giá trị cilia sẻ bí mật 109 110 Định nghĩa 3.3.1 Cho E(FP) đường cong elliptic trường hữu liạn để clio P G E(F P ) CÁC BÀI TOÁN ĐƯỜNG CONG ELLIPTIC DIFFIE-HEILMAN vấn đề tính toán giá trị 77,1 ĨỈ 2-P từ giá trị UỊP N,2P 112 3.3.2 Hệ mật mã ElGamal đường cong elliptic Alice Bob thống sử dụng rriột số nguyên tố P, đường cong elliptic E , điểm P G E(FP) Alice cliọn khóa bí mật ĨIA số nguyên QA = 71,4p khóa công khai 114 Khi hệ mã hóa đường cong elliptic xây dựng tương tự hệ mã hóa ElGamal, thuật toán mã hóa giải mã xác định sau: 115 Thuật toán mã hóa 116 Bod lấy điểm M E E(FP) San Bob chọn sốnguyên K 117 gửi thông điệp mã hóa C 1, C2 tính sau: 113 118 C\ — kP Ơ2 = M + kQA T h u ậ t t o n g i ả i m ã Bob gửi hai điểm ( C i ị C ỵ ) tới Alice, san tính 119 120 c - n A Cị = (M + kQ A ) - n A (kP) = M + k(n A P) - n A (kP) = M để khôi phuc lại gốc 122 Về nguyên tắc, hệ thống mật mã ElGamal elliptic lioạt động tốt có số khó khăn tliực tế 121 3.4 Thuật toán tìm nhân tử đường cong elliptic Lenstra Chúng ta tiếp tục nghiên cứu nliững điểm địnli luật bổ sung đường cong elliptic E(FP) tương tự với địnli luật khuếch đại cho F* Hendrik Lenstra 123 khiến tương tự trở nên xác cácli phát minh thuật toán tìm thừa số đường cong elliptic E ỏ nơi kliếcli đại modun N 124 De Iĩiiêu tả thuật toán Lenstra, cần clio đường cong elliptic ì, ó a luận tốt nghiệp T HZ/mZ Trần Vĩnh Đức modun AT, đó, sốKInguyên N số nguyên tố GVHD: vành không pliải trường Giả sử chứng ta bắt đầu với phương trình: 125 E : Y = X + AX + B 126 127 giả sử P = (A, B) điểm E có modun N, cácli ta có 128 b = a + A.a + B mod N Sau có thẻ áp dụng thuật toán cộng đường cong elliptic để tính 2p, 3p, 4p, 129 Ví dụ Clio L = 187 xem đường cong elliptic 130 131 132 133 134 135 136 E : Y = X + 3X + modim 187 điểm P = (38,112), E modun 187 Dể tính P rriod 187 tuân theo thuật toán cộng đường cong elip tính 1 — 7— = —— = 91 rnod 187, 137 138 tự 139 Tiếp tlieo tính P = P + P theo cácli tương Trong trường hợp này, thêm điểm khác nhau, công thức clio À kliác phép tính giống nhau: 140 141 75 mod 187 142 x(2P) — x(P) y(P) = = ý(2P) — 14.75 = 115 x(2P)= — x(P) mod 187, 144 X(3P) = À — X(2P) — X(P) = 13144 = 54 mod 187, 145 y(3P) = X (x(P) - x(3P)) - y(P) = 115(38 - 54) - 112 = 105 146 mod 187 147 Do P = (54,105) đường cong E rnodun 187 Chúng ta lại tính giá trị nghịch đảo, trường hợp giá trị nghịch đảo rriođun 187 Chúng ta để lại tiếp tục phép tính Ví dụ tínli P + P P + P có câu trả lời 4P = (93, 64) 143 Nếu tính đến P = P + P với P = (43, 126) 3P = (54,105), ta có 148 149 x(3P) - x(2 P) = 54 - 43 = 11 irià (11, 187) = 11 11 giá trị nghịch đảo 187 Diều trỏ nên khó khăn Nhưng thất bại tính P cho biết 187 = 11.17 Ý tưởng thuật toán tìrri nhân tử đường cong elliptic Lenstra Thuật toán tìm nhân tử đường cong elliptic đa đưa cácli tổng quát sau: 151 Đ ầu vào Số nguyên N Cliọn giá trị A , a , b modun N 150 p = (a, b) B = b — a — A.a mod N 152 Cho E đường cong elliptic E : Y = X3 + AX + B Khi J = 2,3,4 xác định điều kiện Tínli Q = j P (rriod n) tập p = Q Nếu bước không tínli , tliì tìm D > với D I N Nếu D < N, quay trở giá trị d Nếu D = N, từ bước tìm đường cong điểm Gía trị J tăng quay ngược lại bước 2 Tập Ví dụ Chúng ta minh họa thuật toán Lenstra cách tính N = 6887 Cliúng ta bắt đầu chọn ngẫu nhiên điểm P = (1512, 3166) số A = 14 tính 153 154 B = 3166 - 1512 - 14.1512 = 19 mod 6887 155 Và clio E đường cong elliptic 156 E : Y = X + 14X + KI xây ì, ó dựng, a luậnđiểm tốt nghiệp Vì vậy, cách p E modun 6887.GVHD: Bây giờT H Trần Vĩnh Đức bắt đầu thực phép nhân p iriodun 6887 158 Với J = 2, ta có 157 159 160 P = (3466, 2996) mod 6887 Sau tính 161 31.P = 3.(2P) = 3.(3466,2996) = (3067,396) mod 6887 Tương tự tính Q = 6\.P = (6141,5581) Nến ta muốn tính Q Dầu tiên tínli toán 162 163 164 Q = (5380,174) mod 6887, 4Q = 2Q = (203,2038) mod 6887 165 Sau tính Q sau 166 7Q = (Q + 2Q) + Q mod 6887, 167 = ((6141, 5581) + (5380,174)) + (203, 2038) mod 6887 (3.2) = (984, 589) + (203, 2038) mod 6887 Nhận thấy (203 - 984,6887) = (-781,6887) = 71 169 Nên 6887 = 71.97 170 Diều clio ta thấy E(FJI) điểm p thỏa mãn 63 P = O mod 71, E(FỊ)J) điềm p thỏa man 107P = O mod 97 168 171 Kết luận KI ì, ó a luận tốt nghiệp GVHD: T H Trần Vĩnh Đức Trên toàn nội dung klióa luận "Dường cong elliptic ứng dụng mật mã" Cụ tliể: 173 Chương l:Cơ sở toán học 174 Chương 2: Mục 2.1 trình bày đường cong elliptic Mục 2.2 phép toán đường cong elliptic Mục 2.3 trình bày đường cong elliptic trường hữu hạn 175 Chương 3: Mục 3.1 ĨI 1Ở đầu Mục 3.2 logarit rời rạc đường cong elliptic Mục 3.2 mật mã đường cong elliptic Mục 3.3 thuật toán tìm Iiliân tử đường cong elliptic Lenstra 176 Do thời gian nghiên cứu lực hạn chế liên klióa luận đạt số kết nliất định Em mong thầy cô, bạn góp ý nhận xét để khóa luận đầy đủ hoàn thiện liơn 177 Trước kết tliúc khóa luận này, lần em xin bày tỏ lòng biết ơn sâu sắc thầy giáo trường, đặc biệt thầy giáo Trần Vĩnh Dức tận tìnli giúp đỡ em hoàn thành khóa luận Iiày 172 Không có cách rõ ràng để đính kèm thông tin văn gốc tới điểm E(Fp) 178 [...]... ta thấy rằng trong E(FJI) điểm p thỏa mãn 63 P = O mod 71, và trong E(FỊ)J) điềm p thỏa man 107P = O mod 97 168 171 Kết luận KI ì, ó a luận tốt nghiệp GVHD: T H Trần Vĩnh Đức Trên đây là toàn bộ nội dung klióa luận "Dường cong elliptic và ứng dụng trong mật mã" Cụ tliể: 173 Chương l:Cơ sở toán học 174 Chương 2: Mục 2.1 trình bày về đường cong elliptic Mục 2.2 các phép toán trên đường cong elliptic Mục... 3.3 Mật mã đường cong elliptic Dó là tliời gian để áp dụng các đường cong trong mật mã Cliíing ta bắt đầu với các ứng dụng đơn giản luận nhất, tốt Diffie-Hellman trao đổi khóa, GVHD: trong đó T.s bao Trần Vĩnh Đức Khóa nghiệp gồm thay thế các bài toán logarit rời rạc clio các trường hữu hạn FP bởi bài toán logarit rời rạc cho một đường cong elliptic E(FP) Sau đó chúng tôi mô tả tương tự hệ mật mã hóa... đường cong elliptic trên một trường hữu liạn và để clio P G E(F P ) CÁC BÀI TOÁN ĐƯỜNG CONG ELLIPTIC DIFFIE-HEILMAN là vấn đề tính toán giá trị của 77,1 ĨỈ 2-P từ giá trị của UỊP và N,2P 112 3.3.2 Hệ mật mã ElGamal trên đường cong elliptic Alice và Bob đã thống nhất sử dụng rriột số nguyên tố P, một đường cong elliptic E , và một điểm P G E(FP) Alice đã cliọn một khóa bí mật ĨIA là một số nguyên và QA... cliất đó được gọi là bậc của phần tử A Q K Chương 2 Đường cong Elliptic và ứng dụng trong mật mã 2.1 Đường cong Elliptic Một đường cong Elliptic là tập hợp các nghiệm cho từ một phương trình: Y 2 = X 3 + AX + B Phương trình loại này được gọi là phương trình Weirerstrass được nghiên mô tả Ehai cứu rộng rãi trong thế kỷ tliứ 19 Ví dụ, liình đường cong 2 .elliptic UE2 dưới đây: Y 2 = X 3 -3X + 3 Y 2 = £i... hiện trên Hình: 2 A E 2 : V 2 = X 3 - 6X + 5 Hình 2.1: Hai đường cong elliptic Eị và E‘> KI ì, ó a luận tốt nghiệp GVHD: T H Trần Vĩnh Đức Hình 2.2: Quy tắc cộng trên đường cong elliptic Cho P và Q là hai điểm trên đường cong elliptic E như mô tả trên Ta vẽ đường thẳng L qua P và Q Dường L cắt E tại 3 điểrri 2 Hình P,Q và R Từ điểm R, ta lấy đối xứng qua trục X (nghĩa là chúng ta Iihân tọa độ Y bởi —1)... về đường cong elliptic trên trường hữu hạn 175 Chương 3: Mục 3.1 ĨI 1Ở đầu Mục 3.2 logarit rời rạc trên đường cong elliptic Mục 3.2 mật mã đường cong elliptic Mục 3.3 thuật toán tìm Iiliân tử trên đường cong elliptic của Lenstra 176 Do thời gian nghiên cứu và năng lực còn hạn chế liên klióa luận mới chỉ đạt được một số kết quả nliất định Em rất mong các thầy cô, các bạn góp ý và nhận xét để khóa luận. .. thì lý thuyết các đường cong elliptic đã được sử dụng cho việc lập mã Koblitz và Miller cùng độc lập đề nghị tliay tliế việc sử dụng nhóm trong trường hữu hạn bằng nhóm các điểm trên đường cong elliptic vì ở đó, các thuật toán dưới mũ đã biết để giải quyết bài toán logarit rời rạc có vẻ như không the áp dụng được Từ 88 đó việc sử dụng đường cong elliptic dẫn tới dẫn đến những hệ mã hiệu quả liơri (do... cứng có the cải thiện các tínli toán trên các đường cong elliptic trên trường hữu hạn Năm 1997,1998 việc tìm ra các hệ mật mã trên đường cong elliptic ngày càng thu hút được nhiều sự chú ý và một số các thuật toán đã được đưa ra 91 3.2 Logarit rời rạc trên đường cong elliptic( ECDLP) Định nghĩa 3.2.1 Cho E là rriột đường cong elliptic trên E(F P ), và với P và Q là hai điểm trên E(FP) Klii đó bài toán... điểm P tliuộc đường cong elliptic là điểm Q được xác định bằng cách cộng N lần điểm P và Q G E 45 46 2.3 nP = p + p + p + + p ' 47 -^ -V -48 n số Đường cong elliptic trên trường hữu hạn 49Chúng ta đã pliát triển lý thuyết về đường cong elliptic hình học Ví dụ, tổng của hai điểm phân biệt P và Q trên một đường cong elliptic E được địnli nghĩa bằng cách vẽ đường thẳng L nối P và Q và tìm điểm... P và Q và tìm điểm thứ ba mà L và E giao nhau Tuy nhiên, để áp dụng các lý thuyết về đường cong elliptic để mật mã, chúng ta cần pliải tìm hiểu những đường cong elliptic có điểm có tọa độ trong rriột trường hữu 50 hạn Fp đơn giản làxác địnli mộtđường cong elliptic trên Fp là 51 iriột phương trình từ 52 E :Y 2 = X 3 + AX + B với A, B G FP điều kiện 4A 3 + 27 B 2 ^ 0, 53 và các điểm trên E có tọa độ trên ... thuyết đường cong elliptic sử dụng vào mật mã, có vai trò phá mã Diều thú vị sau lý thuyết đường cong elliptic sử dụng cho việc lập mã Koblitz Miller độc lập đề nghị tliay tliế việc sử dụng nhóm... bé nliất tliỏa mãn tính cliất gọi bậc phần tử A Q K Chương Đường cong Elliptic ứng dụng mật mã 2.1 Đường cong Elliptic Một đường cong Elliptic tập hợp nghiệm cho từ phương trình: Y = X + AX +... logarit rời rạc đường cong elliptic Mục 3.2 mật mã đường cong elliptic Mục 3.3 thuật toán tìm Iiliân tử đường cong elliptic Lenstra 176 Do thời gian nghiên cứu lực hạn chế liên klióa luận đạt số