1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu phương pháp mã hóa RSA và xây dựng chương trình khởi tạo chữ ký điện tử

59 2 0

Đ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 HỌC ĐÀ ẴNG N TRƯ ỜNG ẠĐ I HỌC SƯẠM PH KHOA TIN -[ \ - LƯU BÌNH MINH NGHIÊN CỨU Mà HĨA RSA VÀ XÂY DỰNG CHƯƠNG TRÌNH ỞI TẠO KH CHỮ KÝ Ệ ĐI N TỬ KHĨA LUẬN TỐT NGHIỆP LỜI CẢM ƠN Tơi xin chân thành cҧ PѫQFiFWK ҫ y cô khoa Tin hӑFFNJQJQKѭFiF ҫ y cô giҧ ng dҥ \WURQJWUѭ ӡQJĈ ҥ i hӑF6ѭ3K ҥ m ±Ĉҥ i hӑc Ĉj1 ҹ QJÿmWUX\ Ӆ Qÿ ҥ t nhӳng kiӃ n thӭc quý báu cho nhӳQJQăPK ӑc vӯa qua Ĉһ c biӋ t, xin chân thành cҧ P ѫQ ҫ y giáo WK3*676 /r ÿm 9ăQ ұ n tình W 6ѫQ Kѭ ӟng dү Qÿ ӝQJYLrQYjJL~Sÿ ӥtôi suӕ t thӡi gian thӵc hiӋ Qÿ Ӆtài 9j ӇFy ÿ ӧcÿѭ kӃ t quҧQKѭ QJj\ K{P ҩ t biӃ W QD\ ѫQJLD W{L ӝ ng ÿuQK viên, U ÿm khích lӋ , tҥ o mӑLÿL Ӆ u kiӋ n thuұ n lӧi nhҩ t suӕ t trình hӑc tұ SFNJQJQKѭ trình thӵc hiӋ Qÿ Ӆtài tӕt nghiӋ p ;LQ FKkQ WKjQK ҥ n trongFiP lӟp 08CNTT01 ѫQ FiF һ cÿ biӋ tE bҥ n nhóm Viet4IT ÿm ӫng hӝ JL~Sÿ ӥ, chia sҿkiӃ n thӭc, kinh nghiӋ m tài liӋ XFyÿѭ ӧc cho trình nghiên cӭu thӵc hiӋ Qÿ Ӆtài Mӝt lҫ n nӳD[LQFKkQWKjQKFiPѫQ Ĉj1 ̽ QJWKiQJQăP Sinh viên th͹c hi͏ n /˱X%uQK0LQK LỜI CAM ĐOAN T{L[LQFDPÿRDQ 1KͷQJQ͡LGXQJWURQJOX̵QYăQQj\O G̳Q WU͹FWL͇SFͯD3*676/r9ăQ6˯Q 0͕LWKDPNK̫RGQJWURQJOX̵QYăQÿ JL̫ tên cơng trình, WKͥLJLDQÿ͓DÿL͋PF{QJE͙ 0͕LVDRFKpSNK{QJKͫSO͏YLSK̩P FK͓XKRjQWRjQWUiFKQKL͏P Sinh viên /˱X%uQK0LQK Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ MỤC LỤC DANH MӨC CÁC TӮ VIӂT TҲT DANH MӨC CÁC HÌNH Ҧ1+6ѪĈ Ӗ PHҪN MӢĈҪU &KѭѫQJ ±MӜT SӔVҨ1Ĉ ӄVӄMà HĨA THƠNG TIN 11 1.1 &ѫV ӣtoán hӑ c 11 1.1.1 Lý thuyӃ t toán hӑ c 11 1.1.1.1 Modular sӕhӑ c 11 1.1.1.2 Sӕnguyên tӕ 11 1.1.1.3 Ѭӟc sӕchung lӟn nhҩ t 12 1.1.1.4 Sӕnghӏ FKÿ ҧ o Modulo 13 1.1.2 Các phép kiӇ m tra sӕnguyên tӕ 14 1.1.2.1 Solovay ±Strassen 14 1.1.2.2 Rabin ±Miller 15 1.1.2.3 Lehmann 16 1.2 Lý thuyӃ t thông tin 17 1.2.1 Entropy 17 1.2.2 An toàn cӫ a hӋthӕ ng mã hóa 18 1.2.3 Sӵlӝ n xӝ n sӵUѭ ӡm rà 19 1.3 Lý thuyӃ Wÿ ӝphӭc tҥ p 19 1.4 Protocol 20 1.4.1 Giӟi thiӋ u Protocol 20 1.4.2 Protocol mұ t mã 21 1.4.3 Mө FÿtFKF ӫ a Protocol 21 1.5 Khái niӋ QFѫE ҧ n vӅmã hóa 22 1.6 Khóa 23 1.6.1 Ĉӝdài khóa 23 1.6.2 Quҧ n lý khóa cơng khai 24 1.6.3 Chӭng nhұ n khố cơng khai 24 1.6.4 Quҧ n lý khoá phân phӕ i 25 1.7 Mã dòng, mã khӕ i 25 1.7.1 Mơ hình mã hóa khӕ i (Cipher Block Chaining Mode) 25 /ѭX%uQK0LQK ±Lӟp 08CNTT Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ 1.7.2 Mơ hình mã hóa dịng (Cipher Feedback) 26 1.8 HӋPmNKyDÿ ӕ i xӭng công khai 26 1.8.1 HӋPmNKyDÿ ӕ i xӭng 26 1.8.2 HӋmã khóa công khai 27 1.9 TruyӅ n thông sӱdө ng hӋmұ WPmÿ ӕ i xӭng 27 1.10 TruyӅ n thông sӱdө ng hӋmұ t mã công khai 28 1.10.1 Hàm mӝ t phía (one way function) 28 1.10.2 +jPEăPP ӝ t phía 29 1.10.3 HӋmã hoá sӱdө ng khố cơng khai 29 &KѭѫQJ ±3+ѬѪ1*3+È30­+Ï$56$9¬&+ Ӳ éĈ, ӊN TӰ 31 2.1 3KѭѫQJSKiSPmKyD56$ 31 2.1.1 SӣOѭ ӧc vӅmã hóa RSA 31 2.1.2 Thuұ t tốn mã hóa RSA 31 2.1.2.1 Tҥ o khóa 31 2.1.2.2 Mã hóa giҧ i mã 32 2.1.3 Ĉӝan toàn cӫ a hӋRSA 33 2.1.4 HiӋ QWѭ ӧng lӝbҧ n rõ 34 2.2 ChӳNêÿL Ӌ n tӱ 34 2.2.1 Khái niӋ m vӅchӳNêÿL Ӌ n tӱ 34 2.2.2 Ĉӏ QKQJKƭDK ӋchӳNêÿL Ӌ n tӱ 35 2.2.3 Các hӋchӳNêÿL Ӌ n tӱthông dө ng 36 2.2.3.1 HӋchӳký RSA 36 2.2.3.2 HӋchӳký ElGamal 37 2.2.4 Chuҭ n chӳNêÿL Ӌ n tӱ 39 2.2.4.1 Thuұ t toán chӳNêÿL Ӌ n tӱ(DSA) 39 2.2.4.2 Chuҭ n chӳNêÿL Ӌ n tӱ(DSS) 40 &KѭѫQJ ±XÂY DӴNG ӬNG DӨNG KHӢI TҤO CHӲ éĈ, ӊN TӰ SӰ DӨNG 3+ѬѪ1*3+È30­+Ï$56$ 42 3.1 Giӟi thiӋ u 42 3.1.1 ĈѭDUDêWѭ ӣng 42 3.1.2 Cách thӭc xây dӵng 42 3.2 Xây dӵng ӭng dө ng 42 /ѭX%uQK0LQK ±Lӟp 08CNTT Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ 3.2.1 Phác thҧ o ӭng dө ng bҵ ng XMIND 42 3.2.2 ;iFÿ ӏ nh chӭFQăQJFKtQK 44 3.2.3 Thuұ t toán ӭng dө ng 44 3.2.3.1 Thuұ t toán tҥ o khóa 44 3.2.3.2 Thuұ WWRiQNêYăQE ҧ n 45 3.2.3.3 Thuұ t toán xác nhұ n chӳký 46 3.3 DEMO ӭng dө ng 47 3.3.1 7KѭYL Ӌ n BigInteger 47 3.3.2 &KѭѫQJWUuQKGHPR 50 KӂT LUҰ19¬+Ѭ ӞNG PHÁT TRIӆN 55 DANH MӨC TÀI LIӊU THAM KHҦO 56 /ѭX%uQK0LQK ±Lӟp 08CNTT Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ DANH MỤC CÁC TỪ VIẾT TẮT STT Từviế t tắ t Tiế ng anh National Institute of NIST Standards and Technology CSDL CA DES IBM AES DSA DSS FIPS /ѭX%uQK0LQK ±Lӟp 08CNTT Tiế ng việ t ViӋ n tiêu chuҭ n công nghӋquӕc gia &ѫV ӣdӳliӋ u Certifying Authority Data Encryption Standard Cӣquan xác nhұ n Tiêu chuҭ n mã hóa dӳliӋ u International Business Machines Corporation Advanced Encryption Tiêu chuҭ n mã hóa nâng Standard cao Digital Signature Algorithm Digital Signature Standard Thuұ t toán chӳNêÿL Ӌ n tӱ Chuҭ n chӳNêÿL Ӌ n tӱ Federal Information Tiêu chuҭ n xӱlý thông Processing Standard tin Liên bang Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ DANH MỤC CÁC HÌNH ẢNH, Tên hình vẽ , STT SƠ Ồ sơ Đ đ Hình 1.1 6ѫÿ ӗthuұ t tốn Solovay ±Strannsen Hình 1.2 6ѫÿ ӗthuұ t tốn Robin ±Miller Hình 1.3 6ѫÿ ӗq trình mã hóa giҧ i mã Hình 2.1 6ѫÿ ӗthuұ t tốn tҥ o khóa RSA Hình 3.1 6ѫÿ ӗXmind cӫa ӭng dөng Hình 3.2 6ѫÿ ӗthuұ t tốn tҥ o khóa Hình 3.3 6ѫÿ ӗthuұ t tốn ký YăQE ҧ n Hình 3.4 6ѫÿ ӗthuұ t tốn xác nhұ n chӳký Hình 3.5 Giao diӋ n chӭFQăQJ NêYăQE ҧ n cӫDFKѭѫQJWUuQK 10 Hình 3.6 Giao diӋ n chӑQYăQE ҧ Qÿ Ӈký hoһ c xác nhұ n 11 Hình 3.7 Giao diӋ n chӭFQăQJW ҥ o khóa cӫ DFKѭѫQJWUuQK 12 Hình 3.8 Giao diӋ n chӑ n khóa Private Key 13 Hình 3.9 Giao diӋ n chӑ n khóa Public Key 14 Hình 3.10 .êWKjQKF{QJYăQE ҧ n 15 Hình 3.11 Giao diӋ n chӭFQăQJ xác nhұ n YăQE ҧ n cӫ DFKѭѫQJWUuQ 16 Hình 3.12 Giao diӋ n chӑ n chӳký 17 Hình 3.13 Xác nhұ n chӳký xác YăQE ҧ n toàn vҽ n /ѭX%uQK0LQK ±Lӟp 08CNTT Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ PHẦN MỞĐẦU Lý ch͕n ÿ ͉tài ThӃkӹXXI, thӃkӹcông nghӋthông tin, thông tin ÿm ÿDQJ tác ÿӝng trӵc tiӃ p ÿӃ n mӑ i mһ t hoҥ tÿ ӝng kinh tӃxã hӝ i cӫa hҫ u hӃ t quӕ c gia thӃgiӟi Thơng tin có mӝ t vai trò hӃ t sӭc quan trӑ ng, bӣi vұ y phҧ i ÿҧ m bҧ o ÿѭ ӧc tính suӕ t cӫ a thơng tin, QJKƭD thông tin không bӏsai lӋ ch, bӏthay ÿ ә i, bӏlӝtrong trình truyӅ n tӯQѫL gӱi ÿ Ӄ n QѫL nhұ n Ĉӕ i vӟi sӵphát triӇ n rҩ t nhanh cӫ a công nghӋmҥ ng máy tính, ÿ һ c biӋ t mҥ ng INTERNET khӕ i Oѭ ӧng thơng tin chuyӇ n tҧ i ngày nhiӅ u KѫQ Nhӳng tұ p ÿRjQ công nghiӋ p, nhӳng công ty ÿD quӕ c gia, thӏWUѭ ӡng chӭng khoán tiӃ n hành xӱlý truyӅ n nhұ n nhӳng thông tin ÿ ҳ t giá, nhӳng phiên giao dӏ ch hay mua bán cәphiӃ u, trái phiӃ u ÿӅ u ÿѭ ӧc tiӃ n hành qua mҥ ng Giӡÿk\ vӟi sӵWăQJ WUѭ ӣng nhanh chóng cӫ a siêu thӏ ÿL Ӌ n tӱ, WKѭѫQJ mҥ i ÿL Ӌ n tӱthì hàng ngày có mӝt khӕ i Oѭ ӧng tiӅ n rҩ t lӟn ÿѭ ӧc OѭX chuyӇ n mҥ ng toàn cҫ u INTERNET, vҩ nÿ Ӆkhó NKăQ ÿ һ t giӳÿѭ ӧc thơng tin bí mұ t giӳcho tiӅ nÿ Ӄ n ÿ~QJ ÿѭ ӧ cÿ ӏ a chӍ cҫ nÿ Ӄ n Bҥ n sӁra nӃ u QKѭ bҥ n gӱi WKѭ cho mӝ t QJѭ ӡi bҥ n QKѭQJ lҥ i bӏmӝ t kҿlҥmһ t ÿy xem trӝ m sӱa ÿ ә i nӝ i dung bӭc WKѭ trái vӟi chӫý cӫ a bҥ n, tӋhҥ i KѫQ nӳa bҥ n ký mӝt hӧp ÿӗng, gӱi thông qua mҥ ng lҥ i bӏkҿxҩ u sӱa ÿәi nhӳng ÿL Ӆ u khoҧ n ÿy sӁcòn nhiӅ u ÿL Ӆ u WѭѫQJ tӵQKѭ vұ y nӳa Hãy thӱWѭ ӣng Wѭ ӧng bҥ nÿ ӑ c ÿѭ ӧc mӝ t email thông tin rҵ ng mӝ t sҧ n phҭ m nә i tiӃ ng ÿDQJ bán giҧ m giá mӝ t nӱa, KѫQ nӳa mua sҧ n phҭ m bҥ n ÿѭ ӧc tһ ng kèm nhӳng q miӉ n phí Hay bҥ nÿ ӑ c ÿѭ ӧc mӝ t diӉ n ÿjQ rҵ ng mӝ t nhҥ c trҿrҩ t nә i tiӃ ng mà bҥ n hâm mӝ sӁtһ ng quà giӟi hâm mӝtҥ iÿ ӏ a ÿL Ӈ m ÿy Thұ t nhӳng Fѫ hӝ i hiӃ m có QKѭQJ có thӇtin Wѭ ӣng ÿѭ ӧc ÿL Ӆ u này? NӃ u QKѭ nhӳng email viӃ t có ÿѭ ӧc chӳký ÿL Ӌ n tӱcӫ a nhӳng QJѭ ӡi phát ngơn ÿiQJ tin cұ y, ta có thӇhồn tồn yên tâm vӅnӝ i dung cӫ a chúng Ĉy ÿ һ c ÿL Ӈ m nә i bұ t nhҩ t cӫ a chӳký ÿL Ӌ n tӱ Chӳký ÿL Ӌ n tӱÿyQJ mӝ t vai trò quan trӑ ng giao dӏ ch ÿL Ӌ n tӱnhҵ m bҧ o ÿ ҧ m giao dӏ ch ÿѭ ӧc diӉ n an tồn mơi WUѭ ӡng mҥ ng Ĉӗ ng thӡi, chӳký ÿL Ӌ n tӱFNJQJ Fѫ sӣpháp lý ÿ Ӈgiҧ i quyӃ t tranh chҩ p giao dӏ ch WKѭѫQJ mҥ i ÿL Ӌ n tӱ Vӟi mong muӕn thúc ÿұ y sӵhӝi nhұ p công nghӋthông tin vào ÿ ӡi sӕng FNJQJ QKѭ sӵan toàn tin cұ y q trình truyӅ n thơng tin mҥ ng, cuӕn luұ n YăQ em nghiên cӭu mӝt sӕkhái niӋ m Fѫ bҧ n vӅmã hố thơng tin, SKѭѫQJ pháp mã /ѭX%uQK0LQK ±Lӟp 08CNTT Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ hố thơng tin RSA, nguyên tҳ c hoҥ t ÿӝng, cách thӭc xây dӵng chӳký ÿL Ӌ n tӱvà ӭng dөng chúng vào viӋ c xây dӵng mӝt FKѭѫQJWUuQK khӣi tҥ o chӳký ÿL Ӌ n tӱ Mͭc tiêu cͯa ÿ ͉tài - Tìm hiӇ u mӝt sӕkhái niӋ m Fѫ bҧ n vӅmã hóa thơng tin - Tìm hiӇ u vӅSKѭѫQJ pháp mã hóa thơng tin RSA - Tìm hiӇ u nguyên tҳ c hoҥ t ÿӝng cách thӭc xây dӵng chӳký ÿL Ӌ n tӱ - Xây dӵng hồn thiӋ n FKѭѫQJ trình ӭng dөng khӣi tҥ o chӳký ÿL Ӌ n tӱáp dөng SKѭѫQJ pháp mã hóa RSA Ĉ͙ i W˱ ͫng ph̩m vi nghiên cͱu - Ĉӕi Wѭ ӧng nghiên cӭu: tұ p trung chӫyӃ u vào SKѭѫQJ pháp mã hóa RSA ÿӇ xây dӵng chӳký ÿL Ӌ n tӱ - Phҥ m vi nghiên cӭu: xoay quanh viӋ c tҥ o khóa bҵ ng SKѭѫQJ pháp mã hóa RSA xây dӵng chӳký ÿL Ӌ n tӱcho tӋ SWLQ ҧ n YăQ mӝt máy E tính ÿѫQ 3K˱˯QJ pháp nghiên cͱu - Lý thuyӃ t: + Tìm kiӃ m tài liӋ u liên quan tӟi vҩ n ÿӅmã hóa thơng tin, SKѭѫQJ pháp mã hóa RSA chӳký ÿL Ӌ n tӱ + Nghiên cӭu tài liӋ u vӅSKѭѫQJ pháp mã hóa RSA, phân tích vҩ n ÿӅliên quan tӟi thuұ t toán, tӯÿy tәng hӧp lҥ i ÿӇcó ÿѭ ӧc nhӳng hiӇ u biӃ t chҳ c chҳ n, ÿ~QJ ÿҳ n vӅSKѭѫQJ pháp mã hóa RSA + Nghiên cӭu tài liӋ u vӅchӳký ÿL Ӌ n tӱ, phân tích vҩ n ÿӅliên quan, tӯÿy rút vai trò tҫ m quan trӑng cӫa chӳký ÿL Ӌ n tӱFNJQJ QKѭ SKѭѫQJ pháp tҥ o chӳký ÿL Ӌ n tӱ + Nghiên cӭu ngơn ngӳlұ p trình C++, C# ÿӇphөc vөcho viӋ c xây dӵng FKѭѫQJ trình ӭng dөng - Thӵc nghiӋ m: + Dӵa vào kiӃ n thӭc ÿm thu ÿѭ ӧc phҫ n nghiên cӭu lý thuyӃ t, tұ p trung xây dӵng FKѭѫQJ trình ӭng dөng khӣi tҥ o chӳký ÿL Ӌ n tӱsӱdөng SKѭѫQJ pháp mã hóa RSA /ѭX%uQK0LQK ±Lӟp 08CNTT Trang Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ Ĉҫ u tiên vҩ Qÿ Ӆký mӝ t tài liӋ u Vӟi chӳNêWK{QJWKѭ ӡng mӝ t phҫ n vұ t lý cӫ a tài liӋ u Tuy nhiên, mӝ t chӳNêÿL Ӌ n tӱkhông gҳ n theo kiӇ u vұ t lý vào bӭFÿL Ӌ n nên thuұ t WRiQÿѭ ӧc dùng phҧ LOj³NK{QJQKuQWK ҩ \´WKHRFiFKQjRÿyWUrQ ӭFÿL Ӌ n Thӭhai vҩ nÿ ӅkiӇ m tra ChӳNêWK{QJWKѭ ӡQJÿѭ ӧc kiӇ m tra bҵ ng cách so sánh vӟi chӳký xác thӵc khác Ví dө DLÿyNêP ӝ t tҩ PVpFÿ Ӈmua hàQJQJѭ ӡi bán sӁso sánh chӳký mҧ nh giҩ \ÿyY ӟi chӳký nҵ m ӣmһ t sau thҿtín dө QJÿ ӇkiӇ m tra Mһ t khác, chӳký sӕcó thӇkiӇ m tra bҵ ng mӝ t thuұ t toán kiӇ m tra mӝ WFiFKF{QJNK vұ y, bҩ t kǤDLFNJQJFyWK ӇkiӇ PWUDÿѭ ӧc chӳNêÿL Ӌ n tӱ ViӋ c sӱdө ng mӝ WVѫÿ ӗchӳký an tồn có thӇQJăQFK һ Qÿѭ ӧc khҧQăQJJL ҧmҥ o Sӵkhác biӋ WFѫE ҧ n giӳa chӳNêÿL Ӌ n tӱvà chӳký tK{QJWKѭ ӡng ӣchӛ : mӝ t bҧ n copy tài liӋ u có chӳNêÿѭ ӧFÿ ӗ ng nhҩ t vӟi bҧ n gӕ c Nói cách khác, tài liӋ u có chӳký giҩ \WKѭ ӡng có thӇkhác biӋ t vӟLYăQE ҧ n gӕ FÿL Ӆ XQj\ÿ ӇQJăQFK һ n mӝ t bӭFÿL Ӌ n ÿѭ ӧc ký không bӏdùng lҥ i Ví dө , nӃ u B ký mӝ t bӭFÿL Ӌ n xác minh cho A rút 100$ tӯtài khoҧ n cӫ a mình, chӍmuӕ n A có khҧQăQJOjPÿL Ӆ XÿyP ӝ t lҫ n Vì thӃ , bҧ n thân bӭFÿL Ӌ n phҧ i chӭDWK{QJWLQÿ Ӈkhӓ i bӏdùng lҥ i, chҷ ng hҥ QQKѭGQJG ӏ ch vөgán nhãn thӡi gian (Time Stamping Service) Mӝ WVѫÿ ӗchӳNêÿL Ӌ n tӱWKѭ ӡng chӭa hai thành phҫ n: thuұ t toán ký sig() thuұ t toán xác minh ver() B có thӇký mӝ t bӭFÿL Ӌ n x dùng thuұ t tốn ký an tồn (bí mұ t) KӃ t ሺ ሻnhұ quҧchӳký ›ൌ•‹‰ š Qÿѭ ӧc có thӇÿѭ ӧc kiӇ m tra bҵ ng thuұ t toán xác minh công ሺ ሻ NKDLYHU \ .KLFKRWUѭ ӟc cһ p š ǡ › , thuұ t toán xác minh cho giá trӏTRUE hay FALSE tùy thuӝ c vào viӋ c chӳNêÿѭ ӧc xác thӵFQKѭWK Ӄnào Vұ \QKѭWK Ӄnào chӳNêÿL Ӌ n tӱ? Chúng ta có mӝ t sӕÿ ӏ nKQJKƭDQKѭVDX - Là mӝ W ӏ QK ÿ GDQK Ӌ n tӱÿѭ ӧ ÿL c tҥ o bӣL Pi\ӧcWtQK tәchӭcÿѭ sӱdө ng nhҵ Pÿ ҥ Wÿѭ ӧc tính hiӋ u quҧvà hiӋ u lӵFQKѭOjFi c chӳký tay - Là mӝ WFѫFK Ӄxác thӵFKyDFKRSKpSQJѭ ӡi tҥ RUDWK{QJÿL Ӌ SÿtQKNqPP ӝ t mã sӕ YjRWK{QJÿL Ӌ p giӕ QJQKѭYL Ӌ c ký mӝ t chӳký lên mӝ WYăQE ҧ QEuQKWKѭ ӡng 2.2.2 Ĉ͓ QKQJKƭDK ͏chͷNêÿL ͏ n t͵ Các chӳNêÿL Ӌ n tӱÿѭ ӧc sinh sӱdө ng bӣi hӋchӳNê Vѫÿ ӗ ÿL Ӌ n tӱGѭ ӟi ÿk\Ojÿ ӏ QKQJKƭDP ӝ t hӋchӳNêÿL Ӌ n tӱ Mӝ WVѫÿ ӗchӳNêÿL Ӌ n tӱlà bӝ5 ሺ ܲǡ ‫ܣ‬ǡ ‫ܭ‬ǡ ܵǡ ܸሻthӓ DPmQFiFÿL Ӆ u kiӋ QGѭ ӟLÿk\ - P tұ p hӳu hҥ n bӭFÿL Ӌ Q WK{QJÿL Ӌ p, bҧ n rõ) có thӇ - A tұ p hӳu hҥ n chӳký có thӇ /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 35 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ - K tұ p không gian khóa (tұ p hӳu hҥ n khóa có thӇ ) - Vӟi mӛ i khóa ‫ ܭא‬tӗ n tҥ i mӝ t thuұ t toán ký •‹‰ t thuұ t toán xác ୏ ‫ܵא‬và mӝ ሽlà nhӳng minh ˜‡” i •‹‰ ܲ՜ ‫ ܣ‬và ˜HU ܲ ‫ݔ‬ ‫ܣ‬՜ ሼ  ǡ  ୏ ‫ܸא‬ Mӛ ୏ǣ ୏ǣ hàm cho mӛ i bӭFÿL Ӌ n ‫ܲאݔ‬và mӛ i chӳký ‫ܣאݕ‬thӓ D PmQ SKѭѫQJ Gѭ ӟLÿk\ ሺ ܴܷܶ‫ܧ‬   ݊ዅ ‫ݑ‬ ‫ݕ‬ൌ‫݃݅ݏ‬ ‫ݔ‬ሻ ሺ ܸ݁‫ݎ‬ ‫ݔ‬ǡ ‫ݕ‬ሻൌ൜ ሺ ‫ܧܵܮܣܨ‬  ݊ዅ ‫ݑ‬ ‫݃݅ݏ്ݕ‬ ‫ݔ‬ሻ Vӟi mӛ i ‫ܭא‬, hàm •‹‰ HU ӭc thӡi gian Hàm ˜ HU ୏ ˜ ୏ OjFiFKjPÿDWK ୏ sӁlà hàm cơng khai cịn hàm •‹‰ t không thӇdӉGjQJWtQKWRiQÿ Ӈgiҧmҥ o chӳký cӫ aB ୏ bí mұ bӭFӋ Q ÿL[ QJKƭD ӟL [ FKR ӟ Oj c chӍcóYWUѭ B mӟi có thӇWtQK ӧFÿѭ \ Ӈ˜ HU ÿ ୏ൌ  Mӝ WVѫÿ ӗchӳký khơng thӇDQWRjQY{ÿL Ӆ u kiӋ n mӝ WQJѭ ӡL&QjRÿyF Ӈ kiӇ m tra tҩ t cҧchӳký sӕy bӭFÿL Ӌ n x nhӡdùng thuұ t tốn ver() cơng khai cho tӟi tìm thҩ y chӳNêÿ~QJ9uWK Ӄ , nӃ u có ÿ ӫthӡi gian, C ln có thӇgiҧmҥ o chӳ ký cӫ D%1KѭY ұ y mө FÿtFKF ӫ DFK~QJWDOjWuPFiFVѫÿ ӗchӳNêÿL Ӌ n tӱan toàn vӅmһ t tính tốn Chú ý rҵ QJDLÿyFyWK Ӈgiҧmҥ o chӳký cӫ a B mӝ t bӭFÿL Ӌ Q³QJ ү XQKLrQ´[ ҵ ng ሻ cách tính šൌ‡ ›ሻvӟL\QjRÿyNKLÿy ›ൌ•‹‰ š Mӝ t biӋ n pháp xung quanh vҩ Qÿ Ӆ ୏ሺ ୏ሺ NKy NKăQ Qj\ ҫ u bӭF Oj Ӌ nÿL chӭ \rX D ӫÿ phҫ FQ Gѭ Ӈchӳÿ ký giҧmҥ o kiӇ u không phù hӧp vӟi toàn bӝnӝ i dung cӫ a bӭFÿL Ӌ n x trӯmӝ t xác suҩ t rҩ t nhӓ Có thӇdùng FiFKjP%ăP KDVKIXQVLRQ QKѭ0'0' Ӌ c tính kӃ t nӕ LFiFVѫÿ ӗchӳký ÿL Ӌ n tӱsӁloҥ i trӯSKѭѫQJSKiSJL ҧmҥ o 2.2.3 Các h͏chͷNêÿL ͏ n t͵thông dͭ ng 2.2.3.1 HӋchӳký RSA DӵDYjRѭXÿL Ӈ m cӫ a hӋmã RSA, nӃ u thiӃ t lұ Sÿѭ ӧFVѫÿ ӗchӳký dӵa toán phân tích thӯa sӕngun tӕWKuÿ ӝan tồn cӫ a chӳký sӁrҩ t cao ViӋ c thiӃ t lұ SVѫÿ ӗ xác thӵc chӳký RSA rҩ WÿѫQJL ҧ n, ta chi cҫ Qÿ ҧ RQJѭ ӧc hàm mã hóa giҧ LPm6DX OjVѫÿ ӗchӳký RSA: - Cho ൌ’ൈ“WURQJÿySTOjFiFV ӕnguyên tӕ Ĉ һ t ܲൌ‫ܣ‬ൌܼ௡ Yjÿ ӏ QKQJKƭD ሺ ‫ܭ‬ൌ൛ ݊ǡ ‫݌‬ǡ ‫ݍ‬ǡ ܽǡ ܾሻ ǣ ݊ൌ‫݌‬ൈ‫ݍ‬ǡ ‫݌‬ ‫ݒ‬  ‫ݍ‬ ݈   ܿ ž ܿ  ‫ݏ‬ ͙ ݊݃‫ݕݑ‬ ² ݊ ‫ݐ‬ ͙ǡ ൯ ൟ ܽൈܾ‫ͳؠ‬൫ ݉‫݀݋‬  ߶ሺ ݊ሻ - Các giá trӏ n b công khai; cịn p, q, a bí mұ t /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 36 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ - Vӟi ‫ܭ‬ൌሺ ݊ǡ ‫݌‬ǡ ‫ݍ‬ǡ ܽǡ ܾሻ WD[iFÿ ӏ nh: ሺ ‫݃݅ݏ‬ ‫ݔ‬ሻൌ‫ݔ‬௔ ݉‫݀݋‬  ݊                                                              ൜ ௄ ௕ ‫ݎ݁ݒ‬ ‫ݔ‬ǡ ‫ݕ‬ሻൌܴܷܶ‫ܧ‬ ֞ ‫ ݕؠݔ‬ሺ ݉‫݀݋‬  ݊ሻ  ‫݅ͣݒ‬  ‫ݔ‬ǡ ‫ݕ‬ ‫א‬ ܼ௡ ௄ሺ 7K{QJWKѭ ӡng, chӳNêÿѭ ӧc kӃ t hӧp vӟi hàm mã hóa cơng khai GiҧsӱA muӕ n gӱi mӝ t bӭFÿL Ӌ Qÿmÿѭ ӧFPmKyDYjÿmÿѭ ӧFNêÿ Ӄ n cho B Vӟi bҧ QU}[FKRWUѭ ӟc, A sӁtính ሻvà sau ÿyPmKyDF tốn chӳký cӫ a ›ൌ•‹‰ š ҧx y sӱdө ng khóa cơng khai ୅ሺ ‡ a B, kӃ t quҧnhұ Qÿѭ ӧc œൌ‡ š ǡ ›ሻ Bҧ n mã z sӁÿѭ ӧc gӱi tӟi B, B nhұ n ୆ cӫ ୆ሺ ሻ ÿѭ ӧF]ÿ ҫ u tiên giҧ i mã vӟi hàm giҧ i m㠆୆ cӫ DPuQKÿ Ӈnhұ Qÿѭ ӧc ሺ š ǡ › 6DXÿy ሻൌ dùng hàm xác minh công khai cӫ D $ ӇkiӇ ÿ m tra xem ˜‡” š ǡ › hay ୅ሺ không Song nӃ Xÿ ҫ u tiên A mã hóa x, rӗ LVDXÿyP ӟi ký lên bҧ n mã nhұ Qÿѭ ӧc sao? Khi ÿy$V Ӂtính: ሻ ൯ ›ൌ•‹‰ ‡ š ୅൫ ୆ሺ A sӁtruyӅ n cһ pሺ œ ǡ ›ሻtӟi B, B sӁgiҧ i mã z nhұ Qÿѭ ӧF[VDXÿy[iFP ӳký y x nhӡdùng ˜‡” t vҩ Qÿ Ӆnҧ y sinh nӃ u A truyӅ nሺ š ǡ ›ሻkiӇ u mӝ WQJѭ ӡi ୅ Mӝ thӭba C có thӇthay chӳký y cӫ a A bҵ ng chӳký cӫ a mình: ሻ ൯ › Ԣൌ•‹‰ ‡ š େ൫ ୆ሺ ሻngay cҧkhi không biӃ Chú ý rҵ ng, C có thӇký lên bҧ n m㠇 š t bҧ n rõ x Khi ୆ሺ ሻÿ ÿyQ Ӄ u C truyӅ nሺ œ ǡ ›Ԣ Ӄ n B, chӳký cӫ D&ÿѭ ӧc B xác minh bҵ ng ˜‡” େ YjGRÿy% rҵ ng bҧ n rõ x xuҩ t phát tӯ&'RNKyNKăQQj\K ҫ u hӃ WQJѭ ӡi sӱdө QJÿѭ ӧc kiӃ n nghӏ ³NêWUѭ ӟFNKLPm´ 2.2.3.2 HӋchӳký ElGamal HӋchӳký EO*DPDOÿѭ ӧFÿѭDUDYjRQăP0 ӝ t phiên bҧ n sӱDÿ ә i hӋQj\ÿѭ ӧc 1,67ÿѭDU DQKѭP ӝ t chuҭ n cӫ DFKNJNêÿL Ӌ n tӱ HӋchӳNê(O*DPDOÿѭ ӧc thiӃ t kӃriêng biӋ t cho mө FÿtFKFK ӳNêWUiLQJѭ ӧc vӟL56$WKѭ ӡQJÿѭ ӧc sӱdө ng cho cҧmө FÿtFKPm hóa cơng khai chӳký HӋchӳNê(O*DPDOOjNK{QJ[iFÿ ӏ QKQJKƭDOjFy ҩ t nhiӅ u giá trӏchӳký cho mӝ t bӭFÿL Ӌ QFKRWUѭ ӟc Thuұ t tốn xác minh phҧ i có khҧQăQJQK ұ n bҩ t kǤgiá trӏchӳNêQjRQKѭOjYL Ӌ c xác thӵc Sѫÿ ӗchӳNê(O*DPDOÿѭ ӧc miêu tҧQKѭ sau: - ‫כ‬ Cho p mӝ t sӕnguyên tӕQKѭOjEjLWRiQORJDULWU ӡi rҥ c ୔, ߙ‫୔א‬ mӝ t ‫כ‬ ‫כ‬ሻ phҫ n tӱnguyên tӱvà ൌ୔ , ൌሺ ୔ ൈ୔ିଵYjÿ ӏ QKQJKƭD ሺ ሽ ൌሼ ’ǡ Ƚǡ ƒ ǡ Ⱦሻ ǣ  Ⱦ‫ؠ‬Ƚୟሺ ‘†  ’ሻ /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 37 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ - 7URQJÿyJLiWU ӏ ’ǡ Ƚ ˜  Ⱦ Ž  …ؐ‰  Šƒ‹ ǡ …֐  ƒ  Ž  „À  ұ W - ‫כ‬ Vӟi ൌሺ ’ǡ Ƚǡ ƒ ǡ Ⱦሻvà chӑ n mӝ t sӕngү u nhiên ‫୔א‬ ӏ QKQJKƭD ିଵÿ •‹‰ š ǡ ሻൌሺ ߛǡ ߜሻ ௄ሺ - ሺ 7URQJÿy ɀൌȽ୩ ‘†  ’và Ɂൌሺ šെƒൈɀሻ ିଵ ‘† ’െͳሻ - ‫כ‬ Vӟi x, ߛ‫୔א‬ ߛ‫ି୔א‬ଵÿ ӏ QKQJKƭD ሺ ˜ HU š ǡ ɀǡ Ɂሻൌ ฻ Ⱦஓɀஔ‫ؠ‬Ƚ୶ሺ ‘†  ’ሻ - NӃ u chӳNêOjÿ~QJWKuYL Ӌ c xác nhұ n thành công khi: Ⱦஓɀஔ‫ؠ‬ȽୟஓȽ୩ஔሺ ‘†  ’ሻ Ⱦஓɀஔ ‫ؠ‬Ƚ୶ሺ ‘†  ’ሻ - ሺ ”‘‰¯×ǣ ƒ ɀ൅Ɂ‫šؠ‬ ‘†  ’െͳሻ B sӁtính tốn chӳký bҵ ng viӋ c sӱdө ng cҧgiá trӏbí mұ t a (mӝ t phҫ n cӫ a khóa) sӕ bí mұ t ngү u nhiên k (giá trӏÿ Ӈký bӭFÿL Ӌ n) ViӋ c xác minh có thӇthӵc hiӋ Qÿѭ ӧc chӍvӟi FiFWK{QJWLQÿѭ ӧc cơng khai Ví dө : - Chúng ta chӑ n ’ൌͶ͸͹ ǡ Ƚൌʹǡ ƒൌͳʹ͹ - Ta tính: ȾൌȽୟ‘†  ’ൌʹଵଶ଻ ‘†  Ͷ͸͹ ൌͳ͵ʹ - Bây giӡB muӕ QNêOrQEѭ ӟFÿL Ӌ n šൌͳͲͲ chӑ n mӝ t giá trӏngү u nhiên ିଵ ሺ ሻൌͳvà ʹͳ͵ ൌʹͳ͵ (chú ý  ʹͳ͵ ǡ Ͷ͸͸ ‘†  Ͷ͸͸ ൌͶ͵ͳ  6DX ÿ tính: ɀൌʹଶଵଷ ‘†  Ͷ͸͹ ൌʹͻ ሻൈͶ͵ͳ Ɂൌሺ ͳͲͲ െͳʹ͹ ൈʹͻ  ‘†  Ͷ͸͸ ൌͷͳ - Bҩ t cӭDLFNJQJFyWK ӇkiӇ m tra chӳký bҵ ng cách tính: ଶଽ ହଵ ሺ ሻ ͳ͵ʹ ൈʹͻ ‫ͳؠ‬ͺͻ ‘†  Ͷ͸͹ ሺ ሻ ʹଵ଴଴ ‫ͳؠ‬ͺͻ ‘†  Ͷ͸͹ Giҧsӱ, kҿthӭba C muӕ n giҧmҥ o chӳký cӫ a B bӭFÿL Ӌ n x mà khơng biӃ t sӕbí mұ t a NӃ u C chӑ n mӝ t giá trӏɀvà cӕgҳ ng tìm Ɂ, phҧ i tính mӝ t hàm logarit rӡi rҥ c ୶ ିஓ Ž‘‰ t khác, nӃ Xÿ ҫ u tiên chӑ n Ɂÿ Ӌcӕgҳ ng tìm ɀthì phҧ i tính ஓȽȾ Mһ Ⱦஓɀஔ ൌȽ୶ሺ ‘†  ’ሻ Cҧhai viӋ FQj\ÿ Ӆ u khơng thӇthӵc hiӋ Qÿѭ ӧc Tuy nhiên có mӝ t lý thuyӃ t mà C có thӇký lên mӝ t bӭFÿL Ӌ n ngү u nhiên bҵ ng cách chӑ n ÿ ӗ ng thӡi ɀǡ Ɂ ˜  š Cho i, j sӕnguyên vӟi: ሺ Ͳ൑‹ ǡ Œ൑’െʹǡ ˜    Œ ǡ ’െͳሻൌͳ /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 38 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ 6DXÿy ta tính: ɀൌȽ୧Ⱦ୨‘†  ’ ିଵሺ Ɂ‫ؠ‬െɀŒ ‘†  ’െͳሻ ିଵሺ š‫ؠ‬െɀ‹ Œ ‘†  ’െͳሻ 1KѭY ұ y, ta xem ሺ ߛǡ ߜሻlà giá trӏchӳký cho bӭFÿL Ӌ n x ViӋ c xác minh sӁthӵc hiӋ n QKѭVDX ౟ౠ ౟ ౠషభ ି஑ஒ୨ ሺ Ⱦஓɀஔ ‫ؠ‬Ⱦ஑ஒሺ Ƚ୧Ⱦ୨ሻ ‘†  ’ሻ ౟ౠ షభ஑౟ ஒౠ ‫ؠ‬Ⱦ஑ஒ ൈȽି୧୨ ౟ౠ ൈȾି஑ஒሺ ‘†  ’ሻ షభ஑౟ ஒౠ ‫ؠ‬Ƚି୧୨ ሺ ‘†  ’ሻ షభ ‫ؠ‬Ƚିஓ୧୨ ሺ ‘†  ’ሻ ‫ؠ‬Ƚ୶ሺ ‘†  ’ሻ Ví dө : - 1KѭYtG өtrên, ta chӑ n ’ൌͶ͸͹ ǡ Ƚൌʹǡ ƒൌͳ͵ʹ - Kҿthӭba C sӁchӑ n ‹ൌͻͻ  ˜  Œൌͳ͹ͻ Anh ta sӁtính: ଵ଻ଽ ɀൌʹଽଽ ͳ͵ʹ ‘†  Ͷ͸͹ ൌͳͳ͹ Ɂൌെͳͳ͹ ൈͳͷͳ  ‘†  Ͷ͸͸ ൌͶͳ šൌͻͻ ൈͶͶ  ‘†  Ͷ͸͸ ൌ͵͵ͳ - ሻlà giá trӏchӳký cho bӭFÿL Cһ p giá trӏሺ ͳͳ͹ ǡ Ͷͳ Ӌ n 331 ViӋ F[iFPLQKÿѭ ӧc thӵc hiӋ QQKѭVDX ଵଵ଻ ସଵ ሺ ሻ ͳ͵ʹ ͳͳ͹ൌ͵Ͳ͵ ‘†  Ͷ͸͹ ሺ ሻ ʹଷଷଵ ൌ͵Ͳ͵ ‘†  Ͷ͸͹ 2.2.4 Chu̱ n chͷNêÿL ͏ n t͵ 2.2.4.1 Thuұ t toán chӳNêÿL Ӌ n tӱ(DSA) 7KiQJ1,67ÿmÿѭDUDWKX ұ t toán chӳNêÿL Ӌ n tӱOjFѫV ӣcho chuҭ n chӳký ÿL Ӌ n tӱ Ĉk\OjP ӝ t biӃ n thӇcӫ a thuұ t toán ElGamal - Chӑ n mӝ t sӕnguyên tӕq vӟi ʹଵହଽ ൏‫ݍ‬൏ʹଵ଺଴ - Chӑ n t cho Ͳ൑–൑ͺ - ା଺ସ୲ ା଺ସ୲ Chӑ n mӝ t sӕnguyên tӕSWURQJÿy ʹହଵଵ ൏‫݌‬൏ʹହଵଶ q phҧ i chia hӃ t ሺ ’െͳሻ KD\TOjѭ ӟc nguyên tӕcӫ a ’െͳ) - ‫כ‬ Bây giӡ, tҥ o mӝ t sӕȽduy nhҩ WFKRTWURQJWUѭ ӡng ୔ Τ ‫כ‬ + Chӑ n mӝ t giá trӏ ‰‫୔א‬ tính Ƚൌ‰ሺ୮ିଵሻ୯  ‘†  ’ /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 39 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ + NӃ u Ƚൌͳthì quay lҥ LEѭ ӟc (chӑ n lҥ i g cho phù hӧp) - Chӑ n mӝ t sӕnguyên ngү XQKLrQDÿ Ӈͳ൑ƒ൑“െͳ - Tính ›ൌȽୟ ‘†  ’ - 1KѭY ұ \NKyDÿ Ӈký ሺ ’ǡ “ǡ Ƚǡ ›ሻÿѭ ӧc cơng khai a khóa bí mұ t 2.2.4.2 Chuҭ n chӳNêÿL Ӌ n tӱ(DSS) Chuҭ n chӳNêÿL Ӌ n tӱ ÿѭ ӧc sӱDÿ ә i tӯhӋchӳký (O*DPDO1yÿѭ ӧc công bӕtҥ i hӝ i nghӏFIPS vào ngày 19/05/1994 trӣthành chuҭ n vào ngày 01/12/1994 DSS sӱdө ng mӝ WNKyDF{QJNKDLÿ ӇkiӇ m tra tính tồn vҽ n cӫ a dӳliӋ u nhұ Qÿѭ ӧFYjÿ ӗ ng nhҩ t vӟi dӳ liӋ u cӫ DQJѭ ӡi gӱL'66FNJQJFyWK Ӈsӱdө ng bӣLQJѭ ӡi thӭEDÿ Ӈ[iFÿ ӏ nh tính xác thӵc cӫ a chӳký dӳliӋ u nó[13] Trong rҩ t nhiӅ XWUѭ ӡng hӧp, mӝ t bӭFÿL Ӌ n có thӇÿѭ ӧc mã hóa giҧ i mã mӝ t lҫ n, vұ \QyÿiS ӭng cho viӋ c sӱdө ng cӫ a bҩ t kǤhӋthӕ ng bҧ o mұ WQjRÿѭ ӧc biӃ t an toàn lúc bӭFÿL Ӌ Qÿѭ ӧc mã hóa Nói cách khác, mӝ t bӭFÿL Ӌ Qÿѭ ӧFNêÿ ҧ m nhiӋ m chӭFQăQJ QKѭP ӝ WYăQE ҧ n hӧp pháp, chҷ ng hҥ QQKѭFiFE ҧ n hӧSÿ ӗ ng, vұ y, QyFNJQJJL ӕ QJQKѭ viӋ c cҫ n thiӃ Wÿ Ӈxác minh chӳký sau rҩ t nhiӅ XQăPE ӭFÿL Ӌ Qÿѭ ӧFNêĈL Ӆ u rҩ t quan trӑ ng cho viӋ c phịng ngӯa vӅÿ ӝan tồn cӫ a chӳNêÿѭ ӧFÿѭDUDE ӣi mӝ t hӋthӕ ng bҧ o mұ t Vì hӋchӳNê(O*DPDONK{QJÿ ҧ m nhұ Qÿѭ ӧFÿL Ӆ u này, viӋ c thӵc hiӋ n cҫ n mӝ t giá trӏlӟn modulo p Tҩ t nhiên p nên có nhҩ t 512 bits, nhiӅ XQJѭ ӡi cho rҵ QJÿ ӝdài cӫ a p nên 1024 bits nhҵ m chӕ ng lҥ i viӋ c giҧmҥ RWURQJWѭѫQJODL Tuy nhiên, cҧmӝt thuұ WWRiQPRGXORELWVGQJ ӇNêFNJQJSK ҧ i thӵc hiӋ n viӋ FWtQKWRiQÿ Ӄ n 1024 bits Cho ӭng dө ng tiӅ PQăQJQj\FyU ҩ t nhiӅ u card thông minh ÿѭ ӧFÿѭDUDQK ҵ m thӵc hiӋ n mӝ t chӳký ngҳ QKѫQQKѭPRQJPX ӕ n DSS ÿ ã sӱDÿ ә i hӋ chӳký ElGamal cho phù hӧp theo cách mӝWFiFKNKpROpRÿ Ӈmӛ i 160 bits bӭFÿL Ӌ n ÿѭ ӧc ký sӱdө ng mӝ t chӳNêELWVQKѭQJYL Ӌ FWtQKWRiQÿѭ ӧc thӵc hiӋ n vӟi 512 bits ‫כ‬ PRGXORS&iFKQj\ÿѭ ӧc thӵc hiӋ n nhӡviӋ c chia nhӓ୔ WKjQKFiFWUѭ ӡng có kích thӭc ʹଵ଺଴ KӇtӯNKL'66ÿѭ ӧFÿ Ӆxuҩ WYjRQăPÿmFyQKL Ӆ XSKrEuQKÿѭDUD ҷ ng hҥ n nKѭNtFKF ӥcӫ a modulo p bӏcӕÿ ӏ QKELWVÿL Ӆ u mà nhiӅ XQJѭ ӡi khơng muӕ n Vì vұ y, 1,67ÿmWKD\ÿ ә i chuҭ QQj\ÿ Ӈcó thӇWKD\ÿ ә i kích thӭc modulo p thành mӝ t dãy tӯ512 ÿ Ӄ n 1024 bits Ngoài ra, mӝ t sӵphê bình khác vӅDSS chӳNêÿѭ ӧc tҥ RUDQKDQKKѫQ so vӟi viӋ c [iFPLQKQy7UiLQJѭ ӧc vӟi hӋchӳký RSA viӋ c xác minh công khai rҩ t nhanh /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 40 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ chóng (mà ta biӃ WWURQJWKѭѫQJP ҥ LÿL Ӌ n tӱviӋ c xác minh rҩ t quan trӑ QJYjÿzL ӓ i thӡi gian thӵc hiӋ n phҧ i nhanh chóng) ¾ Kế t thúc 2, chương chúng iể ta u ợccó tìm nhữngđư kiế hn thức ả n b vềphương pháp mã ậ hóa t tốn, ộ RSA an tồn,như khả đ thu ổ i trộ n i mã hóa RSA khiế n trởthành thuậ t ng thờ Đi, ta tốn mã ợc sửdụ hóa ng phổđư biế t nhấ t hiệ n ững hiể u biế t có chữký nhệ nđi tử, cách tạ o vai trị thời iđ công nghệ Chương ế p theo củ ti a báo cáo sẽtrình bày ý tư ởng vềviệ c xây dựng mộ t ứng dụng khởi tạ o chữký ệ nđi tửáp dụng phương pháp mã hóa RSA nhằ m giúp ời dùng ngư làm quen với việ c sửdụng chữký ệ nđi tử nhưộ tm “ch ứng minh thư” ng giớ i thiệ u mộ t m chương trình ứng dụng /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 41 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ Chương –XÂY DỰNG ỨNG DỤNG KHỞI TẠO CHỮ KÝ Ệ ĐI N TỬ SỬ DỤNG PHƯƠNG PHÁPRSA Mà HÓA 3.1 Giͣi thi͏ u 3.1.1 Ĉ˱DUDê W˱ ͧng 9ӟLÿӅWjLQJKLrQFӭXYӅ SKѭѫQJSKiSPmKyD RSA chӳký ÿL Ӌ n tӱ, em ÿm ÿѭDUDê Wѭ ӣng [k\GӵQJ mӝ t ӭng dө QJJL~SQJѭ ӡi dùng có thӇNêWrQÿL Ӌ n tӱlên mӝ WWK{QJÿL Ӌ p YăQE ҧ nÿ ӗ ng thӡi có thӇxác nhұ n chӳký FNJQJQKѭWtQKWRjQY ҽ n cӫ DYăQE ҧ Qÿѭ ӧc gӱi tӟi Ӭng dө ng sӁsӱdө ng hӋchӳNê56$ÿ Ӈkhӣi tҥ o chӳký Ӭng dө ng sӁchҥ y nӅ n window vӟi giao diӋ n thân thiӋ n vӟL QJѭ ӡi dùng Ӭng dө ng gӗ m có ba chӭFQăQJFKtQKOjNK ӣi tҥ o khóa bҵ QJSKѭѫQJSKiS56$ ҧ n xác nhұ n chӳký ChӭFQăQJNK ӣi tҥ o khóa bҵ QJSKѭѫQJSKiS56$J ӡi dùng tҥ o hai khóa cơng khai bí mұ Wÿѭ ӧc xuҩ t hai file riêng biӋ t ChӭFQăQJNêYă ҧ n sӁthӵc hiӋ n viӋ c NêOrQYăQE ҧ n bҵ ng khóa bí mұ WPjQJѭ ӡLGQJÿѭDYjR ӭng dө ng sӁxuҩ t chӳNêUDILOHO~FQj\QJѭ ӡi dùng sӁgӱi kèm chӳNêYăQE ҧ n khóa cơng khai cӫ DPuQKFKRÿ ӕ i tác ChӭFQăQJWK ӭEDJL~SQJѭ ӡi dùng xác nhұ n chӳký cӫ a mӝ WYăQE ҧ n nhұ Qÿѭ ӧFFNJQJQKѭNL Ӈ m tra tính tồn vҽ n cӫ DYăQE ҧ n Ӭng dө ng sӁdùng NKyDF{QJNKDLPjQJѭ ӡLGQJÿѭDYjRÿ ӇkiӇ m tra chӳNêFNJQJQKѭYăQE ҧ n thông EiRFKRQJѭ ӡi dùng biӃ t chӳNêFyÿ~QJYjYăQE ҧ n có tồn vҽ n hay khơng 3.1.2 Cách thͱc xây d͹ng ĈӇxây dӵQJÿѭ ӧc ӭng dө ng phҧ i thӵc hiӋ Qÿѭ ӧc yêu cҫ u sau: - Lӵa chӑ n tìm hiӇ u mӝ t ngơn ngӳlұ p trình phù hӧp vӟLêWѭ ӣng - Xây dӵng mӝ WWKѭYL Ӌ n gӗ m hàm tính tốn ൅ǡ െǡ ൈǡ ൊǡ ‘† sӕngun lӟn (vài chө Fÿ Ӄ QYjLWUăPNêV ӕ ) - Xây dӵng hàm tҥ o khóa bҵ QJSKѭѫQJSKiS56$ - Xây dӵng hàm ký tên hàm kiӇ m tra chӳký - Xây dӵng mӝ t giao diӋ n thân thiӋ n, dӉsӱdө ng 3.2 Xây d͹ng ͱng dͭng 3.2.1 Phác th̫ o ͱng dͭ ng b̹ ng XMIND TӯnhӳQJêWѭ ӣQJÿѭ ӧc nêu ӣWUrQHPÿmSKiF thҧ o chӭFQăQJFNJQJQK ӑ n công cөvà ngôn ngӳÿ Ӈxây dӵng ӭng dө ng /ѭX%uQK0LQK ±Lӟp 08CNTT Trang 42 Nghiên cӭDSKѭѫQJSKiS mã hóa RSA xây dӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ Hình 3.1 SơồXmind đ ứng dụng LѭX%uQK0LQK ±Lӟp 08CNTT1 Trang 43 Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[k\G ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ 3.2.2 ;iFÿ ͓ nh chͱFQăQJFKtQK ChӭFQăQJFKtQKF ҫ n phҧ i có ӭng dө ng là: - Khӣi tҥ o khóa: + Bҵ ng cách chӑ n nút tҥ o khóa, chӑ Q ӝÿ dài (bits) cӫ a khóa theo nhu cҫ u, chӑ n vӏWUtOѭXNKyD VDXÿyFK ӑ n tҥ o khóa + Ӭng dө ng sӁthӵc hiӋ n viӋ c tҥ o khóa cơng khai bí mұ t Fyÿ ӝdài (bits) bҵ ng hoһ c lӟQKѫQÿ ӝGjL ELWV ÿmFK ӑ QOѭDNKyDWKjQKK riêng biӋ t thông biRFKRQJѭ ӡi dùng - Ký tên: + Bҵ ng cách chӑ Q WDE Nê ҧ n, chӑ Q YăQ ILOH Eҧ n (*.doc, YăQ *.txt E hoһ c *.docx) cҫ QNêYjÿ ѭa khóa bí mұ WYjRVDXÿyFK ӑ n ký tên + Ӭng dө ng sӁthӵc hiӋ n viӋ FNêWrQOrQYăQE ҧ n bҵ ng khóa bí mұ WOѭXFK ӳ ký file thông báo cho ngѭӡi dùng - Xác nhұ n chӳký: + Bҵ ng cách chӑ n tab xác nhұ n chӳký, chӑ Q YăQ ҧ n (*.doc, E *.txt hoһ c *.docx) cҫ n xác nhұ Q ÿѭD ӳkýILOH khóa cơng FK khai vào, chӑ n xác nhұ n + Ӭng dө ng sӁthӵc hiӋ n viӋ c xác nhұ n chӳký, kiӇ m tra tính tồn vҽ n cӫ a YăQE ҧ n thôQJEiRFKRQJѭ ӡi dùng 3.2.3 Thu̵ t toán ͱng dͭ ng 3.2.3.1 Thuұ t tốn tҥ o khóa ĈӇtҥ o khóa bҵ QJSKѭѫQJSKiS56$WDF ҫ n phҧ i khӣi tҥ o sӕnguyên tӕlӟn p q ViӋ c tҥ o sӕnguyên lӟn dӉGjQJQKѭQJÿ ӇkiӇ m tra tính nguyên tӕcӫ a hai sӕÿyWKu rҩ WNKyNKăQ Ӭng dө ng sӱdө QJSKѭѫQJSKiSNL Ӈ m tra xác suҩ t nên cҫ n mӝ t vòng lұ Sÿ Ӈ ÿ ҧ m bҧ o viӋ FNKyDVLQKUDOjÿ~QJ /ѭX%uQK0LQK ±Lӟp 08CNTT1 Trang 44 ... mã Nghiên cӭDSKѭѫQJSKiSPmKyD56$Yj[kG ӵQJFKѭѫQJWUuQKNK ӣi tҥ o chӳNêÿL Ӌ n tӱ Chương –PHƯƠNG PHÁP Mà VÀ HÓA CHỮ KÝ RSA? ?? ĐI N TỬ 2.1 3K˱˯QJSKiS mã hóa RSA 2.1.1 SͧO˱ ͫc v? ?mã hóa RSA. .. (Decryption): trình biӃ Qÿ ә i bҧ n mã thành bҧ n rõ - Quá trình mã hóa giҧ LPmÿѭ ӧc thӇhiӋ QWURQJVѫÿ ӗsau: Bản rõ Bản mã Mã hóa Bản rõ Giải mã Hình 1.3 Sơồq đ trình mã hóa giả i mã - H? ?mã hóa mӝ... ch? ?ký ÿL Ӌ n tӱáp dөng SKѭѫQJ pháp mã hóa RSA Ĉ͙ i W˱ ͫng ph̩m vi nghiên cͱu - Ĉӕi Wѭ ӧng nghiên cӭu: tұ p trung chӫyӃ u vào SKѭѫQJ pháp mã hóa RSA ÿӇ xây dӵng ch? ?ký ÿL Ӌ n tӱ - Phҥ m vi nghiên

Ngày đăng: 26/06/2021, 13:14

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w