Phát triển và xây dựng tham số an toàn cho hệ chữ kí số trên bài toán logarit rời rạc theo modul hợp số

162 72 0
Phát triển và xây dựng tham số an toàn cho hệ chữ kí số trên bài toán logarit rời rạc theo modul hợp số

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

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

Thông tin tài liệu

i LỜI CAM ĐOAN Tôi xin cam đoan luận án tiến sĩ cơng trình khoa học riêng Kết nghiên cứu trung thực, khách quan chưa công bố công trình khoa học người khác Tơi xin cam đoan thông tin, luận cứ, luận chứng mà luận án trích dẫn rõ địa nguồn gốc Hà Nội, ngày 10 tháng 10 năm 2019 Tác giả Lê Văn Tuấn ii LỜI CẢM ƠN Trong trình thực luận án “Phát triển xây dựng tham số an toàn cho hệ chữ ký số toán logarit rời rạc theo modul hợp số” nhận giúp đỡ Đảng ủy, ban Giám đốc Học viện Kỹ thuật Quân sự; quan tâm, giúp đỡ Đảng ủy, ban Giám đốc Học viện Khoa học Quân sự; giúp đỡ tập thể ban lãnh đạo Phòng Sau Đại học Học viện Kỹ thuật Quân sự; giúp đỡ tập thể giảng viên Khoa CNTT Học viện Kỹ thuật Quân sự, nơi sinh hoạt học thuật Tôi xin chân thành cảm ơn giúp đỡ quý báu Tơi xin chân thành cảm ơn TS Lều Đức Tân TS Bùi Thế Truyền, hướng dẫn chuyên môn phương pháp nghiên cứu suốt q trình thực đề tài luận án Tơi xin chân thành cảm ơn giúp đỡ bạn bè, đồng nghiệp học tập công tác Học viện Khoa học Quân Học viện Kỹ thuật Quân sự; đặc biệt động viên, giúp đỡ gia đình, người thân để tơi hồn thành luận án Tác giả iii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN .ii MỤC LỤC .iii DANH MỤC CÁC KÝ HIỆU v BẢNG CHỮ VIẾT TẮT vi DANH MỤC CÁC BẢNG vii DANH MỤC CÁC HÌNH VẼ, ĐỒ THI viii MỞ ĐẦU CHƯƠNG TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU VÀ CƠ SỞ LÝ THUYẾT CỦA LUẬN ÁN 18 1.1 Tổng quan vấn đề nghiên cứu luận án 18 1.1.1 Tổng quan .18 19 20 1.1.4 Vấn đề nghiên cứu luận án .22 1.2 Cơ sở lý thuyết liên quan đến luận án .24 1.2.1 Một số định nghĩa định lý quan trọng 24 1.2.2 Thuật toán độ phức tạp thuật toán 26 1.2.3 Lược đồ chữ ký số khóa cơng khai .32 36 43 1.2.6 Ngưỡng an toàn chuẩn tham số an toàn 47 1.3 Kết luận 50 CHƯƠNG PHÁT TRIỂN LƯỢC ĐỒ CHỮ KÝ SỐ TRÊN VÀNH 51 2.1 Mở đầu .51 2.2 Một số kiến thức bổ trợ 51 2.3 Xây dựng lược đồ chữ ký số sở 55 2.3.1 Đặt vấn đề .55 2.3.2 Xây dựng công thức tổng quát 56 65 2.4.1 Lược đồ chữ ký số dạng .65 2.4.2 Lược đồ chữ ký số dạng .68 2.4.3 Phân tích lược đồ chữ ký đề xuất 70 2.4.4 Một số so sánh điều kiện an toàn cho lược đồ đề xuất 75 2.5 Xây dựng hệ tham số cho lược đồ 79 2.5.1 Số Modulo 80 2.5.2 Xác định phần tử sinh 80 2.5.3 Xác định thành phần bí mật cơng khai .85 2.5.4 Hệ tham số lược đồ 85 1.1.2 Một số lược đồ chữ ký số trường ℤp 1.1.3 Một số lược đồ chữ ký số vành ℤn 1.2.4 Lược đồ chữ ký số trường ℤp 1.2.5 Lược đồ chữ ký số vành ℤn 2.4 Đề xuất lược đồ chữ ký số vành ℤn iv 2.6 Thử nghiệm đánh giá kết .85 2.6.1 Chuẩn bị thử nghiệm .85 2.6.2 Tiến hành thử nghiệm 87 2.6.3 Đánh giá kết 91 2.7 Kết luận 93 CHƯƠNG XÂY DỰNG THAM SỐ AN TOÀN CHO CÁC LƯỢC ĐỒ CHỮ KÝ SỐ ĐỀ XUẤT .94 3.1 Mở đầu .94 3.2 Ngưỡng an toàn 95 3.2.1 Ngưỡng an toàn Lenstra Verheul .95 3.2.2 Ngưỡng an toàn lược đồ chữ ký số đề xuất 97 3.3 Xây dựng hệ tiêu chuẩn tham số an toàn 102 3.3.1 Ý tưởng .102 3.3.2 Xây dựng hệ tiêu chuẩn cho tham số 103 3.4 Sinh tham số cho lược đồ chữ ký số đề xuất 108 3.4.1 Thuật toán 108 3.4.2 Chương trình .122 3.5 Thử nghiệm đánh giá kết 123 3.5.1 Thử nghiệm 123 3.5.2 Đánh giá kết 134 3.6 Kết luận 136 KẾT LUẬN VÀ ĐỀ XUẤT 137 I KẾT LUẬN 137 Về lý thuyết 137 Về thực nghiệm 138 II ĐỀ XUẤT VÀ HƯỚNG NGHIÊN CỨU 138 Đề xuất: .138 Hướng nghiên cứu: 139 DANH MỤC CÁC CÔNG TRÌNH CỦA TÁC GIẢ 140 TÀI LIỆU THAM KHẢO 141 PHỤ LỤC 146 v DANH MỤC CÁC KÝ HIỆU Các tập hợp số: ℕ tập số tự nhiên ℤ Tập số nguyên R Tập số thực P Tập số nguyên tố Ký hiệu lấy phần nguyên: Cho số thực : ⌈x⌉: số nguyên m nhỏ cho m ≥ x ⌊x⌋: số nguyên m lớn cho m ≤ x Ký hiệu liên quan đến lý thuyết chia hết: a.b: số a nhân với số b a|b: a ước b, ngược lại b bội a GCD(a, b): ước số chung lớn a b LMC(a, b): bội số chung nhỏ a b Số nguyên tố bổ trợ: Cho , số nguyên tố p1: ước nguyên tố lớn p – p2: ước nguyên tố lớn p + q1: ước nguyên tố lớn q − q2: ước nguyên tố lớn q + Một số ký hiệu khác: DLPp: Bài toán logarit rời rạc trường ℤp DLPn: Bài toán logarit rời rạc vành ℤn k∈R X: Lẫy ngẫu nhiên phần tử k thuộc tập X x || y: Ký kiệu nối chuỗi x với chuỗi y Secure_strength: Ký hiệu ngưỡng an toàn cho hệ mật L(a): Kích thước số nguyên a tính theo đơn vị bít Ordn(g): Cấp g vành ℤn TLKTTB: Thực lực kinh tế tổ chức tình báo TLTTSMT: Thực lực tính tốn siêu máy tính vi BẢNG CHỮ VIẾT TẮT Các chữ viết tắt Ý nghĩa AN-QP Quốc phòng - An ninh CPLT Chi phí lý thuyết CPTT Chi phí thực tế KT-XH Kinh tế - Xã hội SMT Siêu máy tính TCVN Tiêu chuẩn Việt Nam TLTT Thực lực tính tốn AL Attack Class BO Bit Operator CRT Chinese Remainder Theorem DLP Dicrete Logarithms Problem DP Dificult Problem DSA Digital Signature Algorithm ECM Elliptic Curve Method FIPS Federal Information Processing Standards FP Factorization Problem GCD Great Common Division HP Hard Problem IMY Infeasible number of Mips Years LCM Least comom Multiple NFS Number Field Sieve NIST National Institute of Standards and Technology RSA Ron Rivest, Adi Shamir Len Adleman vii DANH MỤC CÁC BẢNG Bảng 1.1 Thống kê độ phức tạp số phép toán 28 Bảng 1.2 Kết chi phí tính tốn 43 Bảng 1.3 Độ dài số modulo n thời gian sống .49 Bảng 1.4 Một số tiêu chuẩn tham số an toàn FIPS .49 Bảng 1.5 Tiêu chuẩn tham số lược đồ TCVN 7635-2007 50 Bảng 2.1 Bảng thống kê kết phân tích lược đồ đề xuất 73 Bảng 2.2 Thời gian sinh chữ ký xác nhận chữ ký 91 Bảng 3.1 Ngân quỹ dành cho số tổ chức tình báo Mỹ 98 Bảng 3.2 Một số tiêu chuẩn cập nhật năm 2019 107 Bảng 3.3 Ngưỡng an tồn tính theo Lenstra Verheul 125 Bảng 3.4 Ngưỡng an tồn mơi trường KT-XH 126 Bảng 3.5 Ngưỡng an toàn lĩnh vưc AN-QP 127 Bảng 3.6 Thời gian sinh tham số .134 viii DANH MỤC CÁC HÌNH VẼ, ĐỒ THI Hình 2.1 Biểu đồ kết thử nghiệm sinh chữ ký 92 Hình 2.2 Biểu đồ kết thử nghiệm xác nhận chữ ký 92 Hình 3.1 Đồ thị so sánh ngưỡng an toàn 128 Hình 3.2 Biểu đồ ngưỡng an toàn 128 MỞ ĐẦU Lý chọn đề tài Lịch sử nhân loại chứng kiến cách mạng cơng nghiệp lần thứ tư (còn gọi cách mạng công nghệ 4.0), cách mạng tạo những khả hoàn toàn mới, tác động sâu sắc đến mặt, lĩnh vực đời sống xã hội Ở Việt nam, cách mạng công nghệ 4.0 mang đến vô số hội, đồng thời phải đối mặt khơng thách thức, khó khăn, đặc biệt vấn đề an tồn bảo mật thông tin không gian mạng Nhờ đặc tính xử lý nhanh, xác, phạm vi rộng khả lưu trữ lớn, nên dịch vụ điện tử mang lại những lợi ích to lớn, góp phần khơng nhỏ vào phát triển xã hội lồi người vài thập niên qua Tuy nhiên, bên cạnh những mặt tích cực dịch vụ điện tử đem lại, nguy an tồn thơng tin cao Minh chứng những công mạng xuất thời gian gần đây, vụ công mạng mã độc NotPetya vào sáng 27/6/2017[54] nhiều công khác vào webside hàng loạt tập đoàn kinh tế hàng đầu Mỹ năm 2018 gây thiệt hại hàng tỷ USD Ở Việt nam, những vụ an tồn thơng tin nghiêm trọng xảy thời gian qua, tiêu biểu vụ công mạng hãng Hàng không Quốc gia Việt nam vào ngày 29/7/2016[55] nhiều công mạng khác [55], [56], [58] Theo thông tin từ [56], tính riêng năm 2018, thiệt hại virus máy tính gây người dùng Việt Nam lên mức kỷ lục 14.900 tỷ đồng, tương đương 642 triệu USD, nhiều 21% so với mức thiệt hại năm 2017 Vậy an tồn thơng tin cho dịch vụ điện tử khơng vấn đề riêng tổ chức, quốc gia mà trở thành vấn đề chung toàn giới Trước bối cảnh đó, có nhiều giải pháp kết nghiên cứu nhà khoa học ứng dụng lĩnh vững an tồn bảo mật thơng tin, tiêu biểu phát minh mật mã khóa công khai hai tác giả W Diffie M Hellman tạo bước ngoặt lớn ngành mật mã nói chung lĩnh 10 vực an tồn bảo mật thơng tin nói riêng Nhờ phát minh vĩ đại W Diffie M Hellman, hàng loạt dịch vụ an tồn, bảo mật thơng tin đời, tiêu biểu dịch vụ xác thực sử dụng chữ ký số Chữ ký số dạng chữ ký điện tử, có chức xác thực, đảm bảo tính tồn vẹn tính khơng thể chối bỏ bên gửi, nhận tin Sự đời chữ ký số góp phần xây dựng thành cơng Chính phủ Điện tử, Thương mại Điện tử sở cho đời hàng loạt dịch vụ an tồn thơng tin khác mạng Internet Những lược đồ chữ ký số tiêu biểu kể đến, lược đồ chữ ký số RSA[20] có độ an tồn dựa tính khó giải tốn phân tích số, ứng dụng rộng rãi giới có Việt Nam; lược đồ chữ ký số ElGamal biến thể có độ an tồn dựa tính khó giải tốn logarit rời rạc trường hữu hạn ℤp đề cập kết nghiên cứu [13], [17], [18], [27-29], [32],[33], [38], [44], [46-52] Điểm tồn chung lược đồ chữ ký số trường hữu hạn ℤp (lược đồ Elgamal biến thể nó) cơng khai cấp phần tử sinh (chính xác khơng thể che giấu cấp phần tử sinh), đặc điểm khiến cho lược đồ chữ ký phải đối mặt với hai nguy cơ: nguy thứ an tồn tình trùng khóa phiên lộ khóa phiên; nguy thứ hai có khả bị cơng thuật tốn giải toán logarit rời rạc dựa vào cấp phần tử sinh tham số lược đồ chữ ký khơng đạt tiêu chuẩn an tồn, chẳng hạn cơng sử dụng thuật toán Rho Pollard, thuật toán Pohlig Hellman thuật toán Index calculate Hơn nữa, tốc độ sinh chữ ký lược đồ chữ ký trường ℤp chậm nhiều tốc độ sinh chữ ký lược đồ chữ ký loại vành ℤn, phép tốn có chi phí lớn lược đồ chữ ký phép lũy thừa, phép tính phần tử nghịch đảo vành ℤn có chi phí nhỏ nhiều trường ℤp nhờ áp dụng định lý CRT (được chứng minh bổ đề 2.3 luận án, n = p q L(p) =L(q), điều đề cập [10] áp dụng định lý CRT cho 142 [14] Boyd, C (1997), “Digital signature and public key cryptosystem in a prime order subgroup of ℤ∗n” First International Conference on Information and Communications Security, ICICS' 97 (LNCS1334), Springer 1997, pp 346-355 [15] C Meshram (2015), “Discrete Logaríthm and Integer Factorization using IBE” ISSN: 2089-3191, Bulletin of Electrical Engineering and Informatics Vol 4, No 2, pp 160-168 [16] Chik How Tan, Xun Yi and Chee Kheong Siew (2003), “Signature scheme based on composite discrete logarithm”, Fourth International Conference on Information, Communications and Signal Processing, 2003 and the Fourth Pacific Rim Conference on Multimedia Proceedings of the 2003 Joint, pp 1702 - 1706 [17] C P Schnorr (1991), “Efficient signature generation for smartcards”, Journal of Cryptology Vol 4, pp 161 - 174 [18] C Y Lu, W C Yang and C S Laih (2010), “Efficient Modular Exponentiation Resistant to Simple Power Analysis in DSA-Like Systems”, International Conference on Broadband, Wireless Computing, communication and Applications, Fukuoka, pp 401 - 406 [19] D M Gordon (1985), “Strong Primes Are Ease to Find”, Advances in Cryptology - Proceedings of EUROCRYPT 84 (LNCS 209), pp 216 - 223 [20] D R Stinson (2003), Cryptography Theory and Practice, CRC Press, pp 176 [21] Daniel Bleichenbacher (1996), “Generating EIGamal Signatures Without Knowing the Secret Key”, Institute for Theoretical Computer Science CH-8092 Zurich, Switzerland [22] Elaine Barker Miles Smid Dennis Branstad Santosh Chokhani (2013), A Framework for Designing Cryptographic Key Management Systems, NIST Special Publication 800-130 [23] Elaine Barker (2016), “Recommendation for Key Management”, NIST Special Publication 800-57 Part Revision [24] Elaine Barker Allen Roginsky (2019), “Transitioning the Use of Cryptographic Algorithms and Key Lengths”, NIST Special Publication 800-131A Revision [25] FIPS PUB 186-3 (2009), Digital Signature Standard”, National Institute of Standards and Technology [26] FIPS PUB 180-4 (2015), Secure Hash Standard, National Institute of Standards and Technology 143 [27] GOST R 34.10-94 (1994), Produce and check procedures of Electronic Digital Signature based on Asymmetric Cryptographic Algorithm, Russian Federation Standard Information Technology Cryptographic data Security, Government Committee of the Russia for Standards, 1994 [28] H Morita, J.C Schuldt, T Matsuda, G Hanaoka, T Iwata (2015), “On the security of the schnorr signature scheme and DSA against related key attacks”, International Conference on Information Security and Cryptology — CRYPTOLOGY ’15, Springer, 2015, pp 20 – 35 [29] H Zhang, R Li, L Li and Y Dong (2013), “Improved speed Digital Signature Algorithm based on modular inverse”, Proceedings of 2013 2nd International Conference on Measurement, Information and Control, Harbin, pp 706 - 710 [30] H C Williams (1982), “A p + Method of Factoring, Mathematics of computation”, Vol 39, No 159, pp 225 - 234 [31] Jonathan Katz, Yehuda Lindell (2015), Introduction to Modern Cryptography, CRC PRESS Boca Raton London New York Washington, D.C [32] J.-m.Liu, X.-g.Cheng, and X.-m.Wang (2006), “Methods to forge Elgamal signatures and determine secret key”, in Advanced Information Networking and Applications, 2006 AINA 2006 20th International Conferenceon, vol.1 IEEE, pp 859–862 [33] L Xiao-fei, S Xuan-jing and C Hai-peng (2010), “An Improved ElGamal Digital Signature Algorithm Based on Adding a Random Number”, 2010 Second International Conference on Networks Security, Wireless Communications and Trusted Computing, Wuhan, Hubei, pp 236 - 240 [34] M Girault (1991), “An identity-based identification scheme based on discrete logarithms modulo a composite number”, In Advances in Cryptology - Eumcrypt’ SO, Lecture Notes in Computer Science 473, Springer-Verlag, pp 481 - 486 [35] Nigel P Smart (2018), “Algorithms, Key Size and Protocols Report” [36] Okamoto, E (1986), “Proposal for identity-based key distribution systems”, Electronics Letters, 22, pp.1283–1284 [37] Richard Crandall (2005), Carl Pomerance, Prime Numbers, A Computational Perspective, Second Edition, Springer Science + Business Media, Inc [38] Stephen C Pohlig and Martin E Hellman (1979), “An improved algoritm for computing logarithms over GF(p) and its cryptographic significance”, IEEE Transaction Theory IT-24, no 1, pp.106 - 110 144 [39] S K Tripathi and B Gupta (2017), “An efficient digital signature scheme by using integer factorization and discrete logaríthm problem”, International Conference on Advances in Computing, Communications and Informatics (ICACCI), Udupi, pp 1261 - 1266 [40] Shin-Yan Chiou (2016), “Novel Digital Signature Schemes based on Factoring and Discrete Logarithms”, International Journal of Security and Its Applications Vol 10, No.3, pp.295 - 310 [41] S Saryazdi (1990), “An extension to elgamal public key crypto system with A new signature scheme”, in Proceedings of the 1990 Bilkent InterNational Conference on New Trends in Communication, Control, andSignal Processing, North Holland: Elsevier Science Publishers, pp 195 – 198 [42] Sushila Vishnoi, Vishal Shrivastava (2012), “A new Digital Signature Algorithm based on Factorization and Discrete Logarithm problem”, International Journal of Computer Trends and Technology- volume3 Issue 4, 2012 [43] Thomas H.Cormen, CharlesE.Leiserson, RonaldL.Rivest, CliffordStein (2002), Introduction to Algorithms, The Massachusetts Institute of Technology [44] T ElGamal (1985), “A public key cryptosystem and signature scheme based on discrete logarithms”, IEEE Transaction on Information Theory, IT-31(4), pp 469 - 472 [45] Thuy Nguyen Đuc, Giang Nguyen Tien, Son Le Dinh (2017), “ADesign Method of Digital Signature Scheme Based on Discrete Logarithm Problem”, IJCSNS International Journal of Computer Science and Network Security, VOL.17 No.2 [46] T S Ng, S Y Tan and J J Chin (2017), A variant of Schnorr signature scheme with tight security reduction, 2017 International Conference on Information and Communication Technology Convergence (ICTC), Jeju Island, Korea (South), pp 411 - 415 [47] W C Kuo (2007), “On ElGamal Signature Scheme”, Future Generation Communication and Networking (FGCN 2007), Jeju, pp 151 – 153 [48] X.Li, X.Shen and H.Chen (2011), “Elgamal digital signature algorithm of adding a random number”, Journal of Networks,vol.6, no.5, pp 774 – 782 [49] Z Ping, K Yingzhan and J Keke (2012), “Instruction-Cache Attack on DSA Adopting Square-Multiply Method”, 2012 Second International Conference on Instrumentation, Measurement, Computer, Communication and Control, Harbin, pp 905 - 908 145 [50] Z.Ping, W Tao and C Hao (2015), “Research on L3 Cache Timing Attack against DSA Adopting Square-and-Multiply Algorithm”, 2015 Fifth International Conference on Instrumentation and Measurement, Computer, Communication and Control (IMCCC), Qinhuangdao, pp 1390 - 1393 [51] Z M Chen (2005), “An inproved encryption algorithm on ELGamal algorithm”, Computer Applications and Sostware, vol 22, pp 82 - 85 Z Meng, S Wang and S Nu (2010), “A DSA Multi-Signature Protocol and Applying in E-Bank and E-Voting”, 2010 2nd International Conference on E-business and Information System Security, Wuhan, pp.1 - Địa Internet [53] https://www.top500.org [54] http://kaspersky.nts.com.vn/thong-tin-tu-kaspersky-lab-ve-ma-docnotpetya [55] https://wikipedia.org/wiki/Vụ tin tặct công sân bay Việt Nam 2016 [56] https://securitybox.vn/6992/diem-danh-nhung-vu-tan-cong-mang-dangchu-y-nam-2018 [57] https://en.wikipedia.org/wiki/Digital_signature_forgery [58] https://tuoitre.vn/400-tai-khoan-ngan-hang-agribank-bi-hack [59] https://en.wikipedia.org/wiki/United_States_intelligence_budget [60] http://m.bkav.com.vn/ho_tro_khach_hang/-/chi_tiet/601424/tong-ket-anninh-mang-nam-2018-va-du-bao-xu-huong-2019 [61] https://tieuchuanvietnam.co/data/2017/08/289668_tcvn7635-2007.pdf [62] http://.nvlpubs.nist.gov/nistpubs Federal Information Processing Standards Publication 140-2, Security Requirements for Cryptographic Modules, NIST, 2001;/FIPS/NIST.FIPS.140-2.pdf [63] https://en.wikipedia.org/wiki/Economy_of_the_United_States [52] [64] http://www.tailieu.tv/tai-lieu/mot-dang-luoc-do-chu-ky-xay-dung-tren-bai- toan-phan-tich-so-va-bai-toan-khai-can-32047/ [65].https://tailieu.vn/docview/tailieu/2015/20151231/luuhongdung/luoc_do_chu_ [66] ky_so_mu_xay_dung_tren_bai_toan_khai_can_5071.pdf?rand=481984 http://thuvienso.actvn.edu.vn/doc/luoc-do-chu-ky-so-mu-xay-dung-trenbai-toan-khai-can-439992.html [67].http://proceeding.vap.ac.vn/index.php/proceedingvap/article/download/2016 00072/279 146 PHỤ LỤC PHỤ LỤC PHÂN TÍCH HỆ THỐNG Phân tích hệ thống xử lý a Sơ đồ phân cấp chức PHẦN MỀM SINH THAM SỐ CHO LƯỢC ĐỒ CHỮ KÝ Lược đồ 01 Sinh tham số Ký Xác nhận Hình Sơ đồ phân cấp chức b Sơ đồ luồng dữ liệu Người sử dụng Bộ tham số tương ứng Chữ ký T - Tính ngưỡng an tồn Ti(y) + Sinh p, q, n=p.q + Sinh g, cấp m - Yêu cầu tạo tham số an toàn đến năm y>=2018 - Thơng báo cần ký T Phân tích hệ thống liệu Trong luận án, việc sinh tham số, sinh chữ ký xác nhận chữ ký phải xử lí số nguyên lớn Đối với số nguyên lớn, NCS xây dựng hai cấu trúc dữ liệu để biểu diễn,cụ thể là: - Dạng 1: Biểu diễn số nguyên lớn gồm biến sau: + Một mảng a (hoặc trỏ) có kiểu dữ liệu char để lưu trữ số nguyên lớn dạng xâu ký tự Trong đó, tương ứng với phần tử mảng ký tự số nguyên lớn dạng số thập phân + Một biến kiểu dữ liệu bool biểu diễn dấu số lớn Biến có giá trị reject số dương, True số có giá trị âm + Một biến kiểu int biểu diễn độ dài số lớn.(đồng viết hoa hay thường?) Cấu trúc dữ liệu số nguyên lớn biểu diễn sau: STRUCT bigchar 147 { char *a, bool Negative, bool Length } Ví dụ: Cho số nguyên lớn dạng P= "3423126567234235156457" Khi đó, biểu diễn số nguyên lớn sau: bigchar P{ Negative = reject, Length=22 } - Dạng 2: Để tối ưu tốc độ tính tốn khả biểu diễn số nguyên lớn, biểu diễn số nguyên lớn sau: + Một mảng (hoặc trỏ) có kiểu dữ liệu kiểu Unsigned Short (~16bít) để biểu diễn giá trị số nguyên lớn + Một biến kiểu dữ liệu bool biểu diễn dấu số lớn Biến có giá trị reject số dương, True số có giá trị âm + Một biến kiểu int biểu diễn số phần tử biểu diễn giá trị số lớn mảng nói STRUCT bigword { unsigned short *a, bool Negative, bool Length } đó, biểu diễn số nguyên lớn sau: bigword P{ a={18409, 52966, 37989, 37228, 185}, Negative = reject, Length=5 } Chú ý: Do dữ liệu đầu vào người dùng nhập chuỗi số dạng thập phân đó: + Khi chuyển đổi từ chuỗi số dạng thập phân sang số lớn dạng ta cần đưa từ ký tự chuỗi số vào tương ứng phần tử mảng char số lớn bigchar + Đối với việc chuyển đổi chuỗi số dạng thập phân sang số lớn biểu diễn dạng bigword phức tạp dạng a={3,4,2,3,1,2,6,5,6,7,2,3,4,2,3,5,1,5,6,4,5,7}, Ví dụ: Cho số nguyên lớn = "3423126567234235156457" dạng thập phân Khi 148 PHỤ LỤC LƯỢC ĐỒ CHỮ KÝ DSA MẤT AN TỒN TRONG TÌNH HUỐNG TRÙNG KHĨA PHIÊN HOẶC LỘ KHÓA PHIÊN Trong phần này, minh họa cho việc an tồn khóa phiên bị lộ bị trùng tiến hành lược đồ chữ ký DSA 1.Tính khóa bí mật dựa vào lộ khóa phiên a Mẫu thử: Mẫu thử nghiệm cho tình lộ khóa phiên: xét tin T qua hàm băm SHA-512 số M biểu diễn số Hexa sau: M =3971AEAFACECD7413090FEA31626BBD87FAE4ED6E2A20779C84A807 3EF28C Tham số công khai hệ chữ ký là: C5F42EE7533E20F091A54222EBCF527FC34566453032659580C3FEA48A578777CDD p =1469180917202122173541999507692549921080574138793549860441191956 1021567950018782560570629427199092337948852348641237605804908718439831507 8093851004681540460605814874853372989546214337170390108360587476854480178 9274116413819933860093912908101072869211337413753317993412864050382928322 36342895769637396494131073 q =3979452889231639260540737912370900003786469476855543365294476986 803639911231040279428565381288427415847930418565159771051318022805240817 g =9053278685827057756976988076727722596206982277537002166910608980 6880240131706386377836616580327003732240869192904132060717117493417764298 5067168873657619707991437663489552322476983045269137331273297596008648765 6268339602082202285195741196501032848167957833745676789566446915694462198 7431662874043776217859382 Khóa cơng khai y có giá trị là: y =1105238456206283549887852037501363828608769444404701782604208834 5771493920028589151771386248426751873731252254339529682929337484520763966 4677989608173411602099071953484721373224002079909727988519896787802818918 0355428895962968212687165559705315960102810826838836251684175346664366936 48107768075841598880240639 Giả sử chữ ký thông báo M cặp (r,s) sau: r =7264083891757241826055216269060107633013662241999213451941877221 27709400920696400343738171378562432496636899209180508983066516466169822 s =3940985916546895049673574598934101198916401612050657087695928444 46033507837724664920214912168544680474644711059631869619499515722757260 b.Tính khóa bí mật: Tình khóa phiên bị lộ, giả sử giá trị là: −1 k =4987637663661828418178801783040277545044618298927898428934 Áp dụng công thức x = ((s k − z) r ) mod q, dễ ràng tính khóa bí mật sau: =1515706536960118158436760212918977158118403957 16692660678632407 Tính khóa bí mật dựa vào trùng khóa phiên Tình thứ hai hai thông báo khác ký với khóa phiên k (dùng trùng khóa) M=3971AEAFACECD7413090FEA31626BBD87FAE4ED6E2A20779C84A807C 5F42EE7533E20F091A54222EBCF527FC34566453032659580C3FEA48A578777CDD3 EF28C =7264083891757241826055216269060107633013662241999213451941877221 27709400920696400343738171378562432496636899209180508983066516466169822 149 =3940985916546895049673574598934101198916401612050657087695928444 46033507837724664920214912168544680474644711059631869619499515722757260 M’ =F0F4254EC658F022F92EB325D8112D0E684D5B7317DF82555081B8872A 670069FB488B8EC2314B987582EC3DE3463DF3724B0292A202182F3E03ACD5B11F1 A0A =7264083891757241826055216269060107633013662241999213451941877221 27709400920696400343738171378562432496636899209180508983066516466169822 ’ =182569403382259480842518253062187515338800144858549734335451980 6809914334092898064104862416128435100119647866536989290669450291044311978 giá trị = ’= ( ( )) ’ tính qua cơng thức sau: =8647290744768820311419853089049300354293403914064622445365457616 07313943547631226223057718218915815663896171653039222101675706314322572 ( ( ’)) ’ =216115960895798622318938510994714927546739331767523350464434564 3154916949742659154292161131137113872394959915795372878904535884272441866 Áp dụng công thức = −1 ( −1 − ′−1 ′ )( ′−1 − −1)−1 , dễ dàng tính x sau: =151570653696011815843676021291897715811840395716692660678632407 PHỤ LỤC MỘT SỐ KẾT QUẢ THỬ NGHIỆM Lược đồ 01 1.1 Tham số - Đối tượng: KT-XH - Năm áp dụng: 2019 - len(n) = 2048 bit - Security_strength = 117 bit - Sinh số nguyên tố: p=17976931348623159077293051907890247336179769789423065727343008115 7732675805500963132708477322407536020152298403244903110789531049332369904 6559999943781400398258679172913313323548812821969664408140498020772590187 4790616294652072940269837941076230747357831686283196685711850638498904639 3838301081472626701170019 (1024 bit) q=12583851944036211354105136335523173135325838852596146009140105681 0412873063850674192895934125685275214784079715909975350361152838170091635 7449932014476318871563420782544408723601889322394572200682511743817981474 1269664209760942550315910521337339323605514481509873178703360301825825272 6182019971450645764244471 (1024 bit) 75683182579999 (257 bit) 63762498075349 (257 bit) n=p.q=2262190424991770511050041368206896637231087186880083882249124 1799267258597207523625238040988066039424460314105975182696006930547527592 0768830475639421522935300234429337796216867346523383248183491118591050256 5279896166809461035924403724141050947822582026840956625522251124275809654 1776326215799410641261810612619069882355122896717294067035771929959015012 1=2208863799767144512109067877918864889802367647863703938142214003 1=1365720569165824866151872631762061557417471676649057739583735719 150 4073207741917295855511629021210364042038583809118340657301758227968744747 9096873207655246768681389573955837977182835655100556293748995361895734232 9781174088697888570339469023798191441586737864571269220031524252533943592 691169241166189932887932973706428411251714949 (2048 bit) t= 1=30166907258277712145269271006886798631606519267083565688797 8505128931589136272605125282981630180860552907972405734271774775902426999 65603226273201722344651 (514 bit) - Phần tử sinh g: g=10939199530926224361030428276318519730680719598600717269809319194 4626118215260138762388759828513949198252806349656451634889589231725686973 5938378072260920674295068446014096873298690162694083529796345331150774722 4326446877319544619879248701227654123887088711044515080641403464028730823 1273486392578688689845036687083538514740082448012442336695749788141738771 0925455131333125162676915029860183182286727478254500563884770319375987528 5460050411535419814608762698757413790412214113394605679467546648069306553 6179908107664471798251322242358119026204844825027988618949440208833233331 79152585129411293710382888121078772406921 (2047 bit) - Khóa bí mật x: x=61847778290232715991229668678563299495463704124304620256953944762 3345757581826336886895249143004560034571663419795108883434735702048287380 0660333522090017 (511 bit) - Khóa cơng khai y: y=16710197366869596389414993715365084402986076004841417156818545975 6385508402388071628806452556649216358069637707044505789845593546027777469 9892289945987161354205108642674619904006087019690312133396700217619200819 4641095208844166218039165269079731362691236808815440299831614930382108331 4872243634157728650948587530039860246351986364522649202003707575659554061 0862988315410123056241025581854166746177074292438262231067180724645455651 7175264578437399044163061906220301748892685122193951792648776333164536517 6648312457578021877967863211651875371830444980272308075408378509135488939 02475832493173247241874618955680264815581 (2048 bit) - Thời gian sinh: 96.534s 1.2 Sinh chữ ký xác nhận chữ ký - Giá trị băm tập tin m có tên HE_CHU_KY_SO.exe địa C:/Users/ Admin/ Desktop/LUẬN ÁN_7_2019/HECHUKYSO_10082019/EXE M=SHA_512(m)=BF3EA03290BE6800952628DB78748174C0263E8521E8E30D 43DF5E9A11F82780251105CA1C738EB0445B1060E5272C0601438296E3C117CF8E05 873456FE2A90 - Giá trị khóa phiên k: k=11384447729940598829203273824576465855136082559757699215391716542 2678257339020873955289705239841437018876735238133262552150072958352435066 040044958259 (496 bit) - Chữ ký sinh: r=95344752282598933788298194759170325255394637896409783260900495607 9087404359561915727703683781579896262953367697233377204638364399100217375 5592941177836584(512bit) 151 s=20838602463604900247286688272739018036874530572940583287127388801 3759964941705375634626342053164488424854042966222689808943449375601511241 27195604505126901(513bit) - Thời gian sinh chữ ký: 1.579(s) - Xác nhận chữ ký thành công Thời gian xác nhận chữ ký: 3.13(s) Lược đồ CKSD1.2 2.1 Sinh tham số + Đối tượng: AN-QP + Năm áp dụng: 2019 + Len(n) = 2304 bit + Security_strength = 123 bit p=61172327492847069472032393719205726809135813743440799050195397570 9196977960919583217868639381579717923158445068735090465444590083550361506 5033361689021062568606447297148062202675498823110770692220088564171129697 2814760748716485136369259977561543335342129007013201933685058127311073043 485546200955673691695173498275520493843530905432189479585631919 (1152 bit) q=42820629244992948630422675603444008766395069620408559335136778299 6437884572643708252508047567105802546210911548114563325811213058485253054 5523353182314743798024513108003643543717684825056512007739295238476671535 7424255953267365061809582155372617874148707853593817854863259924624954326 329430178605157505019041456090000026398994434069953572144792619 (1152 bit) 1=1884301757735223514072906698839139946883075054307835673864350550 39680854294971 (257 bit) 03444821166387 (257 bit) = =2619437555624493402657599841476825721458150176469303108543080 9106003433781353981158275471151007503100636909296306578244589754764512561 5098824392398422139060666019189388167452955961541957120998057011894057455 4235662719196429284694287700518022626232838698176244785015686516187968708 9458345340246590982396153022132654871022028454271623543120665080277969863 6688692684655849267271249158615168858752367081082117851532661969375748056 8940486591323422457539057131903045845448966481183736277834905684400474400 8672372792923156384034220432769999146529243395061742075729535150943916597 4586723102167912014576836060082299409594203874114431507464166043653992084 6715170154964543607729936542920264715348322005861 (2304 bit) 3197384183726748933640648821105668144949183371862093265920367495331792618 9144431334598768339777 (514 bit) - Phần tử sinh g: g=10928054468601520446779147231547885278366255351344451519097842192 3804085588658843949881523555343469168912638985623831386583126036278987835 4475270313674880233412657974474319506379230034067959426587310593157429607 1981026143001017087372878656108570938123206950289264506015831437609322266 6355161221975933782569837725430500935732461305564120140326648287647064748 6415793328750182981109433228185818225957404600702347546997909277334754504 5081078690680759746161175299797964461145403775369285791825597113337810241 5304891481821262675249241295939127363375156634355900880103089891934611265 1=1700315685696166233167452354083655615989777905867642850444655217 t= 1=320390783526205787479232142391965219788829063802235150550295 152 3860236933257837328498719172350250570723435123471152328952251716897605935 588597184511682664518239469020914514627367754 (2303 bit) - Khóa bí mật x: x=5348969687340559431082246539621692242 (123 bit) - Khóa cơng khai y: y=16589338916889168500424159288436792033625738994626169530473068737 1993943786992662648620795327069761760195720596498760387762815759500500134 7391707054300937208164536989078121871334455477071975187961888487974282386 1961656526221913569038875251559529144161002427811693773815012437206544954 8516048348524161303635196274840453869291704189727483129673011084373018905 8031798563378879910709449809241361569962287467040972283560648176164279170 9076114620775354499519149794173439972820906349553027511373609179488902854 3853128016412971890987101223747798546126354261183806458297998574069429320 3113286897592349473941512844129898623481196443620937958214078949308354926 285884751334892094941374030980408663671670199 (2303 bit) - Thời gian sinh: 38.769s 2.2 Sinh chữ ký xác nhận chữ ký - Giá trị băm tập tin m có tên HE_CHU_KY_SO.exevà địa C:/Users/ Admin/ Desktop/LUẬN ÁN_7_2019/HECHUKYSO_10082019/EXE M=SHA_512(m)=BF3EA03290BE6800952628DB78748174C0263E8521E8E30D 43DF5E9A11F82780251105CA1C738EB0445B1060E5272C0601438296E3C117CF8E05 873456FE2A90 - Giá trị khóa phiên k k=87746476282861341667338354245763800199116595045930669479531987542 53250551708186817027241415197341977502192 (352 bit) - Chữ ký sinh: r=13264033579188808933425121881972501821324816540359545935537313912 8325437919551929624568128921984672249499697685684183655574417806143037763 10707995291083865(512 bit) s=31620799421878912621836876429377969650778400608101152327149623123 8772341573697989477379998453152562286474356666711057116476690296683940809 24352532553966080(514 bit) - Thời gian sinh chữ ký: 1.87(s) - Xác nhận chữ ký thành công Thời gian xác nhận chữ ký: 4.177(s) Lược đồ CKSD2.1 3.1 Sinh tham số : - Đối tượng: AN-QP - Năm áp dụng: 2022 - Len(n)= 2560 bit - Security_strength = 128 bit - Sinh số nguyên tố: =20815864389328798163850480654728171077230524494533409610638224700 8072161193467205960244788834646483696848432279085620155827671324966469298 1627981321135303135402670808750124139847737887977740244013553092261271429 2075781161371410352251765816075603434194619023215504981024316578328590528 7783483705829380922266436739146730187085425368363844377573538294631259752 83936910025094109689815986227 (1280 bit) 153 =14571105072530158714695336458309719754061367146173386727446757290565 0512835427044172171352184252538587793902595359934109079369927476528508713958 6924794824906809378152634151018598873363309701447762563310998388848359267503 1068154811935611448450985958016040586820012387400968464484250924233075349788 9365476525088350007675307755305300434701272862422269841492426443524978639656 45728916303291 (1280 bit) 1=2074295755281107977891043468692198475257592723570413415348810929277 1=1668725005405390629712925014246113654041489059307410913529742618937 75734446433 (257 bit) 15133101509 (257 bit) n=p.q=3033101471924487455108650060965913703887963470185774963937819565 8296835916728779521151439955791763156274672138444947641849196807743459046257 9071617857097437312035989896621456206214388922906853203700143595101927417504 8617611646343385557855666791078720873663802864378796355253119320540721503481 7453301882051339573974306391917005599025117074261799259438013784424160717945 9422278388726932394366942820096492124162232870680437217651210752035154764768 8472218238764145426042311398771789687420352901260596194198376997996632170513 0156901065034538041475307329470940224995398121233380351322124285866687163178 1377713056263573850522677582982335318889861390114091198985574421705739344668 2242306600680639628181396617988168846252733441120270176372155530413421085537 70400702765620210773057 (2560 bit) t= 1=34614291954438457492560271676072114362931586578167968807724391 6807001809535943276913586431150151732885487878577840329009538873613616270279 85136998511967397 (514 bit) - Phần tử sinh g: g=44454982909242097922759057114608682251040936810806707221537119687644 4254890316500368159850349613918779694145772230642195141785296337013568943463 5470587781064786357091207903899375283042665814153068356926153770537331084089 0813921419517824075651328599691999541045126824568357281168618215796783316897 4618465996046256407898792513997647632996841741567979452328194052228151737346 6164961685718425016862088898496331866905842376754822375662386398760239192711 2486319532709054475032707179314897028994161950729768211103719322680739330582 0562198011275598290288871894971632879090405433732749996954010685314929804122 2161238566556856674171823336278039013804662222658032403533268767165671256272 0415262997419167236339373881925230525872435380326613346181945908835420492399 545691931940663205 (2557 bit) - Khóa bí mật x: x=47857977020295231146143775555842772944206879172527892399863867121693 5303844620348722153080664023090690223657491 (368 bit) - Khóa cơng khai y: y=11148238835778973653060281987085787740735319394729217618239673995446 3929166325832011808131264257607424102745904907886875847026562994825155402318 5311410411802563595231550077650457093898241632370659518827875928142467465266 3080131463447814703665637526984210606934987008863659453824842903341330008379 8410025573572123151828359740130719181875042098992722675109867750535580817743 7982972314436256870863520653981951475840195893977789079807760803303378787832 4883266160892406863168789527517103927611565567316487550772338625430447689573 2894984217061752989983403551027543590704903568623481163334554859496165264725 7966306720918220011323304156419085092039877074529684692360553580344075838975 154 5256451983448053353449771811619852845275666556949943391679173256933766503605 8639136653785788027 (2559 bit) - Thời gian sinh: 209.248s 3.2 Sinh chữ ký xác nhận chữ ký - Giá trị băm tập tin m địa chỉ: D:/ANH CHUNG/100APPLE/IMG_0176.JPG M=SHA_512(m)=7DFCD59EA10A3231292472412813D5117B2E2461075ECF251E3 F5BCA8B875AF7FAD1617B32A85D05BFA721F9D31A341EDDA80CA4D104CAAA2D9 CFB061C2A1571 - Giá trị khóa phiên k: k=42599073312511429592442526234781232890167077200392654851530080252262 5897272651772805339022851758731225464433335526252562 (398 bit) - Chữ ký sinh: r=84814106174625172578276547411774126496988401079991158046587470049735 287968659051585810946499003815849809744133444913506017527212173965977329153 3617910046(512bit) s=29150661301816726719699261806476735102190018573798567756239289369676 6956336801852665143525704345300979006559436833034003483091803869776200657617 72656930544(514bit) - Thời gian sinh chữ ký: 1.237(s) - Xác nhận chữ ký thành công, thời gian xác nhận chữ ký: 3.44(s) Lược đồ CKSD2.2 4.1 Sinh tham số - Đối tượng: KT-XH - Năm áp dụng: 2023 - Len(n)= 2304 bit - Security_strength = 123 bit - Sinh số nguyên tố: p=61172327492847069472032393719205726809135813743440799050195397570919 6977960919583217868639381579717923158445068735090465444590083550361506503336 1689021062568606447297148062202675498823110770692220088564171129697281476074 8716485136369259977561543335342129007013201933685058127311073043485546200955 673691695173498275520493843530905432189479585631919 (1152 bit) q=42820629244992948630422675603444008766395069620408559335136778299643 7884572643708252508047567105802546210911548114563325811213058485253054552335 3182314743798024513108003643543717684825056512007739295238476671535742425595 3267365061809582155372617874148707853593817854863259924624954326329430178605 157505019041456090000026398994434069953572144792619 (1152 bit) 80854294971 (257 bit) 44821166387 (257 bit) n=p.q=2619437555624493402657599841476825721458150176469303108543080910 6003433781353981158275471151007503100636909296306578244589754764512561509882 4392398422139060666019189388167452955961541957120998057011894057455423566271 9196429284694287700518022626232838698176244785015686516187968708945834534024 6590982396153022132654871022028454271623543120665080277969863668869268465584 9267271249158615168858752367081082117851532661969375748056894048659132342245 7539057131903045845448966481183736277834905684400474400867237279292315638403 4220432769999146529243395061742075729535150943916597458672310216791201457683 1=1884301757735223514072906698839139946883075054307835673864350550396 1=1700315685696166233167452354083655615989777905867642850444655217034 155 6060082299409594203874114431507464166043653992084671517015496454360772993654 2920264715348322005861 (2304 bit) 7384183726748933640648821105668144949183371862093265920367495331792618914443 1334598768339777 (514 bit) - Phần tử sinh g: g=10928054468601520446779147231547885278366255351344451519097842192380 4085588658843949881523555343469168912638985623831386583126036278987835447527 0313674880233412657974474319506379230034067959426587310593157429607198102614 3001017087372878656108570938123206950289264506015831437609322266635516122197 5933782569837725430500935732461305564120140326648287647064748641579332875018 2981109433228185818225957404600702347546997909277334754504508107869068075974 6161175299797964461145403775369285791825597113337810241530489148182126267524 9241295939127363375156634355900880103089891934611265386023693325783732849871 9172350250570723435123471152328952251716897605935588597184511682664518239469 020914514627367754 (2303 bit) - Khóa bí mật x: x=5348969687340559431082246539621692242 (123 bit) - Khóa cơng khai y: y=16589338916889168500424159288436792033625738994626169530473068737199 3943786992662648620795327069761760195720596498760387762815759500500134739170 7054300937208164536989078121871334455477071975187961888487974282386196165652 6221913569038875251559529144161002427811693773815012437206544954851604834852 4161303635196274840453869291704189727483129673011084373018905803179856337887 9910709449809241361569962287467040972283560648176164279170907611462077535449 9519149794173439972820906349553027511373609179488902854385312801641297189098 7101223747798546126354261183806458297998574069429320311328689759234947394151 2844129898623481196443620937958214078949308354926285884751334892094941374030 980408663671670199 (2303 bit) - Thời gian sinh: 39.728s 4.2 Sinh chữ ký xâc nhận chữ ký - Giá trị băm tập tin m địa D:/ANH CHUNG/100APPLE/IMG_0175.JPG M=SHA_512(m)=304A0793CB4A2445A4428FCAFE0EC12B2E05EE491C6B07EE2 74FE29FB6B2DC9B6A9500700ED82AB0532E45F870D7487EDE7FA2DEBC50E8EC3D7B FB5EDBDC25D3 - Giá trị khóa phiên k: k=401758137057456428091917811672165660602989235018397221231 (189 bit) - Chữ ký sinh: r=44702415776903807633032663966621129433947759153548993323842414954498 8211670194367042524691244325831525539525469060878290259548360790556328631645 6710877607(511bit) s=40317768738532074197017035526846035020191346763825129418836242161672 0887411452875962272069435039198077571456657566819099166320902014661101997526 6884008312(511bit) t= 1=320390783526205787479232142391965219788829063802235150550295319 ... thời xây dựng sở toán học cho tham số, xây dựng điều kiện cho tham số nhằm đạt mục đích đảm bảo việc tính logarit theo số “khó” mà tiền đề xây dựng “ngưỡng an toàn , hệ tiêu chuẩn tham số an toàn, ... án Phát triển xây dựng tham số an toàn cho hệ chữ ký số toán logarit rời rạc theo modul hợp số nhận giúp đỡ Đảng ủy, ban Giám đốc Học viện Kỹ thuật Quân sự; quan tâm, giúp đỡ Đảng ủy, ban... đề tài Phát triển xây dựng tham số an tồn cho hệ chữ ký số tốn logarit rời rạc theo modul hợp số làm luận án tiến sĩ 12 với mong muốn đóng góp phần nhỏ vào phát triển Khoa học Công nghệ lĩnh

Ngày đăng: 05/11/2019, 10:19

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