Luận văn thạc sĩ toán học Lôgarit rời rạc và mật mã công khai

58 578 3
Luận văn thạc sĩ toán học Lôgarit rời rạc và mật mã công khai

Đ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

1 ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC KHOA HỌC VĂN THỊ THU THỊNH LÔGARIT RỜI RẠC VÀ MẬT MÃ CÔNG KHAI Chuyên ngành: TOÁN ỨNG DỤNG Mã số: 60.46.01.12 LUẬN VĂN THẠC SĨ TOÁN HỌC NGƢỜI HƢỚNG DẪN KHOA HỌC: TS VŨ MẠNH XUÂN THÁI NGUYÊN – 2014 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ MỤC LỤC MỤC LỤC………………………………………… .1 LỜI CẢM ƠN…………………………………………………………… .2 MỞ ĐẦU………………………………………………………………… .3 CHƢƠNG I KIẾN THỨC CƠ SỞ………………………………………… 1.1 Khái quát mật mã, mã công khai………………………… 1.2 Bài toán lôgarit rời rạc…………………………………………… 11 CHƢƠNG II ỨNG DỤNG LÔGARIT RỜI RẠC TRONG MỘT SỐ HỆ MÃ CÔNG KHAI……………………………………………………………… 22 2.1 Hệ mã RSA……………………………………………………… 22 2.2 Hệ mã Elgamal…………………………………………………….27 2.3 Sơ đồ chữ kí Elgamal………………………………………………37 2.4 Hệ mã đƣờng cong Eliptic…………………………………………43 KẾT LUẬN………………………………………………………………….56 TÀI LIỆU THAM KHẢO………………………………………………… 57 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ LỜI CẢM ƠN Sau thời gian nghiên cứu tìm hiểu, em hoàn thành luận văn thạc sỹ toán học chuyên ngành toán ứng dụng với đề tài: “ Lôgarit rời rạc mật mã công khai” Lời em xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS Vũ Mạnh Xuân tận tình hƣớng dẫn em suốt trình nghiên cứu thực đề tài Em xin chân thành cảm ơn quý thầy cô khoa Toán – tin trƣờng Đại học Khoa học – Đại học Thái Nguyên, đồng nghiệp bạn học lớp hƣớng dẫn, truyền đạt kiến thức, tạo điều kiện giúp đỡ cho em suốt thời gian theo học thực luận văn Qua việc nghiên cứu hoàn thành luận văn, em có thêm nhiều kiến thức bổ ích chuyên môn nhƣ phƣơng pháp luận nghiên cứu khoa học Trong khuôn khổ luận văn, chắn chƣa đáp ứng đƣợc đầy đủ vấn đề đặt Vì điều kiện nghiên cứu hạn chế, nên cố gắng nhiều nhƣng luận văn không tránh khỏi thiếu sót Em mong nhận đƣợc đóng góp ý kiến, phê bình quý báu nhà khoa học, thầy cô bạn đồng nghiệp Một lần em xin chân thành cảm ơn ! Thái Nguyên, tháng 09 năm 2014 Học viên Văn Thị Thu Thịnh Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ MỞ ĐẦU Bài toán logarit rời rạc Zp đối tƣợng nhiều công trình nghiên cứu đƣợc xem toán khó p đƣợc chọn cẩn thận Bài toán có nhiều ứng dụng sâu sắc nhiều hƣớng khác toán học, vật lý học,…đặc biệt toán logarit rời rạc sở để xây dựng hệ mã khóa công khai Đây dạng toán chiều: toán lấy lũy thừa tính toán hiệu theo thuật toán bình phƣơng nhân, song toán ngƣợc tìm số mũ lại không dễ nhƣ Đề tài nhằm nghiên cứu toán logarit rời rạc tìm hiểu ứng dụng vài hệ mã công khai: hệ mã RSA, hệ mã Elgamal, chữ kí Elgamal hệ mã đƣờng cong Elliptic Luận văn đƣợc trình bày chƣơng phần mởp đầu kết luận Chƣơng gồm kiến thức sở để nhằm phục vụ cho chƣơng 2, bao gồm kiến thức liên quan về hệ mật mã, hệ mã công khai toán logarit rời rạc Chƣơng tác giả trình bày kiến thức hệ mã RSA, hệ mã Elgamal, chữ kí điện tử Ellgamal, hệ mã đƣờng cong Elliptic Chƣơng trình bày số ví dụ cụ thể để minh họa Mặc dù có nhiều cố gắng, song luận văn dừng mức trình bày hệ thống kiến thức nhƣ tính toán số ví dụ cụ thể, phần ứng dụng thực tế hạn chế Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ CHƢƠNG I : KIẾN THỨC CƠ SỞ Chƣơng trình bày kiến thức sở khái quát mật mã, khái niệm hệ mật mã, hệ mã công khai, toán lôgarit rời rạc số thuật toán lôgarit rời rạc Những kiến thức trình bày chƣơng đƣợc trích dẫn tài liệu sau: Mã hoá thông tin: Cơ sở toán học ứng dụng - Phạm Huy Điển, Hà Huy Khoái (2003) - NXB Đại Học Quốc Gia, Lý thuyết mật mã an toàn thông tin - Phan Đình Diệu (2002) - NXB Đại Học Quốc Gia Hà Nội, Giáo trình an toàn liệu – Khoa công nghệ thông tin - Trịnh Nhật Tiến NXB Đại Học Quốc Gia Hà Nội 1.1 KHÁI QUÁT VỀ MẬT MÃ, MÃ CÔNG KHAI 1.1.1 Khái quát mật mã 1.1.1.1 Giới thiệu Mật mã đƣợc ngƣời sử dụng từ lâu đời Các hình thức mật mã sơ khai đƣợc tìm thấy từ khoảng bốn nghìn năm trƣớc văn minh Ai Cập cổ đại Trải qua hàng nghìn năm lịch sử, mật mã đƣợc sử dụng rộng rãi khắp nơi giới từ Đông sang Tây để giữ bí mật cho việc giao lƣu thông tin nhiều lĩnh vực hoạt động ngƣời quốc gia, đặc biệt lĩnh vực quân sự, trị, ngoại giao Mật mã trƣớc hết loại hoạt động thực tiễn, nội dung để giữ bí mật thông tin Ví dụ muốn gửi văn từ ngƣời gửi A đến ngƣời nhận B, A phải tạo cho văn mã mật tƣơng ứng thay gửi văn rõ A gửi cho B mã mật, B nhận đƣợc mã mật khôi phục lại văn rõ để hiểu đƣợc thông tin mà A muốn gửi cho Do văn gửi thƣờng đƣợc chuyển qua đƣờng công khai nên ngƣời “lấy trộm” đƣợc, nhƣng mật mã nên không đọc hiểu đƣợc Còn A tạo mã mật B giải mã mật thành rõ để hiểu Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ đƣợc hai ngƣời có thoả thuận chìa khoá chung, với khoá chung A tạo đƣợc mã mật từ rõ B khôi phục đƣợc rõ từ mã mật Khoá chung đƣợc gọi khoá mật mã Để thực đƣợc phép mật mã, ta cần có thuật toán biến rõ với khoá mật mã thành mã mật thuật toán ngƣợc lại biến mật với khoá mật mã thành rõ Các thuật toán đƣợc gọi tƣơng ứng thuật toán lập mã thuật toán giải mã Các thuật toán thƣờng không thiết phải giữ bí mật, mà cần đƣợc giữ bí mật khoá mật mã Trong thực tiễn, có hoạt động ngƣợc lại với hoạt động bảo mật khám phá bí mật từ mã “lấy trộm” đƣợc, hoạt động thƣờng đƣợc gọi mã thám hay phá khoá 1.1.1.2 Các khái niệm sở Mật mã lĩnh vực khoa học chuyên nghiên cứu phƣơng pháp kỹ thuật đảm bảo an toàn bảo mật truyền tin liên lạc với giả thiết tồn lực thù địch, kẻ muốn ăn cắp thông tin để lợi dụng phá hoại Tên gọi tiếng Anh, Cryptology đƣợc dẫn giải nguồn gốc từ tiếng Hy lạp, kryptos nghĩa “che dấu”, logos nghĩa “từ ngữ” Cụ thể hơn, nhà nghiên cứu lĩnh vực quan tâm xây dựng phân tích (để điểm yếu) giao thức mật mã (cryptographic protocols), tức phƣơng thức giao dịch có đảm bảo mục tiêu an toàn cho bên tham gia (với giả thiết môi trƣờng có kẻ đối địch, phá hoại) Ngành Mật mã (cryptology) thƣờng đƣợc quan niệm nhƣ kết hợp lĩnh vực con: Sinh, chế mã mật (cryptography): nghiên cứu kỹ thuật toán học nhằm cung cấp công cụ hay dịch vụ đảm bảo an toàn thông tin Phá giải mã (cryptanalysis): nghiên cứu kỹ thuật toán học phục vụ phân tích phá mật mã tạo đoạn mã giản nhằm đánh lừa bên Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ nhận tin Hai lĩnh vực tồn nhƣ hai mặt đối lập, “đấu tranh để phát triển” thể thống ngành khoa học mật mã (cryptology) Tuy nhiên, lĩnh vực thứ hai (cryptanalysis) đƣợc phổ biến quảng đại nên dần dần, cách hiểu chung đánh đồng hai thuật ngữ cryptography cryptology Theo thói quen chung này, hai thuật ngữ dùng thay Thậm chí cryptography thuật ngữ ƣa dùng, phổ biến sách phổ biến khoa học, cryptology xuất phạm vi hẹp nhà nghiên cứu học thuật túy Mặc dù trƣớc hầu nhƣ mật mã ứng dụng phổ biến giới hẹp, nhƣng với phát triển vũ bão công nghệ thông tin đặc biệt phổ biến mạng internet, giao dịch có sử dụng mật mã trở nên phổ biến Chẳng hạn, ví dụ điển hình giao dịch ngân hàng trực tuyến hầu hết đƣợc thực qua mật mã Ngày nay, kiến thức ngành mật mã cần thiết cho quan phủ, khối doanh nghiệp cho cá nhân Một cách khái quát, ta thấy mật mã có ứng dụng nhƣ sau: - Với phủ: bảo vệ truyền tin mật quân ngoại giao, bảo vệ thông tin lĩnh vực tầm cỡ lợi ích quốc gia - Trong hoạt động kinh tế: bảo vệ thông tin nhạy cảm giao dịch nhƣ hồ sơ pháp lý hay y tế, giao dịch tài hay đánh giá tín dụng… - Với cá nhân: bảo vệ thông tin nhạy cảm, riêng tƣ liên lạc với giới qua giao dịch sử dụng máy tính kết nối mạng 1.1.1.3 Khái niệm hệ mật mã Hệ mật mã đƣợc định nghĩa năm (P, C, K, E, D), đó: P tập hữu hạn các rõ C tập hữu hạn mã K tập hữu hạn khoá Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ E tập hàm lập mã D tập hàm giải mã Với k ek K, có hàm lập mã E, ek : P → C hàm giải mã dk D, dk: C → P cho dk(ek(x)) = x , x P Hình 1.1: Quá trình mã hoá giải mã - Một thông báo thƣờng đƣợc tổ chức dƣới dạng rõ - Ngƣời gửi làm nhiệm vụ mã hóa rõ, kết thu đƣợc gọi mã - Bản mã đƣợc gửi đƣờng truyền tới ngƣời nhận, sau nhận đƣợc mã ngƣời nhận giải mã để tìm hiểu nội dung - Dễ dàng thấy đƣợc công việc sử dụng định nghĩa hệ mật mã: ek (P) = C dk (C) = P 1.1.1.4 Những yêu cầu hệ mật mã Một hệ mật mã phải cung cấp mức cao độ tin cậy, tính toàn vẹn, không từ chối xác thực - Độ tin cậy: cung cấp bí mật cho thông báo liệu đƣợc lƣu việc che dấu thông tin sử dụng kĩ thuật mã hóa - Tính toàn vẹn: cung cấp bảo đảm với tất bên thông báo lại không thay đổi từ tạo đến ngƣời nhận mở - Tính không từ chối: cung cấp cách xác nhận tài liệu đến từ họ cố gằng từ chối - Tính xác thực: cung cấp hai dịch vụ: Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ + Đầu tiên nhận dạng nguồn gốc thông báo cung cấp vài bảo đảm thật + Thứ hai kiểm tra đặc tính ngƣời thống sau tiếp tục kiểm tra đặc tính họ trƣờng hợp cố gắng kết nối giả dạng ngƣời sử dụng 1.1.2 Khái quát hệ mã công khai 1.1.2.1 Mã đối xứng mã công khai Mã đối xứng đƣợc dùng để hệ mã mà biết khóa lập mã ta tìm đƣợc khóa giải mã cách đễ dàng Đồng thời việc giải mã đòi hỏi thời gian nhƣ việc lập mã Các hệ mã thuộc loại có thời gian lập mã giải mã tƣơng đối nhanh hệ mã đối xứng thƣờng đƣợc sử dụng để mã hóa liệu lớn Nhƣng hệ mã đối xứng yêu cầu phải giữ bí mật hoàn toàn khóa lập mã Để giải vấn đề phân phối thoả thuận khoá mật mã khoá đối xứng, năm 1976 Diffie Hellman đƣa khái niệm hệ mật mã khoá công khai phƣơng pháp trao đổi công khai để tạo khoá bí mật chung mà tính an toàn đƣợc bảo đảm độ khó toán toán học cụ thể (là toán tính “lôgarit rời rạc”) Hệ mật mã khoá công khai hay đƣợc gọi hệ mật mã phi đối xứng sử dụng cặp khoá, khoá mã hoá gọi khoá công khai (public key) khoá giải mã đƣợc gọi khoá bí mật hay khóa riêng (private key) Trong hệ mật này, khoá mã hoá khác với khoá giải mã Về mặt toán học từ khoá công khai khó tính đƣợc khoá riêng Biết đƣợc khoá không dễ dàng tìm đƣợc khoá Khoá giải mã đƣợc giữ bí mật khoá mã hoá đƣợc công bố công khai Một ngƣời sử dụng khoá công khai để mã hoá tin tức, nhƣng có ngƣời có khoá giải mã có khả xem đƣợc rõ Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 10 Ngƣời gửi A mã hoá thông điệp khóa công khai ngƣời nhận B ngƣời nhận B giải mã thông điệp với khoá riêng tƣơng ứng Quá trình đƣợc mô tả hình 1.2 1.3 Hình 1.2: Mã hoá thông điệp sử dụng khoá công khai P Hình 1.3: Giải mã thông điệp sử dụng khoá riêng ngƣời nhận Có nhiều hệ thống khoá công khai đƣợc triển khai rộng rãi nhƣ hệ RSA, hệ Elgamal sử dụng giao thức trao đổi khoá Diffie-Hellman lên năm gần hệ mã đƣờng cong Elliptic Trong số hệ mật mã hệ RSA hệ đƣợc cộng đồng chuẩn quốc tế công nghiệp chấp nhận rộng rãi việc thực thi mật mã khoá công khai Việc phát minh phƣơng pháp mã công khai tạo “cách mạng” công nghệ an toàn thông tin điện tử Nhƣng thực tiễn triễn khai Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 44 Bây giả sử d = USCLN(Y1-Y2 ,p –1) Và d | ( p –1) d | (Y1-Y2 ) nên suy d | (M1-M2) Ta định nghĩa: M‟ = (M1-M2 )/d; Y‟ = ( Y1-Y2 ) / d; Khi đồng dƣ thức trở thành: M‟ Vì USCLN (Y‟,p‟ ) =1, nên ta tính : p‟ = ( p-1 ) / d R Y‟ ( mod p‟ ) = ( Y‟ ) –1 mod p‟ Khi giá trị R xác định theo modulo p R = M‟ mod p‟ Phƣơng trình cho d giá trị R: R = M‟ + i p‟ mod p, với i Trong giá trị d xác định đƣợc giá trị qua việc kiểm tra điều kiện: X gR ( mod p ) 2.4 HỆ MÃ ĐƢỜNG CONG ELIPTIC 2.4.1 Mở đầu Năm 1976, Diffie Hellman giới thiệu hệ mã hoá khoá công khai mà an toàn dựa độ khó toán DLP Họ đƣa khái niệm hàm cửa sập chiều (TOF) Năm 1985, Lenstra thành công việc sử dụng đƣờng cong elliptic cho số nguyên Kết mang lại khả áp dụng đƣờng cong elliptic hệ mật mã khoá công khai Miller Kobliz giới thiệu hệ mật mã elliptic Họ không phát minh thuật toán nhƣng có đóng góp lớn việc áp dụng elliptic cho hệ khoá công khai Miller đề xuất giao thức trao đổi khoá tựa nhƣ Diffie – Hellman vào năm 1985 (nhanh 20% so với giao thức Diffie - Hellman) Kobliz đƣa thuật toán mã hoá tƣơng tự nhƣ hệ Elgamal Massey – Omura vào năm 1987 Sơ đồ tƣơng tự nhƣ sơ đồ RSA hàm chiều (có cửa sập) dựa đƣờng cong Elliptic đƣợc đƣa năm 1991 Koyama, Maurer, Okamoto Vanstone ( thuật toán tốc độ thực nhanh gấp lần so với RSA) Cùng thời điểm đó, Kaliski chứng minh hàm cửa sập chiều đòi hỏi thời gian hàm mũ để thực Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 45 phé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 đƣợc điều kiện để tránh khỏi công MOV đề xuất ứng dụng thực tế đƣờng cong elliptic cho sơ đồ chữ ký định danh Smart Card Năm 1993, Demytko đƣa thuật toán tƣơng tự nhƣ RSA cho đƣờng cong Elliptic vành Zn vƣợt qua hạn chế phiên trƣớc, Menezes Vanstone đƣa phƣơng pháp thực thi thiết bị cứng cài thiện tính toán elliptic trƣờng hữu hạn Những 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 đƣợc đƣa thành chuẩn RFC Lý thuyết đƣờng cong eliptic đƣợc xác định trƣờng số hữu hạn có địa ứng dụng lĩnh vực mật mã đáng lƣu ý Lý đƣờng cong eliptic trƣờng hữu hạn cung cấp cho sở xây dựng thuật toán dùng thuật toán vét cạn để thám mã nhóm Abel ca nhóm có cấp không lớn Đƣờng cong eliptic tập hợp điểm có tọa độ (x , y) thỏa mãn phƣơng trình có dạng sau đây: y2 + a1xy + a3y = x3 + a2x2 +a4x + a6 Trên trƣờng F biểu diễn phƣơng trình Weiretrass: y2 + a1xy + a3y = x3 + a2x2 +a4x + a6 (*) Xét đƣờng cong E trƣờng nguyên tố hữu hạn Fp (p nguyên tố, p>3 ) với công thức biến đổi nhƣ sau: X→X − a2 a1X a3 , Y→ Y − Khi phƣơng trình Weierstrass có dạng: X3 + aX +b Vậy trƣờng Fp (*) trở thành: Y2 = X3 + aX + b Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 46 Định nghĩa: Giả sử K trƣờng có đặc số khác khác xét đa thức X3 + aX + b(với a, b K) Khi đƣờng cong elliptic trƣờng K: Y2 = X3 + aX + b (1) tập hợp tất điểm (x, y) với x, y K cho (1) nghiệm bội tức 4a3 + 27b2 ≠ mod p với phần tử O - điểm O đƣợc gọi điểm vô hạn Tức đƣờng cong Elliptic tập hợp S: S = { (x, y) : y2 = x3 + ax +b, Với a, b x, y K } {O} K cho trƣớc cho 4a3 + 27b2 ≠ theo mod p Nếu K trƣờng đặc số ta định nghĩa: S = { (x, y) : y-2 + y= x3 + ax +b } {O} (2)  Nếu K trƣờng đặc số ta định nghĩa: S = { (x, y) : y2 = x3 + ax +bx + c } {O} (3) * Tính chất đường cong elliptic: Nếu hai điểm P1 (x1, y1 ) P2 (x2, y2) với x1 ≠ x2 nằm đƣờng đƣờng cong elliptic E, đƣờng thẳng qua hai điểm P P2 cắt điểm P3 ( x3, y3) xác định thông qua P1 P2 nằm đƣờng cong E Tiếp tuyến đƣờng cong điểm P(x, y) đƣờng cong E cắt đƣờng cong elliptic E điểm nằm đƣờng E, điểm xác định đƣợc thông qua P Dựa vào tính chất ngƣời ta nghiên cứu phát khả cho kỹ thuật mã hoá nói chung chứng thực nói riêng, kỹ thuật mã hoá dựa đƣờng cong elliptic Ngƣời ta hệ mã hoá đƣờng cong elliptic có độ bảo mật cao nhiều so với hệ mã hoá công khai khác nhƣ RSA, Elgamal Độ bảo mật dựa độ khó phân tích số nguyên thành thừa số Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 47 nguyên tố nhƣ toán logarit rời rạc, độ dài khoá giảm nhiều lần tốc độ thực nhanh nhiều Chính ta áp dụng kỹ thuật mã hoá đƣờng cong elliptic vào nhiều lĩnh vực khác Các kỹ thuật mã hoá phƣơng pháp đƣờng cong elliptic đƣợc sử dụng hiệu việc xây dựng giải pháp bảo mật thông tin cho thẻ thông minh(Smart Card), thiết bị điện tử có khả tính toán không gian nhớ hạn chế 2.4.2 Các phép toán đƣờng cong Elliptic Giả sử p số nguyên tố >3 Ngƣời ta chứng minh đƣợc phép biến đổi tuyến tính, ta quy phƣơng trình đƣờng cong elliptic dạng Weierstrass nhƣ sau: Y2 = X3 + aX + b Đƣờng cong elliptic Y2 = X3 + aX + b Zp đƣợc định nghĩa tập hợp tất điểm (x, y) Zp Zp thoả mãn phƣơng trình: Y2 = X3 + aX + b (mod p) Cùng với phần tử đặc biệt ký hiệu O phần tử trung hoà Tập hợp đƣợc ký hiệu E 2.4.2.1 Phép cộng Giả sử P= (x1, y1) Q (x2, y2) hai điểm E Nếu x1 = x2 y1 = - y2 ta định nghĩa P + Q = O Ngƣợc lại th ì P + Q = (x3, y3) E x3 = - x1 – x2 , y3 = (x1 – x3 ) –y1, Với = (y2 – y1 ) / (x2 – x1), P ≠ Q( x1 = x2 th ì hệ số góc đƣờng thẳng qua P Q) (*) (3x2 + a) / y1, P = Q ( Số hóa Trung tâm Học liệu đạo hàm đƣờng cong P) (**) http://www.lrc-tnu.edu.vn/ 48 Vậy P ≠ Q tức x1 ≠ x2 y y x3 = x2 x1 y3 = - x1 – x2 y y1 x2 x1 (*) ( x1 – x3) - y1 N ếu P =Q x3 = y3 = 3x1 a y1 x 21 a y1 – 2x2 (**) ( x1 – x3) - y1 R Q P R 2P P -1 P+ Q -2 Hình 2.1: Phép cộng đường cong Elliptic Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 49 Chú ý điểm (x3, y3), (x3, -y3) nằm đƣờng cong E xét mặt hình học, điểm (x1, y1), (x2, y2), (x3, -y3) nằm đƣờng thẳng Ngoài ta định nghĩa thêm: P + O = O + P = P Ví dụ: Xét đƣờng cong elliptic y2 = x3 – 36x Lấy P =(-3, 9), Q = (-2, 8) Hãy tìm P + Q 2P? Với x1 = -3, y1 = 9, x2 = -2 , y2 = Do áp dụng công thức(*) ta có: x3 = (8 9) +3 + = 1+ +2 = y3 = -9 (-3-6) = -9 + (-1)(-9) =0 Vậy P +Q = (6, 0) Bây ta tính 2P áp dụng (**) ta có: x1= -3, y1 = x3 = 25 y3= 35 25 35 Vậy 2P = ( , ) 8 2.4.2.2 Phép nhân Phép nhân số nguyên k với điểm P thuộc đƣờng cong elliptic E điểm Q đƣợc xác định cách cộng k lần điểm P dĩ nhiên Q E: k P = P + P + P……+ P ( k phép cộng điểm P) Vì G điểm thuộc đƣờng cong elliptic E với số nguyên dƣơng k dễ dàng xác định đƣợc điểm Q = k G 2.4.3 Đƣờng cong elliptic trƣờng hữu hạn Xét trƣờng hữu hạn Fq q = pr phần tử trƣờng hữu hạn K Giả sử E đƣờng cong elliptic đƣợc định nghĩa Fq Nếu đặc số trƣờng p=2 p=3 E đƣợc cho phƣơng trình (2) (3) Dễ dàng thấy đƣờng cong nhƣ có nhiều 2p+1 điểm Fq, nghĩa điểm vô với 2q cặp (x, y) x, y Fq thoả mãn (1) (2) (3) (nếu p=2 3), tức với q giá trị x có tồn nhiều giá trị y thoả mãn (1) Nhƣng có nửa phần F*q Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 50 có bậc ngƣời ta kỳ vọng (nếu x3 + ax +b phần tử ngẫu nhiên trƣờng ) có khoảng nửa số điểm Fq Chính xác hơn, giả sử đặc trƣng toàn phƣơng Fq (lấy (0) = 0) Ví dụ: Nếu q = p số nguyên tố (x) =( x ) ký hiệu Legedre p Symbol) Do tất trƣờng hợp số nghiệm y phƣơng trình y2 = u + Fq thoả mãn (u) Vì số nghiệm phƣơng trình điểm vô hạn là: 1+ (1+ (x3 + ax + b)) = q + + x Fq (1+ (x3 + ax + b)) (6) x Fq Ta hy vọng ( x3 + ax + b) +1 -1 Lấy tổng ngẫu nhiên: tung đồng xu q lần Ngƣời ta thấy rằng: (x3 + ax + b) bị chặn q định lý Hasses đƣợc phát triển x Fq nhƣ sau: Định lý: Gọi N số điểm đƣờng cong elliptic đƣợc định nghĩa Fq Khi | N−(q + 1) | ≤ q 2.4.4 Lôgarit rời rạc đƣờng cong Elliptic( Discrete logarithm on Elliptic) Định nghĩa: Nếu E đƣờng cong Elliptic trƣờng Fq B điểm E Khi toán logarit rời rạc E (theo số B) toán, cho trƣớc điểm P E, tìm số nguyên x Z cho xB = P (nếu số x nhƣ tồn tại) Hầu nhƣ toán tính lôgarit rời rạc đƣờng cong elliptic khó toán lôgarit rời rạc trƣờng hữu hạn Các kỹ thuật mạnh đƣợc phát triển để sử dụng trƣờng hữu hạn dƣờng nhƣ giá trị đƣờng cong elliptic Kết đặc biệt trƣờng hợp trƣờng có đặc số Nhƣ đƣợc chứng tỏ Odlzko có số phƣơng Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 51 pháp đặc biệt để giải toán logarit rời rạc G *2r với chúng dễ dàng tính đƣợc lôgarit rời rạc phá vỡ đƣợc hệ mật mã, trừ trƣờng hợp số r đƣợc chọn đủ lớn Dƣờng nhƣ hệ thống tƣơng tự sử dụng đƣờng cong elliptic đƣợc định nghĩa trƣờng F2r đảm bảo an toàn kể trƣờng hợp giá trị r bé 2.4.5 Đếm số điểm đƣờng cong elliptic trƣờng Fq Việc xây dựng hệ mật mã đƣờng cong elliptic bao gồm việc lựa chọn đƣờng cong E thích hợp điểm G E gọi điểm sở Xét trƣờng K Fq Định lý Hasse N số điểm E trƣờng Fq (trƣờng hữu hạn q phần tử) Khi đó: |N – (q +1)| ≤ q Từ định lý Hasse suy #E(Fq) = q +1 – t |t| ≤ q Định nghĩa Bậc điểm G thuộc E số k dƣơng bé cho kG = O; k = #E(Fq) G điểm sở E Ví dụ: Giả sử E đƣờng cong eliptic y2 = x3+x+6 Z11 Trƣớc hết ta xác định điểm E Để làm điều đó, xét giá trị x x3+x+6 mod 11 giải phƣơng trình y2 Z11, tính x3+ax+b (mod p) y Với giá trị x cho trƣớc, ta kiểm tra xem liệu z = x3+x+6 mod 11 có phải thặng dƣ bình phƣơng hay không cách áp dụng tiêu chuẩn Euler Ta có công thức tƣờng minh để tính bậc hai thặng dƣ bình phƣơng theo mô đun p với số nguyên tố p (mod 4) Áp dụng công thức ta có bậc hai thặng dƣ bình phƣơng z là: z(11+1)/4 mod 11 = z3 mod 11 Kết phép tính nhƣ sau: Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 52 x X3+x+6 mod 11 Có QR(11)? Không Không Có 4,7 3 Có 5,6 Không Có Không Có 2,9 Có 3,8 Không 10 Có y 2,9 2,9 Nhƣ E có tất 13 điểm Vì nhóm cấp nguyên tố nhóm cyclic nên ta có E đẳng cấu với Z13 điểm (kkhoong phải điểm vô cực) phần tử sinh nhóm E Giả sử ta lấy phần tử sinh = (2, 7), ta tính lũy thừa (chính bội phép nhóm phép cộng) Để tính = (2, 7) + (2, 7), trƣớc hết ta tính: = (3 22+1)(2 7)-1 mod 11 = 3-1 mod 11 = mod 11 = Sau ta có : x3 = 82-2-2 mod 11 = Và y3 = (8(2-5)-7) mod 11 = Bởi = (5,2) Tiếp theo = + Ta có: = (5, 2) + (2, 7), ta lại tính = (7-2)(2-5)-1 mod 11= 8-1 mod 11 = mod 11 = Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 53 Khi ta có x3 = 22-5-2 mod 11 = Và y3 = 2(5-8) - mod 11 = Bởi = (8,3) Tiếp tục theo cách tƣơng tự ta tính đƣợc bội lại nhƣ sau: = (2,7) = (10,2) = (7,2) 10 = (8,8) Do = (5,2) = (8,3) = (3,6) = (3,5) = (7,9) = (10,9) 11 = (5,9) 12 = (2,4) = (2,7) thực phần tử nguyên thủy Một đƣờng cong E xác định Zp (p số nguyên tố >3) có khoảng p điểm Chính xác thí số điểm E(kí hiệu E) thỏa mãn bất đẳng thức định lý Hasse Bây giả sử tính đƣợc E Vấn đề ta phải tìm nhóm cyclic E cho toán logarit khó Bởi ta phải phải biết vài điều cấu trúc nhóm E Định lý: Cho E đƣờng cong elliptic Zp với p số nguyên tố lớn Khi tồn số nguyên n1 n2 cho E đẳng cấu Zn1 Zn2 Ngoài n2 | n1 n2 | (p-1) Do tính đƣợc số n1 n2 ta biết E có nhóm cyclic đẳng cấu với Zn1 dùng E để thiết lập hệ mật Elgamal Chú ý n2 = E nhóm cyclic Cũng E số nguyên tố tích số nguyên tố khác E nhóm cyclic có số nhóm cyclic Xét ví dụ phép mã Elgamal sử dụng đƣờng cong elliptic Ví dụ: Giả sử = (2,7) số mũ bí mật ngƣời nhận a = Khi đó: Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 54 = = (8, 3) Phép mã hóa thực nhƣ sau: eK(x,k) = (k(2, 7),x+k(8, 3)) Trong x E k 12 Còn phép giải mã thực nhƣ sau: dK(y1,y2) = y2-3y1 Giả sử ngƣời gửi muốn mã tin x = (9, 8) (là điểm E) Nếu chọn giá trị ngẫu nhiên k = tính: y1 = 2(2, 7) = (5, 2) Và y2 = (9, 8) + 2(8, 3) = (9, 8) + (7, 9) = (9, 2) Bởi vậy, y = ((5, 2), (9, 2)) Bây ngƣời nhận nhận đƣợc mã y họ giải mã nhƣ sau: x = (9,2) - 3(5,2) = (9,2) - (3,5) = (9,2) + (3,6) = (9, 8) Đây rõ Trên thực tế có số khó khăn áp dụng hệ mật Elgamal đƣờng cong elliptic Hệ thống đƣợc áp dụng Zp có hệ số mở rộng tin 2.Việc áp dụng đƣờng cong Elliptic có thừa số mở rộng khoảng lần Điều co xấp xỉ p rõ, nhƣng mã lại gồm phần tử trƣờng Một trở ngại không gian rõ chứa điểm đƣờng cong E phƣơng pháp xác định tƣờng minh điểm E Menezes Vanstone tìm phƣơng án hiệu Theo phƣơng án đƣờng cong Elliptic đƣợc dùng để che dấu, rõ mã hợp lệ cặp đƣợc tùy ý phần tử khác không trƣờng (không đòi hỏi phải điểm E ) Nếu trở lại đƣờng cong y2 = x3 + x + Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 55 Z11 ta thấy hệ mật Menezes Vanstone có 100 rõ hệ ban đầu có 13 rõ Hệ mật đường cong Elliptic Menezes Vanstone Giả sử E đƣờng cong Elliptic Zp ( p số nguyên tố lớn 3) cho E chứa nhóm cyclic H, toán logarit rời rạc toán khó giải Giải sử P = Zp* Zp* , C = E Zp* K = { (E, ,a, ) : Trong E Các giá trị , K = { (E, ,a, ) : =a Zp* ,ta định nghĩa: =a } đƣợc công khai a đƣợc giữ kín.Đối với }, với số ngẫu nhiên bí mật k Z| H | x = (x1,x2) Zp* Zp*, ta xác định: eK (x,k) = (y0,y1,y2) y0 = k (c1,c2) = k y1 = c1x1 mod p y2 = c2y2 mod p Với mã y = (y0,y1,y2), ta định nghĩa dK (y) = (y1c1-1 mod p, y2c2-1 mod p) a y0 = (c1,c2) Ví dụ: Giả sử = (5, 2), số mũ bí mật ngƣời nhận Khi = = (5, 9) Giả sử ngƣời gửi muốn mã hóa rõ sau: x = (x1,x2) = (9, 2) chọn ngẫu nhiên k = Khi họ tính y0 = k = 2(5, 2) = (10,9) k = 2(5, 9) = (10, 2) Nhƣ c1 = 10 c2 = Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 56 Tiếp theo ngƣời gửi tính y1 = c1x1 mod p = 10 mod 11 = Và y2 = c2x2 mod p = 2 mod 11 = Bản mã ngƣời gửi cho ngƣời nhận là: y = (y0,y1,y2) = ((10, 9), 2, 4) Khi ngƣời nhận nhận đƣợc mã họ tính toán nhƣ sau: (c1,c2) = (a y0) = 3(10,9) = (10,2) Và sau tính: x = (y1c1-1 mod p, y2c2-1 mod p) = ((2 10-1 mod 11, 2-1 mod 11) = (2 10 mod 11, mod 11) = (9,2) Đây rõ Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 57 KẾT LUẬN Luận văn đạt đƣợc số kết sau: - Nghiên cứu trình bày cách có hệ thống hệ mật mã, hệ mã công khai - Nghiên cứu toán logarit rời rạc, số thuật toán giải toán lgarit rời rạc - Nghiên cứu ứng dụng toán logarit rời rạc hệ mã RSA, hệ mã Elgamal, chữ kí Elgamal hệ mật đƣờng cong Elliptic, trình bày số ví dụ cụ thể để minh họa Do nhiều hạn chế điều kiện làm việc, hoàn cảnh gia đình sức khỏe nên kết thu đƣợc trình bày hệ thống kiến thức theo cấu trúc trên, phần ứng dụng chƣa đƣợc phong phú đầy đủ Tuy đề tài hay, cần nhiều sở toán học có ý nghĩa ứng dụng thực tế cao phát triển đƣợc đầy đủ Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 58 TÀI LIỆU THAM KHẢO Phan Đình Diệu (2002), Lý thuyết mật mã an toàn thông tin, Nxb Đại Học Quốc Gia, Hà Nội Phạm Huy Điển, Hà Huy Khoái (2003), Mã hoá thông tin: Cơ sở toán học ứng dụng, Nxb Đại Học Quốc Gia, Hà Nội Trịnh Nhật Tiến, Giáo trình an toàn liệu, Khoa công nghệ thông tin, Nxb Đại Học Quốc Gia, Hà Nội Lƣu Hồng Dũng (2014), Chương 5: Lôgarit rời rạc, http://docview.tài liệu.vn/tài liệu/2014, ngày 4/4/2014 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ [...]... tâm Học liệu http://www.lrc-tnu.edu.vn/ 12 1.1.2.2 Ƣu và nhƣợc điểm của hệ mật mã khoá công khai Ƣu điểm rõ ràng nhất của hệ mật mã khóa công khai là bảo mật Một văn bản đƣợc mã hóa bằng khóa công khai của một ngƣời sử dụng thì chỉ có thể giải mã với khóa bí mật của ngƣời đó Hệ mật mã khoá công khai dựa vào các giả thiết liên quan đến các bài toán khó nên đa số các hệ mật mã này đều có tốc độ dịch mã. .. hệ mã đối xứng sẽ đƣợc mã hoá sử dụng mật mã khoá công khai Phƣơng pháp này rất khả thi trong việc mã và giải mã những văn bản có kích thƣớc lớn nhƣ đƣợc mô tả trong hình 1.5 và 1.6 Hình 1.4: Mã hoá thông điệp sử dụng khoá bí mật S để mã thông điệp và khoá công khai P để mã khoá bí mật S Hình 1.5: Giải mã thông điệp sử dụng khoá bí mật S để giải mã thông điệp và khoá riêng P để giải mã khoá bí mật. .. giữa bài toán thừa số nguyên và phép nhân các số nguyên Chúng đều có thể dùng để xây dựng cấu trúc cho một hệ mật mã Ngƣời ta thƣờng chọn nhóm G trong mật mã lôgarit rời rạc là nhóm cyclic (Zp)* chẳng hạn nhƣ mật mã Elgamal, trao đổi khóa Diffie – Hellman và chữ kí số Elgamal Ngoài ra còn có mật mã sử dụng lôgarit rời rạc trong nhóm con cyclic của các đƣờng elliptic trên trƣờng hữu hạn gọi là mật mã đƣờng... hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 14 Ta nhận thấy, trong khi bài toán lũy thừa là dễ dàng, thì bài toán logarit rời rạc là rất khó Đây cũng là một cơ sở của mã công khai 1.2.2 Ứng dụng trong mật mã Lôgarit rời rạc là bài toán khó (chƣa biết một thuật toán hiệu quả nào), trong khi bài toán tính luỹ thừa của một số lại không khó (có thể sử dụng thuật toán bình phƣơng và nhân) Tình trạng... hệ mật mã khoá công khai Nhiều thủ tục xác thực đã đƣợc nghiên cứu và sử dụng nhƣ Kerberos, X.509… Một ƣu điểm nữa của các hệ mật mã khoá công khai là các ứng dụng của nó trong lĩnh vực chữ ký số, cùng với các kết quả về hàm băm, thủ tục ký để bảo đảm tính toàn vẹn của một văn bản đƣợc giải quyết 1.2 BÀI TOÁN LOGARIT RỜI RẠC Lôgarit rời rạc là sự tiếp nối của phép tính lôgarit trên trƣờng số thực vào... Đại Học Quốc Gia, 2 Lý thuyết mật mã và an toàn thông tin - Phan Đình Diệu (2002) - NXB Đại Học Quốc Gia Hà Nội, 3 Giáo trình an toàn dữ liệu – Khoa công nghệ thông tin - Trịnh Nhật Tiến - NXB Đại Học Quốc Gia Hà Nội 2.1 HỆ MÃ RSA 2.1.1 Giới thiệu Trong mật mã học, RSA là một thuật toán mật mã hóa khóa công khai Đây là thuật toán đầu tiên phù hợp với việc tạo ra chữ ký điện tử đồng thời với việc mã. .. một dạng tấn công mới lên RSA: Khi kẻ tấn công nắm đủ thông tin về phần cứng thực hiện mã hóa và xác định đƣợc thời gian giải mã đối với một số bản mã lựa chọn thì có thể nhanh chóng tìm ra khóa d Dạng tấn công này có thể áp dụng đối với hệ thống chữ ký điện tử sử dụng RSA 2.2 HỆ MÃ ELGAMAL 2.2.1 Giới thiệu Hệ mã Elgamal là một hệ mật mã công khai Hệ mã này dựa trên bài toán lôgarit rời rạc Tính an... dịch mã không nhanh lắm Chính nhƣợc điểm này làm cho các hệ mật mã khoá công khai khó đƣợc dùng một cách độc lập Một vấn đề nữa nảy sinh khi sử dụng các hệ mật mã khóa công khai là việc xác thực mà trong mô hình hệ mật mã đối xứng không đặt ra Do các khoá mã công khai đƣợc công bố một cách công khai trên mạng cho nên việc đảm bảo rằng “khoá đƣợc công bố có đúng là của đối tƣợng cần liên lạc hay không?”... Một số thuật toán lôgarit rời rạc 1.2.3.1 Phƣơng pháp đơn định Cho G là nhóm cyclic, a, b G Bài toán tìm kiếm nghiệm của phƣơng trình ax = b gọi là bài toán lôgarit rời rạc trong nhóm G Nghiệm x của phƣơng trình gọi là lôgarit rời rạc cơ số a của b, ký hiệu là logab, nếu nhƣ cơ số a cố định và nếu nhƣ nghiệm của phƣơng trình tồn tại thì loga b Z G , nếu nhƣ |G|< ∞ Bài toán lôgarit rời rạc có vai trò... thấy tốc độ mã hoá khối dữ liệu lớn bằng các thuật toán mã hoá công khai chậm hơn rất nhiều so với hệ mã hoá đối xứng Ví dụ, để đạt đƣợc độ an toàn nhƣ các hệ mã đối xứng mạnh cùng thời, RSA đòi hỏi thời gian cho việc mã hoá một văn bản lâu hơn gấp hàng ngàn lần Do đó, thay bằng việc mã hoá văn bản có kích thƣớc lớn bằng lƣợc đồ khoá công khai thì văn bản này sẽ đƣợc mã hoá bằng một hệ mã đối xứng ... điểm hệ mật mã khoá công khai Ƣu điểm rõ ràng hệ mật mã khóa công khai bảo mật Một văn đƣợc mã hóa khóa công khai ngƣời sử dụng giải mã với khóa bí mật ngƣời Hệ mật mã khoá công khai dựa vào giả... quát mật mã, khái niệm hệ mật mã, hệ mã công khai, toán lôgarit rời rạc số thuật toán lôgarit rời rạc Những kiến thức trình bày chƣơng đƣợc trích dẫn tài liệu sau: Mã hoá thông tin: Cơ sở toán học. .. Khái quát mật mã, mã công khai ……………………… 1.2 Bài toán lôgarit rời rạc ………………………………………… 11 CHƢƠNG II ỨNG DỤNG LÔGARIT RỜI RẠC TRONG MỘT SỐ HỆ MÃ CÔNG KHAI …………………………………………………………… 22 2.1 Hệ mã RSA………………………………………………………

Ngày đăng: 18/12/2015, 16:02

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