Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 113 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
113
Dung lượng
2,26 MB
Nội dung
ỦY BAN NHÂN DÂN TP.HCM SỞ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI HỌC QUỐC GIA TP HCM TRƢỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN BÁO CÁO NGHIỆM THU NGHIÊN CỨU TẤN CƠNG RSA VÀ XÂY DỰNG CƠNG CỤ PHÂN TÍCH RSA THÀNH PHỐ HỒ CHÍ MINH THÁNG 5/ 2015 ỦY BAN NHÂN DÂN TP.HCM SỞ KHOA HỌC VÀ CÔNG NGHỆ BÁO CÁO NGHIỆM THU (Đã chỉnh sửa theo góp ý Hội đồng nghiệm thu) NGHIÊN CỨU TẤN CÔNG RSA VÀ XÂY DỰNG CƠNG CỤ PHÂN TÍCH RSA CHỦ NHIỆM ĐỀ TÀI Trần Đan Thư CƠ QUAN QUẢN LÝ (Ký tên/đóng dấu xác nhận) CƠ QUAN CHỦ TRÌ (Ký tên/đóng dấu xác nhận) THÀNH PHỐ HỒ CHÍ MINH THÁNG 5/ 2015 TÓM TẮT NỘI DUNG NGHIÊN CỨU Hệ mã RSA, đặt theo tên Ron Rivest, Adi Shamir Len Adleman, nhà tốn học phát minh nó, công bố lần vào tháng năm 1977 Từ đến nay, RSA hệ mã sử dụng phổ biến việc bảo vệ tính riêng tư đảm bảo tính xác thực liệu số Hiện nay, RSA triển khai nhiều hệ thống thương mại; web servers nhằm đảm bảo truy cập web an ninh; đảm bảo tính riêng tư tính xác thực email; đảm bảo an toàn phiên giao dịch đăng nhập từ xa; RSA trọng tâm hệ thống tốn dùng thẻ tín dụng, thẻ thơng minh Bên cạnh tính bảo mật cao, RSA dùng phổ biến phần tính đơn giản, dễ hiểu Thực vậy, gọi N tích số nguyên tố lớn kích thước, N = pq Đặt e d số nguyên thỏa ed mod (N) = 1, ký hiệu ed (mod (N)), với (N) = (p – 1)(q – 1) Cặp (N, e) công bố gọi khóa cơng khai; d giữ bí mật gọi khóa cá nhân hay khóa bí mật Để mã hóa thơng điệp M, M N, ta tính C = Me mod N; để giải mã, ta tính M = Cd mod N Rõ ràng, bỏ qua việc chứng minh tính đắn, (mà thực khơng q phức tạp), cơng thức mã hóa giải mã dễ hiểu, với người dùng phổ thơng, gần cần sử dụng phép số học phổ thông Trong trường hợp dùng khóa cá nhân để tính lũy thừa modulo, S = Md mod N, có khóa cơng khai xác thực M = Se mod N thơng điệp người cấp khóa cơng khai Đây ngun tắc tạo chữ ký điện tử Sau thời gian nghiên cứu hệ khóa công khai, đặc biệt hệ mã RSA, tập hợp hệ thống hóa kết tuyển tập Trước hết, biến thể RSA khảo sát giới thiệu “Các biến thể RSA” Mục đích thơng qua biến thể, tìm đặc trưng cốt lõi RSA nhằm tiến tới xây dựng mơ hình tốn học tổng quát cho RSA Từ kết việc nghiên cứu biến thể RSA, mơ hình tổng qt giới thiệu “Hệ thống hóa RSA” Mơ hình thứ sử dụng tính chất liên quan đến phép chia Euclid Mơ hình bao q biến thể RSA xây dựng vành Euclid Tuy nhiên, cấu trúc đại số khác, khó để xây dựng phép chia, đó, khơng thể áp vào thể mô hình RSA Euclid Mơ hình thứ xây dựng cấu trúc đại số lỏng hơn, cấu trúc vị nhóm, mà gần bao quát biến thể RSA công bố Để hiểu RSA sử dụng phổ biến việc bảo vệ thông tin, nghiên cứu thám mã thực Trước hết, biết, tính an tồn RSA dựa độ khó tốn phân tích thừa số Thực ra, tốn khơng phải khó khơng có cách giải mà khó chỗ thời gian giải khơng khả thi Các thuật tốn phân tích thừa i số khảo sát “Thám mã RSA – tốn phân tích thừa số” Các kết lý thuyết nghiên cứu nhằm dẫn đến thuật toán đại thuật toán sàng lưới, sử dụng kết mạnh tốn học tốn phân tích, đồng thời tận dụng sức mạnh phần cứng cách triển khai phân tích hệ thống máy tính song song Ngay sử dụng sức mạnh song song máy tính, tốn phân tích khó phân tích số lớn Một nguyên tắc đơn giản máy tính phân tích số có kích thước n người thiết kế RSA cần tăng kích thước số cần phân tích lơn n sử dụng an tồn Tuy nhiên, kích thước n lớn sử dụng khóa khơng kỹ càng, RSA bị công Một công giới thiệu tổng qt hóa “Phân tích khóa yếu” mà tập trung công dàn công liên phân số Trong công này, chặn khóa bí mật an tồn thiết lập Điều đặc biệt hữu ích cho việc thiết kế RSA an tồn Bên cạnh nghiên cứu mơ thám mã RSA, việc nghiên cứu hệ mã đề cập Trước hết, hệ mã dựa tốn lơ-ga-rít rời rạc giới thiệu “Hệ mã cơng khai dựa 2-nhóm đơn sinh” sử dụng khái niệm đặc trưng lơ-ga-rít (logarithmic signature) mà dùng để xây dựng hệ mã cơng khai có cấu trúc tốn học rõ ràng an tồn, hiệu chọn nhóm thích hợp Một hệ mã khác xây dựng “RSA không tất định vành Bergman” Hệ mã giới thiệu cấu trúc vành Bergman mở rộng RSA thành hệ mã không tĩnh, nghĩa từ rõ, lần mã hóa khác cho mã khác Để hỗ trợ xây dựng RSA an toàn, hỗ trợ nghiên cứu mã công khai, công cụ công RSA cổ điển thực Trước hết công cụ cơng phân tích thừa số giới thiệu “Kỹ thuật phân tích thừa số tính tốn song song” Tấn cơng khóa yếu, tiến tới cơng hồn tồn RSA cung cấp cơng cụ thám mã dùng dàn “Công cụ công dàn” mà gần thành cơng tuyệt đối khóa bí mật có kích thước nhỏ hẳn ¼ kích thước modulus N Khi phục hồi khóa bí mật, thuật toán heuristic sử dụng để phân tích thừa số biết thêm thơng tin khóa bí mật d NGUYỄN ĐÌNH THÚC – TRẦN ĐAN THƯ Nhóm nghiên cứu Mơ hình Cấu trúc rời rạc CSM-group@fit ii SUMMARY OF RESEARCH CONTENT RSA cryptosystem, named after Ron Rivest, Adi Shamir and Len Adleman, the three mathematicians invented RSA, was first published in August 1977 Since then, the RSA is the most popular cryptosystem to protect data privacy and authenticity Currently, RSAs are the heart of many commercial systems; web services to ensure security web access, to ensure the privacy and authenticity of the email; to ensure the safety in the login session remotely RSA is also the focus of the payment system using credit cards, smart cards Besides high security, RSA is widely used because of its simplicity and understandable Indeed, let N be the product of two large primes of the same size, N = pq Let e and d be integers such that ed mod (N) = 1, denoted by ed (mod (N)), where (N) = (p – 1)(q – 1) The pair (N, e) is published and called the public-key ; d is kept secret and known as the private key or secret key To encrypt a message M, M N, compute C = Me mod N ; and to decrypt, compute M = Cd mod N Clearly, ignoring the correctness proof (which really is not too complicated), the encryption and decryption is very easy to understand, even for ordinary users, because just the basic operations are used If the private key used for modular exponentiation, S = Md mod N, then anyone with the public key can authenticate whether M = Se mod N is message of public key owner This is the principle of creating electronic signatures We have worked on the public key system, particularly RSA cryptosystem, and systematize the results in these proceedings First of all, the variant of RSA will be considered and introduced in "The variant of the RSA" The aim is through these variants to find out the characteristics of RSAs, so as to build a generic mathematical model for RSA From the results of the study of the variants of the RSA, generic models will be introduced in "RSA system" The first model uses the properties related to the Euclid division This model covers RSA's variants built on the Euclid division rings However, other algebraic structures, it is difficult to have a division, and therefore, can not apply this model The second model is built on the looser algebraic structure, the monoid, which nearly covers known variations of RSA To understand why RSA is still widely used in the protection of information, RSA cryptanalysis have been done First of all, because the security of RSA relies on the difficulty of the factorization problem Actually, how to solve this problem is not difficult but to get a solution in the polynomial time is not feasible The factorization algorithms are presented in "RSA cryptanalisys - the factorization problem" The theoritical results lead to modern algorithms, called lattice sieves, which exploit power of hardware deploying algorithms on parallel systems Even if using the power of parallel computers, the factorization problem is still difficult when analysed numbers are large A simple rule which is applied to design RSA is if iii integers of n bits are factored, we should use larger integers However, even when the size n is large, if using carelessly, RSA can also be broken One of the attacks will be introduced and generalized in the "Analysis of weak keys" which focuses on lattice and continued fractions attacks This is very useful for the design of secure RSA Besides research on models as well as on RSA cryptanalysis, how to build new cryptosystem is also mentioned First, a code based on the discrete logarithmic problem introduced in "Public-key cryptosystems based on the 2-cyclic group" using the concept of logarithmic signature Other cryptosystem is also proposed in "A non-deterministic RSA based on Bergman ring" This system exploits algebraic properties of Bergman ring to expand the RSA to a random cryptosystem To support deploying secure RSAs, as well as supporting research on public key cryptosystems, RSA attack tools are implemented Firstly tool of factorization are presented in "Technical factorization on parallel computing" Weak key attack tools are implemented and introduced in "Lattice attack tools" which are almost absolute success when the secret keys are smaller than a quarter of the size the modulus N Once having recovered secret key, an algorithm heuristic will be used to factorization problem NGUYỄN ĐÌNH THÚC – TRẦN ĐAN THƯ Concrete Structure and Models-group CSM-group@fit iv MỤC LỤC TÓM TẮT NỘI DUNG NGHIÊN CỨU _ i SUMMARY OF RESEARCH CONTENT _ iii MỤC LỤC v PHẦN MỞ ĐẦU vii Chương NGHIÊN CỨU TẤN CÔNG RSA VÀ XÂY DỰNG CÔNG CỤ PHÂN TÍCH RSA 1 Mở đầu _ Nội dung nghiên cứu Mục tiêu đề tài _ Nội dung báo cáo _ Các kết đề tài 5.1 Kết lý thuyết 5.2 Kết thực nghiệm 5.3 Các kết khác _ Những người thực Chương CÁC BIẾN THỂ CỦA RSA _ Hê ̣ mã hóa RSA gố c _ 1.1 Mô tả hệ mã _ 1.1 Nhận xét hệ mã Các biến thể RSA 10 2.1 Hệ mã hóa RSA vành các ma trận _ 10 2.2 Hệ mã hóa RSA nhóm đường cong elliptic _ 10 2.3 Hệ mã hóa RSA vành thương các đa thức _ 12 2.4 Hệ mã hóa RSA vành thương cá c số nguyên Gauss _ 13 Chương HỆ THỐNG HÓA RSA _ 14 RSA vành thương của vành Euclid _ 14 1.1 Mô hình hệ mã hóa RSA vành Euclid 𝑿 - Euclid-RSA 16 1.2 Biểu diễn các hệ mã tựa-RSA đã biế t theo Euclid-RSA _ 16 1.3 Nhận xét về mô hin ̀ h Euclid-RSA 17 Mô hình tổ ng quát cho RSA – G-RSA 18 2.1 Mô hình G-RSA _ 18 2.2 Biểu diễn hệ mã tựa RSA theo G-RSA 19 Chương MỘT BIẾN THỂ MỚI CỦA RSA 23 Vành Bergman 23 Xây dựng biế n thể cho RSA dựa vành Bergman _ 24 2.1 Xây dự ng nửa nhóm sở 24 2.2 Mô hình hệ mã 26 2.3 So sánh với hệ mã RSA gố c _ 26 Nhâ ̣n xét về ̣ mã RSA vành Bergman 27 v Chương KHÁI NIỆM GIẢ NGHỊCH ĐẢO VÀ ỨNG DỤNG XÂY DỰNG HỆ MÃ CÔNG KHAI _ 29 Mở đầu 29 Các khái niệm toán học _ 29 Ma-trận giả khả nghịch trường hữu hạn 𝕫p _ 30 Các giao thức đề xuất 31 4.1 Giao thức thiết lập khóa _ 32 4.2 Giao thức cập nhật khóa 33 4.3 Phân tích độ an tồn _ 34 Chương BÀI TỐN PHÂN TÍCH THỪA SỐ 35 Các phương pháp phân tích thừa số 35 1.1 Phương pháp chia thử 35 1.2 Phương pháp Rho - 𝝆 35 1.3 Phương pháp 𝒑 − 𝟏 _ 36 1.4 Phương pháp đường cong Elliptic (ECM – Elliptic Curve Method) 38 Các phương pháp sàng _ 38 2.1 Phương pháp Fermat _ 40 2.2 Phương pháp sàng bậc hai 41 2.3 Phương pháp sàng trường số 44 Chương TẤN CÔNG DÀN 52 Lý thuyết dàn _ 52 1.1 Định nghĩa dàn _ 52 1.2 Rút gọn sở dàn _ 52 Kỹ thuật Coppersmith _ 58 Bài tốn ngược kích cỡ nhỏ _ 60 3.1 Giới thiệu 60 3.2 Cơ sở lý thuyết 61 3.3 Tấn công RSA trường hợp tổng quát _ 65 Phụ lục A SONG KỸ THUẬT PHÂN TÍCH THỪA SỐ TRÊN NỀN TÍNH TOÁN SONG 66 Giới thiệu 66 Sàng lưới 72 Tăng tốc sàng dựa tính toán song song _ 74 Phụ lục B Hệ thống cung cấp dịch vụ RSA web _ 75 Phụ lục C Phân tích n biết khoá cá nhân 83 Phụ lục D Biên dịch cấu hình hệ thống MSIEVE, GGNFS _ 86 TÀI LIỆU THAM KHẢO 89 QUYẾT TỐN KINH PHÍ GIAI ĐOẠN I _ a DỰ TRÙ KINH PHÍ GIAI ĐOẠN II _b PHỤ LỤC SẢN PHẨM - ẤN PHẨM KHOA HỌC c PHỤ LỤC SẢN PHẨM – ĐÀO TẠO d vi PHẦN MỞ ĐẦU Tên đề tài/dự án: NGHIÊN CỨU TẤN CÔNG RSA VÀ XÂY DỰNG CÔNG CỤ PHÂN TÍCH RSA Chủ nhiệm đề tài/dự án: Trần Đan Thư – Nguyễn Đình Thúc Cơ quan chủ trì: Trường Đại học Khoa học Tự nhiên, ĐHQG Tp HCM Thời gian thực hiện: tháng 9/2013 – tháng 5/ 2015 Kinh phí đƣợc duyệt: 400 triệu đồng Kinh phí cấp: 240 triệu đồng theo TB số: số 97 ngày 20 tháng 07 năm 2013 Mục tiêu: Đề tài tập trung nghiên cứu nội dung sau: (1) RSA biến thể Mục tiêu nội dung nghiên cứu hệ thống hóa RSA biến thể RSA nhằm trả lời câu hỏi chính: RSA vành số nguyên, ta gọi RSA-truyền thống, sử dụng chưa có biến thể thay RSA-truyền thống? (2) Thám mã RSA Cài đặt công cụ công RSA Nghiên cứu trường hợp yếu RSA Nghiên cứu giúp hình thành tiêu chí đánh giá hệ RSA khơng an tồn từ khuyến cáo người dùng tránh trường hợp yếu hiển nhiên thiết kế ứng dụng RSA Nghiên cứu lý thuyết công dàn (lattice), kỹ thuật cơng khác, từ xây dựng cơng cụ đánh giá độ an tồn hệ thống RSA thành phần (khóa cá nhân hoặc/và khóa cơng khai), ứng dụng (chữ ký, thiết lập khóa,… dùng RSA) Nghiên cứu thuật tốn đại cơng tốn phân tích thừa số nguyên tố, đặc biệt phương pháp QS (Quadratic Sieve) NFS (Number Field Sieve) Trong đề tài này, nghiên cứu kỹ thuật cải thiện tốc độ đề xuất thực phân bố mơi trường tính tốn lưới vii (3) Phát triển hệ mã cơng khai an tồn Qua việc nghiên cứu biến thể RSA phương pháp thám mã RSA, câu hỏi đặt cho nội dung phát triển hệ mã cơng khai khơng dựa tốn phân tích thừa số toán log rời rạc? Trong đề tài này, chúng tơi nghiên cứu tốn khó liên quan đến tốn tổng phân tích mà trận, qua bước đầu xây dựng hệ mã Nội dung (1) Nội dung 1: RSA biến thể (1.1) Hệ thống hóa RSA Bên cạnh RSA truyền thống (RSA vành số nguyên số nguyên tố phân biệt), rải rác có cơng trình RSA với cấu trúc đại số khác vành số nguyên Công việc cần thực nghiên cứu cấu trúc hay/và tính chất đại số RSA truyền thống, từ đó, xây dựng mơ hình tốn học tổng qt biểu diễn RSA nhiều dạng biến thể Chúng tơi dự kiến công việc tập trung khảo sát sâu tác động nhóm (group-action) tập hợp có cấu trúc đại số đặc biệt vành số nguyên, vành đa thức, vành số nguyên Gauss (1.2) Khảo sát mơ hình thể mơ hình tổng qt Từ mơ hình tốn học tổng qt RSA, xem xét với điều kiện nào, biến thể RSA cấu trúc đại số khác công bố thể RSA tổng quát? Cụ thể, công việc xác định điều kiện biểu diễn RSA số nguyên Gauss, RSA vành đa thức, RSA nhóm tuyến tính, biến thể khác tìm thấy q trình nghiên cứu (1.3) Phân tích độ an tồn thể mơ hình tổng qt Việc tìm mơ hình tốn học RSA tổng qt đặc biệt quan trọng để trả lời câu hỏi nêu: RSA truyền thống sử dụng rộng rãi? Bằng cách cố định kích thước khóa, cơng việc cần làm khảo sát độ an tồn RSA biến thể để trả lời câu hỏi đặt (2) Nội dung 2: Thám mã RSA cài đặt công cụ công RSA (2.1) Các phương pháp thám mã viii Phụ lục D Biên dịch cấu hình hệ thống MSIEVE, GGNFS Hệ thống chạy môi trường Linux 32 core với username là: dat Tạo thư mục chứa chương trình cần thiết $mkdir /home/dat/tuan Cài zlib Tại thư mục /home/dat/tuan $wget http://download.savannah.gnu.org/releases/lzip/lzip-1.15.tar.gz $tar -xvzf lzip-1.15.tar.gz $mv lzip-1.15 lzip $cd lzip-1.15 $ /configure prefix=/home/dat/tuan $make Cài gmp Tại thư mục /home/dat/tuan $wget https://gmplib.org/download/gmp/gmp-6.0.0a.tar.lz $lzip/lzip -d gmp-6.0.0a.tar.lz $tar xvf gmp-6.0.0a.tar $mv gmp-6.0.0 gmp $cd gmp $./configure prefix=/home/dat/tuan $make $make install Cài ECM-GMP Tại thư mục /home/dat/tuan $wget https://gforge.inria.fr/frs/download.php/32159/ecm-6.4.4.tar.gz $./configure prefix=/home/dat/tuan CPPFLAGS="-I/home/dat/tuan/include L/home/dat/tuan/lib" $make $make install GGNFS Tại thư mục /home/dat/tuan $svn checkout svn://svn.code.sf.net/p/ggnfs/code/trunk ggnfs-code $cd ggnfs-code $vi include/ggnfs.h // Nếu Linux 64 bit thì comment đoạn code sau /* #if defined (_MSC_VER) #define GGNFS_x86_32_MSCASM_MMX #elif defined( GNUC ) && defined( x86_64 ) #define GGNFS_x86_64_ATTASM #define HAVE_SSIMD #elif defined( GNUC ) && defined( i386 ) #define GGNFS_x86_32_ATTASM_MMX #endif 86 */ $vi Makefile LOCALINC=-I/usr/local/include -I/home/dat/tuan/include LOCALLIB=-L/usr/local/lib -L/home/dat/tuan/lib $vi src/lasieve4/gmp-aux.c Delete cài đặt hàm void mpz_mul_si(mpz_t x, mpz_t y, long int z) $make nocona MSIEVE Tại thư mục /home/dat/tuan $wget http://sourceforge.net/projects/msieve/files/latest/download $tar -xvzf msieve152.tar.gz $cd msieve-1.52/ $vi Makefile CFLAGS = $(OPT_FLAGS) $(MACHINE_FLAGS) $(WARN_FLAGS) \ -DMSIEVE_SVN_VERSION="\"$(SVN_VERSION)\"" \ -I -Iinclude -Ignfs -Ignfs/poly -Ignfs/poly/stage1 -I/home/dat/tuan/include L/home/dat/tuan/lib $make all Chạy thử với GGNFS MSIEVE Tại thư mục /home/dat/tuan $mkdir RUN_1 $cp ggnfs-code/bin/* RUN_1 $cp msieve-1.52/msieve RUN_1 $cd RUN_1 $wget http://gladman.plushost.co.uk/oldsite/computing/factmsieve.76.zip $unzip factmsieve.76.zip $vi factmsieve.py # Set binary directory paths GGNFS_PATH = ' /' MSIEVE_PATH = ' /' # Set the number of CPU cores and threads NUM_CORES = 32 THREADS_PER_CORE = Chay thử phân tích số 100 chữ số: 2881039827457895971881627053137530734638790825166127496066674320241571 446494762386620442953820735453 $mkdir example_100 $cd example_100/ $vi example_100.n n: 2881039827457895971881627053137530734638790825166127496066674320241571 446494762386620442953820735453 $python /factmsieve.py example_100 Kết lưu file: Divisors found: r1=618162834186865969389336374155487198277265679 (pp45) 87 r2=4660648728983566373964395375209529291596595400646068307 (pp55) Polynomial selection time: 0.08 hours Total sieving time: 0.19 hours Total relation processing time: 0.02 hours Matrix solve time: 0.04 hours time per square root: 0.02 hours total time: 0.35 hours Chay thử phân tích số 116 chữ số : 2881039827457895971881627053137530734638790826777215427742045582936772 7874418576587532260284689400315679039537126153 $mkdir example_116 $cd example_116/ $vi example_116.n n: 2881039827457895971881627053137530734638790826777215427742045582936772 7874418576587532260284689400315679039537126153 $python /factmsieve.py example_116 Kết lưu file: Divisors found: r1=4660648728983566373964395375209529291596595400646068307 (pp55) r2=6181628341868659693893363741554871982772656793456789012345779 (pp61) Polynomial selection time: 1.12 hours Total sieving time: 1.08 hours Total relation processing time: 0.06 hours Matrix solve time: 0.17 hours time per square root: 0.10 hours total time: 2.53 hours 88 TÀI LIỆU THAM KHẢO [Varadharajan] Varadharajan V Odoni R Extension of RSA cryptosystems to matrix rings Cryptologia, 9:2, 140-153, 1985 [Demytko] N Demytko A new elliptic curve based analogue of RSA EUROCRYPT‟93, LNCS 765 40-49 (1993) [El-Kassar] El-Kassar A.N., R Hatary và Y Awad Modified RSA in the domains of Gausian integers and polynomials over finite fields Proc Intl Conf Computer Science, Software Engineering, Information Technology, e-Business and Applications (CSITeA‟04), Cairo, Egypt [Boneh] D Boneh and G Durfee, Cryptanalysis of RSA with private key $d$ less than $n^0.292$, Eurocrypt'99 [Christophe] Coupe Christophe Coupe, Phong Nguyen, and Jacques Stern, The effectiveness of lattice attacks against low-exponent RSA, Public Key Cryptography '99 [Wiener] M Wiener, Cryptanalysis of short RSA secret exponents, IEEE Transactions on Information Theory, 36:553-558, 1990 [Hoffstein] Jeffrey Hoffstein, Jill Pipher, and Joseph H Silverman An introduction to Mathematical Cryptography Springer, 2008 [Rivest] R L Rivest, A Shamir, and L M Adleman A Method for Obtaining Digital Signatures and Public Key Cryptosystems Communications of the ACM 21 (1978), no 2, 120-126 [Schoof] R Schoof Elliptic Curves Over Finite Fields and the Computation of Square Roots mod p Mathematics of Computation, Vol 44, No 170, pp 483-494 [Rosen] Kenneth H Rosen Elliptic Curves, Number Theory and Cryptography, Second Edition, University of Maryland, USA, 2008 [Ty] Lương Khánh Tý Tố i ưu hóa giải thuâ ̣t xử lý số ho ̣c ̣ mã hóa RSA Luâ ̣n văn Tha ̣c Sỹ, Đa ̣i ho ̣c Đà Nẵng, 2012 [Trung] Nguyễn Ng ọc Trung Các Thuật tốn tối ưu hóa bảo mật thông tin Luâ ̣n văn Tha ̣c Sỹ, Đa ̣i ho ̣c Thái Nguyên, 2008 89 [Binh] Đỗ Thanh Bình Hê ̣ mâ ̣t mã RSA và ứng du ̣ng lươ ̣c đồ chữ ký số xác thực thông tin Luâ ̣n văn Tha ̣c Sỹ, Viê ̣n Công Nghê ̣ Thông Tin Hà Nô ̣i, 2011 [Dung] Phạm Tuấn Dũng Nghiên cứu phương pháp bảo mâ ̣t cho chế đăng nhâ ̣p mô ̣t lầ n ứng du ̣ng ̣ phân tán Luâ ̣n văn Tha ̣c Sỹ , Học Viện Bưu Chính Viễn Thơng , 2011 [Nhien] Văn Thi ̣Nhiên Khảo sát các chữ ký số dực ̣ RSA Luâ ̣n văn Tha ̣c Sỹ , Đa ̣i Học Công Nghệ, 2007 [Anh] Bùi Tuấn Anh Các phương pháp công RSA Luâ ̣n văn Tha ̣c Sỹ , Đa ̣i Ho ̣c Công Nghê ̣- ĐHQG Hà Nơ ̣i, 2009 [KhanhThucThu] Bùi Dỗn Khanh, Nguyễn Đình Thúc, Trần Đan Thư, Cơ sở lý thuyết số an tồn – bảo mật thơng tin, NXB Giáo Dục, 2007 [KhanhThucHai] Bùi Dỗn Khanh, Nguyễn Đình Thúc, Hồng Đức Hải, Giáo trình mã hóa thơng tin, NXB Lao Động Xã Hội, 2004 [TranDinhLong] Trần Đình Long Các tính chất đại số RSA khả mở rộng RSA Luận Án TS Khoa học Máy tính, ĐHKHTN, 2015 [Bergman] Bergman, G.M Examples in PI ring theory Israel J Math 18, 257-277 (1974) [Climent] Joan-Josep Climent, Pedro R Navarro and Leandro Tortosa On the arithmetic of the endomorphisms ring End(ℤ𝑝 × ℤ𝑝 ) AAECC (2011) [Conway] J.H Conway and N.J.A Sloane, Sphere packings, lattices and groups, Springer-Verlag, 1998, Third Edition [Jeffrey] Jeffrey Hofstein, Jill Pipher, and Joseph H Silverman, An Introduction to Mathematical Cryptography, Springer Science + Business Media, 2008 [Boneh] D Boneh and G Durfee, Cryptanalysis of RSA with private key d less than n0.292, Eurocrypt'99 [Rosen] Kenneth H Rosen Elliptic Curves, Number Theory and Cryptography, Second Edition, University of Maryland, USA, 2008 [KhanhThucThu] Bùi Doãn Khanh, Nguyễn Đình Thúc, Trần Đan Thư, Cơ sở lý thuyết số an tồn – bảo mật thơng tin, NXB Giáo Dục, 2007 90 [KhanhThucHai] Bùi Doãn Khanh, Nguyễn Đình Thúc, Hồng Đức Hải, Giáo trình mã hóa thơng tin, NXB Lao Động Xã Hội, 2004 [Conway] J.H Conway and N.J.A Sloane, Sphere packings, lattices and groups, Springer-Verlag, 1998, Third Edition [Jeffrey] Jeffrey Hofstein, Jill Pipher, and Joseph H Silverman, An Introduction to Mathematical Cryptography, Springer Science + Business Media, 2008 [Boneh] D Boneh (1999), “Twenty Years of Attacks on the RSA Cryptosystem”, Notices of the ACM, 46(2), pp 203-213 [Briggs] Matthew E Briggs (1998), An Introduction to the General Number Field Sieve, Master Thesis, Faculty of the Virginia Polytechnic Institute and State University, Virginia [Muller] J Buchmann,V Muller (2005), Algorithms for Factoring Integers, Technische Universität Darmstadt, Darmstadt [Contini] S.Contini (1997), Factoring Large Integers with the Self-Initializing Quadratic Sieve, Master Thesis, University of Georgia, Georgia [KleiAokiFrankLensThome] Thorsten Kleinjung, Kazumaro Aoki, Jens Franke, Arjen K Lenstra, Emmanuel Thomé, Joppe W Bos, Pierrick Gaudry, Alexander Kruppa, Peter L Montgomery, Dag Arne Osvik, Herman te Riele, Andrey Timofeev, Paul Zimmermann (2010), “Factorization of a 768-Bit RSA Modulus”, Advances in Cryptology – CRYPTO 2010 , 6223, pp 333-350 [Lenstra] H.W Lenstra Jr (1987), “Factoring integers with elliptic curves”, The Annals of Mathematics, 126(3), pp 649-673 [LenstraLenstra] A.K Lenstra, H.W Lenstra, Jr (1993), The development of the number field sieve, Lecture Notes in Mathematics, Springer Berlin Heidelberg [May] Alexander May (2010), “Using LLL-Reduction for Solving RSA and Factorization Problems”, The LLL Algorithm, Information Security and Cryptography 2010, pp 315-348 [MenezesOorschotVanstone] A Menezes, P.V Oorschot and S.Vanstone (1997), Handbook of Applied Cryptography, CRC Press, Florida 91 [Murphy] B.A Murphy (1999), Polynomial selection for the number field sieve integer factorisation algorithm, PhD Thesis, Australian National University .[Pomerance] C Pomerance (1996), “A tale of two sieves”, Notices of the ACM, 43(12), pp 1473-1485 [Pollard] J M Pollard (1993), “The lattice sieve”, Lecture Notes in Mathematics, 1554, pp 43-49 [SalahDarwishOqeili] Imad Khaled Salah, Abdullah Darwish and Saleh Oqeili (2006), “Mathematical Attacks on RSA Cryptosystem”, Journal of Computer Science, 2(8), pp 665-671 [TilborgJajodia] Henk C.A van Tilborg, Sushil Jajodia (2011), Encyclopedia of Cryptography and Security, Springer [Durfee] G Durfee Cryptanalysis of RSA using Algebraic and Lattice Methods Stanford University, 2002 [Mackes] M Backes Factorization of Univariate Polynomials Saarland University, 2002 [Shoup] V.Shoup A Computational Introduction to Number Theory and Algebra Cambridge University Press, second edition, 2008 [Cppersmith] D Coppersmith Finding Small Solutions to Small Degree Polynomials Cryptography and Lattices, Lecture Notes in Computer Science Volume 2146, 2001, pp 20-31 [Coron] J Coron Finding Small Roots of Bivariate Integer Polynomial Equations Revisited Advances in Cryptology – EUROCRYPT 2004, Lecture Notes in Computer Science Volume 3027, 2004, pp 492-505 [Etienne] Helfer Etienne LLL Lattice Basis Reduction Algorithm 2010 [Anonymous] Anonymous The Sylvester Resultant Moscow – Petersburg, seminar on Low-Dimensional Mathematics [Dingle] Brent M Dingle Calculation Determinants Symbolic And Numeric Matrices Texas A&M University, 2005 [Boucinha ] F Boucinha A Survey of Cryptanalytic Attacks on RSA Instituto Superior Técnico, 2011 92 [Hoeji] M van Hoeji Factoring Polynomials and the Knapsack Problem Journal of Number Theory, Volume 95, Issue 2, August 2002, pp 167-189 [Duncan] R L Duncan Note on the Euclidean Algorithm The Fibonacci Quarterly, v4, n4, August 1966, pp 367-68 [Ber] E R Berlekamp, Factoring Polynomials over Finite Fields, The Bell System Technical Journal, October 1967 [HPS] Jeffrey Hoffstein, Jill Pipher, Joseph H Silverman, An Introduction to Mathematical Cryptography, Springer, 2008 [Joux] Antoine Joux, A One Round Protocol for Tripartite Diffie-Hellman, SpringerVerlag Berlin-Heidelberg 2000 [JK] Antoine Joux, Kim Nguyen, Separating Decision Diffie-Hellman from DiffieHellman in cryptographic groups, Journal of Cryptography, 2007 [Kob] Neal Koblitz, Elliptic Curve Cryptosystems, Mathematics of Computation, Volume 48, 1987 [Mil] V Miller, Uses of Elliptic Curves in Cryptography, Advances in Cryptography, Proceeding of Crypto’85, Lecture Notes in Computer Science, 218 (1986), Springer-Verlag, 417-426 [MOV] Alfred J Menezes, Tatsuaki Okamoto, Scott Vanstone, Reducing Elliptic Curve Logarithms to Logarithms in a Finite Fields, ACM, 1991 [MV] Alfred J Menezes, Scott A Vanstone, A Note on Cyclic Groups, Finite Fields, and the Discrete Logarithm Problem [Scho1] R.Schoof, Nonsingular Plane Cubic Curves over Finite Fields, Journal of Combinatorial Theory, A 46 (1987), 183-211 [Scho2] R.Schoof, Elliptic Curves over Finite Fields and The Computation of Square Root Mod 𝑝, Mathematics of Computation, 44(170): 483-494, 1985 [ST] Pavol Svaba, Tran Van Trung, Public Key Cryptosystem MST3: Cryptanalysis and realization, J Math Cryptol (2010), 271-315 [STW] Pavol Svaba, Tran Van Trung, Paul Wolf, Logarithmic Signatures for Abelian Groups and Their Factorization, Tatra Mt Math Publ 57 (2013), 21-33 93 [Wa] Lawrence C Washington, Elliptic Curves: Number Theory and Cryptography, 2nd edition, Chapman & Hall/CRC, 2008 [Mil] V Miller, Uses of Elliptic Curves in Cryptography, Advances in Cryptography, Proceeding of Crypto’85, Lecture Notes in Computer Science, 218 (1986), Springer-Verlag, 417-426 [MOV] Alfred J Menezes, Tatsuaki Okamoto, Scott Vanstone, Reducing Elliptic Curve Logarithms to Logarithms in a Finite Fields, ACM, 1991 [MV] Alfred J Menezes, Scott A Vanstone, A Note on Cyclic Groups, Finite Fields, and the Discrete Logarithm Problem [Scho1] R.Schoof, Nonsingular Plane Cubic Curves over Finite Fields, Journal of Combinatorial Theory, A 46 (1987), 183-211 [Scho2] R.Schoof, Elliptic Curves over Finite Fields and The Computation of Square Root Mod 𝑝, Mathematics of Computation, 44(170): 483-494, 1985 [ST] Pavol Svaba, Tran Van Trung, Public Key Cryptosystem MST3: Cryptanalysis and realization, J Math Cryptol (2010), 271-315 [STW] Pavol Svaba, Tran Van Trung, Paul Wolf, Logarithmic Signatures for Abelian Groups and Their Factorization, Tatra Mt Math Publ 57 (2013), 21-33 [Wa] Lawrence C Washington, Elliptic Curves: Number Theory and Cryptography, 2nd edition, Chapman & Hall/CRC, 2008 THAM KHẢO [Boneh] D Boneh (1999), “Twenty Years of Attacks on the RSA Cryptosystem”, Notices of the ACM, 46(2), pp 203-213 [Briggs] Matthew E Briggs (1998), An Introduction to the General Number Field Sieve, Master Thesis, Faculty of the Virginia Polytechnic Institute and State University, Virginia [BuchmannMuller] J Buchmann,V Muller (2005), Algorithms for Factoring Integers, Technische Universität Darmstadt, Darmstadt [Contini] S.Contini (1997), Factoring Large Integers with the Self-Initializing Quadratic Sieve, Master Thesis, University of Georgia, Georgia [KALTB] Thorsten Kleinjung, Kazumaro Aoki, Jens Franke, Arjen K Lenstra, Emmanuel Thomé, Joppe W Bos, Pierrick Gaudry, Alexander Kruppa, Peter L Montgomery, Dag Arne Osvik, Herman te Riele, Andrey Timofeev, Paul Zimmermann (2010), “Factorization of a 768-Bit RSA Modulus”, Advances in Cryptology – CRYPTO 2010 , 6223, pp 333-350 94 [Lenstra] H.W Lenstra Jr (1987), “Factoring integers with elliptic curves”, The Annals of Mathematics, 126(3), pp 649-673 [LL] A.K Lenstra, H.W Lenstra, Jr (1993), The development of the number field sieve, Lecture Notes in Mathematics, Springer Berlin Heidelberg [May] Alexander May (2010), “Using LLL-Reduction for Solving RSA and Factorization Problems”, The LLL Algorithm, Information Security and Cryptography 2010, pp 315-348 [MOV] A Menezes, P.V Oorschot and S.Vanstone (1997), Handbook of Applied Cryptography, CRC Press, Florida [Morphy] B.A Murphy (1999), Polynomial selection for the number field sieve integer factorisation algorithm, PhD Thesis, Australian National University .[Pomerance] C Pomerance (1996), “A tale of two sieves”, Notices of the ACM, 43(12), pp 1473-1485 [Pollar] J M Pollard (1993), “The lattice sieve”, Lecture Notes in Mathematics, 1554, pp 43-49 [SDO] Imad Khaled Salah, Abdullah Darwish and Saleh Oqeili (2006), “Mathematical Attacks on RSA Cryptosystem”, Journal of Computer Science, 2(8), pp 665-671 [TJ] Henk C.A van Tilborg, Sushil Jajodia (2011), Encyclopedia of Cryptography and Security, Springer [KTT] Bùi Doãn Khanh, Nguyễn Đình Thúc,Trần Đan Thư Cơ sở lí thuyết số an tồn-bảo mật thơng tin NXB Giáo Dục ;2007; [KTH] Bùi Dỗn Khanh,Nguyễn Đình Thúc,Hồng Đức Hải Mã hố thông tin: lý thuyết ứng dụng NXB Lao Động Xã Hội, 2004; [ZC] Kaiyong Zhao and Xiaowen Chu GPUMP: a Multiple-Precision Integer Library for GPUs 2010 10th IEEE International Conference on Computer and Information Technology (CIT 2010);2010,pp 1165-1166 [Pollar] Pollard, J M (1975) A Monte Carlo method for factorization, BIT Numerical Mathematics 15 (3): 331–334 [Dung] Tô Anh Dũng Nghiên cứu hệ mật mã với số mũ giải mã lớn ứng dụng cho chữ ký số, luận văn thạc sĩ, Học Viện Cơng Nghệ Bưu Chính Viễn Thơng(2013) (http://dlib.ptit.edu.vn/bitstream/123456789/1048/1/TTLV%20To%20Danh%20Dung pdf) [Lai] Trần Duy Lai Phân tích RSA modulus 768-bit Tạp chí an tồn thơng tin,2010 (http://antoanthongtin.vn/Detail.aspx?CatID=b30679c6-ff8f-416f-a7b190921f26aea3&NewsID=2292be9b-5f11-4c7b-99d6-4266534f6310) 95 [GMP] GMP Library Website (http://gmplib.org/) [TTL] Nguyen, Thuc D., Than Duc Nguyen, and Long D Tran Attacks on low private exponent RSA: an experimental study Computational Science and Its Applications (ICCSA), 2013 13th International Conference on IEEE, 2013 Factoring n give d (http://modular.math.washington.edu/edu/2007/spring/ent/enthtml/node45.html) 96 QUYẾT TỐN KINH PHÍ GIAI ĐOẠN I Đề tài: NGHIÊN CỨU TẤN CÔNG RSA VÀ XÂY DỰNG CƠNG CỤ PHÂN TÍCH RSA Chủ nhiệm: Trần Đan Thư - Nguyễn Đình Thúc Cơ quan chủ trì: Trường Đại học Khoa học Tự nhiên, ĐHQG Tp HCM Thời gian đăng ký hợp đồng: từ tháng 9/2013 đến tháng 3/2015 (gia hạn đến 5/2015) Thời gian thực giai đoạn 1: từ tháng 9/2013 đến tháng 9/2014 Tổng kinh phí duyệt: 400.000.000 đồng (Bốn trăm triệu đồng) Kinh phí cấp giai đoạn 1: 240.000.000 đồng (Hai trăm bốn mươi triệu đồng) (Theo thông báo số: 97 ngày 20 tháng 07 năm 2013) ĐVT: 1000 đồng TT Nội dung Kinh phí Trong Ngân Nguồn sách khác I II Kinh phí cấp năm Kinh phí tốn năm Cơng chất xám Cơng th khốn Ngun, nhiên, vật liệu, dụng cụ, phụ tùng, văn phòng phẩm Xét duyệt Hội nghị, hội thảo Chi phí điều hành a 240.000 240.000 21.000 177.000 250 240.000 240.000 21.000 177.000 250 4.750 20.000 17.000 4.750 20.000 17.000 DỰ TRÙ KINH PHÍ GIAI ĐOẠN II TT 2.1 2.2 2.3 2.4 2.5 ĐVT: 1000 đồng Trong Ngân Nguồn sách khác Nội dung Kinh phí Kinh phí đề nghị cấp giai đoạn II Công chất xám: thù lao chủ nhiệm đề tài Cơng th khốn Nội dung: Xây dựng tốn khó Nội dung: Xây dựng hệ mã Nội dung: Cài đặt, phân tích, thử nghiệm độ an tồn Nội dung: Kiểm định hệ thống hoàn thiện báo cáo Nội dung: Cài đặt trang web thử nghiệm Văn phòng phẩm Xây dựng thuyết minh Nhiệm thu cấp sở Nghiệm thu cấp quản lý 160.000 15.000 160.000 15.000 130.000 30.000 30.000 30.000 130.000 30.000 30.000 30.000 30.000 30.000 10.000 10.000 1.300 2.000 2.700 9.000 1.300 2.000 2.700 9.000 b PHỤ LỤC SẢN PHẨM - ẤN PHẨM KHOA HỌC c PHỤ LỤC SẢN PHẨM – ĐÀO TẠO d ... BAN NHÂN DÂN TP.HCM SỞ KHOA HỌC VÀ CÔNG NGHỆ BÁO CÁO NGHIỆM THU (Đã chỉnh sửa theo góp ý Hội đồng nghiệm thu) NGHIÊN CỨU TẤN CÔNG RSA VÀ XÂY DỰNG CƠNG CỤ PHÂN TÍCH RSA CHỦ NHIỆM ĐỀ TÀI Trần Đan... rộng RSA thành hệ mã không tĩnh, nghĩa từ rõ, lần mã hóa khác cho mã khác Để hỗ trợ xây dựng RSA an toàn, hỗ trợ nghiên cứu mã công khai, công cụ công RSA cổ điển thực Trước hết cơng cụ cơng phân. .. PHẨM – ĐÀO TẠO d vi PHẦN MỞ ĐẦU Tên đề tài/dự án: NGHIÊN CỨU TẤN CÔNG RSA VÀ XÂY DỰNG CÔNG CỤ PHÂN TÍCH RSA Chủ nhiệm đề tài/dự án: Trần Đan Thư – Nguyễn Đình Thúc Cơ quan chủ