Giao Trinh an Toan Bao Mat Thong Tin

download Giao Trinh an Toan Bao Mat Thong Tin

of 148

Transcript of Giao Trinh an Toan Bao Mat Thong Tin

B GIAO THNG VN TI TRNG I HC HNG HI B MN: KHOA HO C MA Y TI NH KHOA: CNG NGH THNG TIN Gio trnh AN TON V BO MT THNG TIN TN HC PHN : An ton v bo mt Thng tin M HC PHN :17212 TRNH O TO : I HC CHNH QUY DNG CHO SV NGNH : CNG NGH THNG TIN

HI PHNG - 2008 Tn hc phn: An toan bao m t thng tinLoi hc phn: II B mn ph trch ging dy: Khoa hc my tnh. Khoa ph trch: Cng ngh thng tin M hc phn: Tng s TC: 3 TS titL thuytThc hnh/ XeminaT hcBi tp ln n mn hc 754530000 iu kin tin quyt:Sinh vin c n ho c xong cac ho c ph n: -L p trinh hng i t ng -C u truc d li u -Phn tich, thi t kva anh gia thu t toan. Mc ch ca hc phn: Truyntchosinhvinnhngkinthccbnvcclnhvcringtrongan ton bo mt my tnh: -Cc gii thut m ha trong truyn tin. -Cc thut ton to hm bm v ch k in t. -Cc m hnh trao chuyn kha. -Cc m hnh chng thc v cc giao thc mt m. Ni dung ch yu: G m 2 ph n: -Ph n ly thuy t: cung c p cac ly thuy t vthu t toan ma hoa, cc giao thc. -Ph n l p trinh: ci t cc h m, vi t cac ng du ng s du ng cac h ma m t Ni dung chi tit ca hc phn: Tn chng mc Phn phi s tit TSLTXemineBTKT ChngI.Giithiunhimvcaantonvbo mt thng tin. 43100 1.1. Cc khi nim m u. 1.1.1. Thnh phn ca mt h thng thng tin 1.1.2.Nhngmiedavthithiivihthng thng tin. 1.1.3. Gii php iu khin kim sot an ton bo mt 1.2. Mc tiu v nguyn tc chung ca ATBM. 1.2.1. Ba mc tiu. 1.2.2. Hai nguyn tc 1.3. Gii thiu chung v cc m hnh mt m. 1.3.1. M hnh c bn trong truyn tin v lut Kirchoff. 1.3.2. Nhng giai on pht trin ca l thuyt m ha. 1 1 1 1 Chng II. Mt s phng php m ha c in.135521 2.1. Phng php m n gin. 2.1.1. M hon v trong bng Alphabet. 2.1.2. Mt m cng tnh. 2.2.3. Mt m nhn tnh. 2.1.4. Phn tch m theo phng php thng k. 2.2. Phng php m bng phng th tn xut. 2.2.1. M vi bng th ng m. 2.2.2. M a bng th: gii thut m Vigenre v One time pad. 2.2.3. L thuyt v s b mt tuyt i. 2.2.4.nhgimcbomtcamtphngphp m ha. Ki m tra 2 3 2 3 1 1 1 Chng III. Mt m khi.168710 3.1. Khi nim. 3.1.1. iu kin an ton cho mt m khi 3.1.2. Nguyn tc thit k. 3.2. Chu n ma hoa d li u DES 3.2.1. Lch s ca DES 3.2.2. Cu trc vng lp DES. 3.2.3. Thut ton sinh kha con 3.2.4. Cu trc hm lp. 3.2.5. Thut ton gii m DES. 3.2.6. nh gi mc an ton bo mt ca DES. 3.2.7. TripleDES 3.3. Chu n ma hoa cao c p AES 3.3.1. Gii thi u vAES 3.3.2. Thu t toan ma hoa 3.3.3. Thu t toan giai ma 3.3.4. Ci t AES 3.4 Mt s ch s dng m khi. 3.4.1. Ch bng tra m in t 3.4.2. Ch m mc xch 3.4.3. Ch m phn hi 1 3 3 1 3 3 1 0,5 0,5 Chng IV. H thng m vi kha cng khai.166721 4.1. Khi nim kha cng khai. 4.1.1. c trng v ng dng ca h m kha cng khai. 4.1.2. Nguyn tc cu to h kha cng khai 4.2. Gii thiu mt s gii thut PKC ph bin. 4.1.1. H m Trapdoor Knapsack. 4.1.2. H m RSA 1 1 2 1 3 2 4.1.3. H m ElGamal Kim tra 23 1 Chng V. Ch k in t v hm bm.127500 5.1. Ch k in t. 5.1.1. nh ngha. 5.1.2. ng dng ca ch k in t 5.2. Gii thi u m t sh ch ky i n t 5.2.1. H ch ky i n t RSA 5.2.2. H ch ky i n t ElGamal 5.2.3. Chu n ch ky i n t DSA 5.3. Hm bm. 5.3.1. nh ngha. 5.3.2. Sinh ch k in t vi hm bm 5.4. M t sham bm thng du ng 5.4.1. Hm bm MD5 5.4.2. Hm bm SHA1 0,5 3 0,5 3 2 1,5 1,5 Chng VI. Qun l kha trong h thng mt m85300 6.1. Qun l kha i vi h SKC 6.1.1. Gii thiu phng php qun l kha. 6.2. Qun l kha trong cc h PKC 6.2.1. Giao thc trao chuyn kha Needham Schoeder 6.2.2. Giao thc trao i khoa Diffie-Hellman 6.2.3. Giao thc Kerberos 1 1 1 1 1 1 2 Chng VII. Giao thc mt m63201 7.1. Khi nim giao thc mt m 7.1.1. nh ngha giao thc mt m 7.1.2. Mc ch giao thc mt m. 7.1.3. Cc bn tham gia vo giao thc mt m 7.2. Tm hiu thit k cc giao thc mt m in hnh 7.2.1. Mt s dng tn cng i vi giao thc mt m. 7.2.2. Gii thiu mt s giao thc mt m. 7.3. Kim tra. 1 2 2 1 Nhim v ca sinh vin: Ln lp y v chp hnh mi quy nh ca Nh trng. Ti liu hc tp: 1.PhannhDiu.LthuytmtmvAntonthngtin.ihcQucGiaH Ni. 2. Douglas R. Stinson. Cryptography Theory and practice. CRC Press. 1995. 3.A.Menezes,P.VanOorschot,andS.Vanstone.HandbookofApplied Cryptography. CRC Press. 1996. 4.William Stallings.CryptographyandNetworkSecurityPrinciplesandPractices, Fourth Edition. Prentice Hall. 2005. 5. MichaelWelschenbach. Cryptography in C and C++. Apress. 2005. Hnh thc v tiu chun nh gi sinh vin: - Sinh vin phi lm cc bi kim tra trong qu trnh hc v thc hnh. Thi vn p. - Sinh vin phi bo m cc iu kin theo Quy ch ca Nh trng v ca B. Thang im : Thang im 10. im nh gi hc phn:Z = 0,3 X + 0,7 Y. MUC LUC L I NO I U .................................................................................................................... 1 CHNG I: GI I THI U .................................................................................................. 2 1. An toan bao m t thng tin va m t ma ho c ................................................................. 2 2. Khai nim h thng va tai san cua h thng .............................................................. 2 3. Cac mi e doa i vi mt h thng va cac bi n phap ngn ch n ........................... 2 4. Muc tiu va nguyn tc chung cua an toan bao mt thng tin ................................... 3 5. M t ma ho c (cryptology) ............................................................................................ 4 6. Khai nim h ma mt (CryptoSystem) ....................................................................... 4 7. M hinh truy n tin c ban cua m t ma ho c va lu t Kirchoff ....................................... 5 8. S l c vli ch s m t ma ho c .................................................................................. 6 9. Phn loa i cac thu t toan m t ma ho c ......................................................................... 8 10. M t sng du ng cua m t ma ho c ........................................................................... 8 CHNG II: C STOAN HOC ................................................................................... 10 1. Ly thuyt thng tin ................................................................................................... 10 1.1. Entropy ............................................................................................................. 10 1.2. T c cua ngn ng. (Rate of Language) ....................................................... 11 1.3. Tinh an toan cua h thng ma hoa ................................................................... 11 1.4. Ky thut ln xn va rm ra (Confusion and Diffusion)..................................... 12 2. Ly thuyt phc tap .............................................................................................. 13 2.1. an toan tinh toan ......................................................................................... 14 2.2. an toan khng iu kin .............................................................................. 14 3.3. H mt tich ....................................................................................................... 16 3. Ly thuyt toan hoc ................................................................................................... 17 3.1. Modulo sho c .................................................................................................. 17 3.2. Snguyn t.................................................................................................... 17 3.3. c schung ln nh t ..................................................................................... 17 3.4. Vanh ZN (vanh ng d module N) ................................................................... 18 3.5. Ph n t nghi ch ao .......................................................................................... 18 3.6. Ham phi le ..................................................................................................... 19 3.7. Th ng d b c hai.............................................................................................. 19 3.8. Thu t toan luy tha nhanh ................................................................................ 20 3.9. Thu t toan clit m r ng .................................................................................. 21 3.10. Phng trinh ng d b c nh t 1 n .............................................................. 22 3.11. i nh ly ph n d Trung Hoa. ............................................................................ 22 4. Cac thut toan kim tra s nguyn t. ..................................................................... 23 4.1. M t sky hi u toan ho c .................................................................................... 23 4.2. Thu t toan Soloway-Strassen ........................................................................... 25 4.3. Thu t toan Rabin-Miller..................................................................................... 26 4.4. Thu t toan Lehmann. ........................................................................................ 26 5. Bai tp ..................................................................................................................... 26 CHNG III: CAC H MA KHOA BI MT ...................................................................... 28 1. Cac h ma c in ................................................................................................... 28 1.1. Hma hoa thay th(substitution cipher) ........................................................... 28 1.2. Hma Caesar .................................................................................................. 28 1.3. Hma Affine ..................................................................................................... 29 1.4. Hma Vigenere ................................................................................................ 30 1.5. Hma Hill ......................................................................................................... 30 1.6. Hma i ch(transposition cipher)................................................................. 32 2. Cac h ma khi ....................................................................................................... 34 2.1. Mt ma khi ...................................................................................................... 34 2.2. Chun ma hoa d liu DES (Data Encryption Standard) .................................. 35 2.3. Cac yu im cua DES ..................................................................................... 51 2.4. Triple DES (3DES) ............................................................................................ 52 2.5. Chu n ma hoa cao c p AES ............................................................................. 54 2.6. Cac c ch, hnh thc s dung cua ma ha khi (Mode of Operation) ............. 68 3. Bai tp ..................................................................................................................... 72 CHNG IV: CAC H MA MT KHOA CNG KHAI...................................................... 77 1. Khai nim h ma mt kha cng khai ...................................................................... 77 2. Nguyn t c c u ta o cua cac hma m t khoa cng khai .......................................... 78 3. M t shma khoa cng khai .................................................................................. 78 3.1. Hma knapsack ............................................................................................... 78 3.2. Hma RSA ....................................................................................................... 79 3.3. Hma El Gamal ............................................................................................... 83 3.4. Cac h ma mt da trn cac ng cong Elliptic ............................................. 85 4. Bai tp ..................................................................................................................... 96 CHNG V: CHKYI N TVAHA M BM ............................................................ 101 1. Ch ky i n t ....................................................................................................... 101 1.1. Khai nim v ch ky in t ........................................................................... 101 1.2. H ch ky RSA ............................................................................................... 102 1.3. H ch ky ElGammal ...................................................................................... 103 1.4. Chun ch ky in t (Digital Signature Standard) ......................................... 106 1.5. M hinh ng du ng cua ch ky i n t ................................................................ 108 2. Ham Bm (Hash Function) .................................................................................... 109 2.1. Khai nim ....................................................................................................... 109 2.2. c tinh cua ham Bm ................................................................................... 109 2.3. Birthday attack ................................................................................................ 110 2.4. Mt s ham Bm ni ting .............................................................................. 111 2.5. Mt s ng du ng cua ham Bm ...................................................................... 118 3. Bai tp ................................................................................................................... 119 CHNG VI: QUAN LY KHOA ..................................................................................... 120 1. Quan ly khoa trong cac mang truyn tin ................................................................ 120 2. Mt s h phn phi khoa ..................................................................................... 120 2.1. S phn phi khoa Blom ........................................................................... 120 2.2. H phn phi khoa Kerberos .......................................................................... 122 2.3. H phn phi khoa Diffe-Hellman ................................................................... 123 3. Trao i khoa va thoa thun khoa ......................................................................... 124 3.1. Giao thc trao i khoa Diffie-Hellman ........................................................... 124 3.2. Giao thc trao i khoa Diffie-Hellman c chng ch xac nhn ....................... 125 3.3. Giao thc trao i khoa Matsumoto-Takashima-Imai ...................................... 126 3.4. Giao thc Girault trao i khoa khng chng ch ............................................ 127 4.Bai tp .................................................................................................................... 128 CHNG VII: GIAO TH C MT MA........................................................................... 130 1. Giao thc .............................................................................................................. 130 2. Muc ich cua cac giao thc ................................................................................... 130 3. Cac bn tham gia vao giao thc (the players in protocol) ...................................... 131 4. Cac dang giao thc ............................................................................................... 132 4.1. Giao thc c trong tai ..................................................................................... 132 4.2. Giao thc c ngi phn x ........................................................................... 133 4.3. Giao thc tphn x ..................................................................................... 134 5. Cac dang tn cng i vi giao thc ..................................................................... 134 TAI LIU THAM KHAO.................................................................................................. 136 Danh mc hnh v DANH MUC HI NH VEHnh 1.1: M hnh c ban cua truyn tin bao mt .............................................................. 5 Hnh 3.1: Chu n ma hoa d li u DES ............................................................................. 36 Hnh 3.2: S ma hoa DES .......................................................................................... 38 Hnh 3.3: S mt vng DES ....................................................................................... 39 Hnh 3.4: S tao khoa concua DES .......................................................................... 41 Hnh 3.5: S ham f ..................................................................................................... 43 Hnh 3.6: S ham m rng (E) ................................................................................... 44 Hnh 3.7: Triple DES ....................................................................................................... 53 Hnh 3.8: Cac trang thai cua AES .................................................................................... 56 Hnh 3.9: Thu t toan ma ha va giai ma cua AES ........................................................... 59 Hnh 3.10: Ham ShifftRows() ........................................................................................... 62 Hnh 3.11: Ham MixColumns cua AES ............................................................................ 63 Hnh 3.12: Ham AddRoundKey cua AES ......................................................................... 63 Hnh 3.13: Ham InvShiftRows() cua AES ......................................................................... 66 Hnh 3.14: C chECB ................................................................................................... 69 Hnh 3.15: ChCBC ................................................................................................... 70 Hnh 3.16: Ch CFB ................................................................................................... 71 Hnh 4.1: M hinh s du ng 1 cua cac h ma kha cng khai PKC .................................. 78 Hnh 4.2: M hinh s du ng 2 cua cac h ma kha cng khai PKC .................................. 78 Hnh 4.3: M hinh ng du ng lai ghep RSA vi cac hma kh i ........................................ 83 Hnh 4.4: Cac ng cong Elliptic trn trng sth c ................................................... 87 Hnh 4.5: Hnh biu din E24(g4, 1) .................................................................................. 92 Hnh 4.6: Phng phap trao i khoa Diffie-Hellman d a trn ECC ................................ 94 Hnh 5.1: M hinh ng du ng cua ch ky i n t ........................................................... 108 Hnh 5.2: S ch ky s dung ham Bm ................................................................... 109 Hnh 5.3: S vng lp chinh cua MD5 ...................................................................... 112 Hnh 5.4: S mt vng lp MD5 ............................................................................... 113 Hnh 5.5: S mt vng lp cua SHA ......................................................................... 117 Danh mc bng DANH MUC BA NG Bang 2.1: Bang bc cua cac phn t trn Z*21 ................................................................. 19 Bang 2.2: Bang luy tha trn Z13 ..................................................................................... 20 Bang 3.1: Bang anh s cac ch cai ting Anh ............................................................... 29 Bang 3.2: Ma hoa thay i vi tri ct ................................................................................. 32 Bang 3.3: Ma ha theo mu hnh hoc .............................................................................. 33 Bang 3.4: Vi du ma ha theo mu hnh hoc .................................................................... 33 Bang 3.5: Ma ha hoan vi theo chu ky ............................................................................ 34 Bang 3.6: Bang hoan vi IP ............................................................................................... 39 Bang 3.7: Bang hoan vi ngc IP-1 ................................................................................. 39 Bang 3.8: Bang PC-1 ...................................................................................................... 41 Bang 3.9: Bang dich bit tai cac vng lp cua DES ........................................................... 42 Bang 3.10: Bang PC-2 .................................................................................................... 42 Bang 3.11: Bang m ta ham m rng E .......................................................................... 44 Bang 3.12: Hp S1 ........................................................................................................... 45 Bang 3.13: Hp S2 ........................................................................................................... 45 Bang 3.14: Hp S3 ........................................................................................................... 45 Bang 3.15: Hp S4 ........................................................................................................... 46 Bang 3.16: Hp S5 ........................................................................................................... 46 Bang 3.17: Hp S6 ........................................................................................................... 46 Bang 3.18: Hp S7 ........................................................................................................... 46 Bang 3.19: Hp S8 ........................................................................................................... 46 Bang 3.20: Bang hoan vi P .............................................................................................. 47 Bang 3.21: Vi du v cac bc thc hin cua DES .......................................................... 50 Bang 3.22: Cac kha yu cua DES ................................................................................. 51 Bang 3.23: Cac kha na yu cua DES .......................................................................... 51 Bang 3.24: Qui c m t st vi t t t va thu t ng cua AES .......................................... 54 Bang 3.25: Bang biu din cac xu 4 bit ......................................................................... 56 Bang 3.26: Bang dai kha cua AES ............................................................................ 57 Bang 3.27: Bang th S-Box cua AES .............................................................................. 61 Bang 3.28: Bang th cho ham InvSubBytes() .................................................................. 66 Bang 4.1: T c cua thu t toan Brent-Pollard ................................................................ 81 Bang 4.2: Bi u di n cua t p E23(1, 1) ............................................................................. 89 Bang 4.3: Bang so sanh cac h ma ECC vi h ma RSA ................................................ 95 Li noi u 1 L I NO I U Ttrccngnguynconngiaphaiquantmtiviclamthnaoam bao an toan bi mt cho cac tai liu, vn ban quan trong, c bit la trong lnh vc qun s,ngoai giao.Ngaynayvisxuthincua maytinh,cac tailiuvnban giytva cacthngtinquantrongucshavaxlytrnmaytinh, ctruynitrong mt mi trng ma mc inh la khng an ton. Do yu cu v vic c mt c ch, giai phap bao v s an toan va bi mt cua cac thng tin nhay cam, quan tro ng ngy cng tr nn cp thit. Mt ma hoc chinh la nganh khoa hoc am bao cho muc ich nay. Kh cth thymt ngdungTin ho ccchnolaikhngsdung cacthuttoan maha thng tin. Tai liu nay da trn nhng kinh nghim va nghin cu ma tac gia a c rt, thu thp trong qua trnh giang day mn hoc An toan va Bao mt Thng tin tai khoa Cng ngh Thng tin, ai hoc Hang hai Vit nam. Vi bay chng c chia thanh cac chu khac nhau t c s toan hoc cua mt ma hoc cho ti cac h ma, cac giao thc mt ma, hy vong s cung cp cho cac em sinh vin, cac ban c gia mt tai liu b ich. Mc d a rtcgngsongvnkhngtranhkhimtsthiust,hyvongsccacbanb ng nghip, cc em sinh vin, cac ban c gia gp y chn thanh ti c th hoan thin hn na cu n sach ny. Xin gi li cam n chn thanh ti cac ban b ng nghip , nhng ngi thn a lun ng vin,gp y cho ti trong qua trnh bin soan . Xin gi li cam n ti Tha c sy Nguy n inh Dng, ngi a o c va cho nhng nh n xet , gp y qui bau cho phn vit vhma khoa cng khai d a trn cac ng cong Elliptic. Xin gi li cam n su s c ti Thac sy Pham Tun at , ngi a hi u inh m t cach ky cang va cho r t nhi u nh n xet c gia tri cho ban thao cua cun sach nay .Cu i cung xin gi li cam n ti Banchu nhim khoa Cng ngh Thng tin, c bi t la Ti n sy L Qu c i nh chu nhim khoa, a lun tao iu kin t t nh t, gip cu n sach nay c th hoan thanh. Hi phng, thng 12 nm 2007 Tc gi Nguyn Hu Tun Chng I: Gii thi u 2 CHNG I: GI I THI U 1. An toan bao m t thng tin va m t ma ho c Trai qua nhiu th ky hang loat cac giaothc (protocol) va cac c ch(mechanism) a c ta o ra ap ng nhu c u an toan bao m t thng tin khi ma no c truy n tai trn cac phng ti n v t ly (gi y, sach, bao ). Thng thi cac mu c tiu cua an toan bao m t thng tin khng tha t c n u chi n thu n d a vao cac thu t toan toan ho c va cac giao thc, ma at c iu nay i hi cn c cac ky thut mang tinh thu tuc va stn tro ng cac i u lu t . Ch ng ha n sbim t cua cac bc th tay la do sphn phat cac la th a c ng du bi mt dich vu th tin a c chp nhn . Tinh an toan v m t v t ly cua cac la th la ha n ch (n c th bi xem trm ) nn am bao sbi m t cua bc th phap lut a a ra qui inh : vi c xem th ma khng c s ng y cua chu nhn hoc nhng ngi c thm quyn la pham phap va s bi trng phat .i khi muc ich cua an toan bao mt th ng tin la i a t cnh chinh phng ti n v t ly mang chng, ch ng ha n nh ti n gi y oi hoi phai c in b ng loa i m c va gi y t t khng bi lam gia. Vm t y tng vi c lu gi thng tin la khng co nhi u thay i ang kqua thi gian. Ngay xa thng tin thng c lu va vn chuyn trn giy t , trong khi gi y chng c lu di dang s ha va c vn chuyn bng cac h thng vin thng ho c cac hth ng khng dy .Tuy nhin sthay i ang k n y chinh la kha nng sao chep va thay i thng tin. Ngi ta co thta o ra hang ngan m u tin gi ng nhau va khng th phn bit c n vi ban gc . Vi cac tai li u lu tr va v n chuy n trn gi y i u nay kho khnhn nhi u. Va iu cn thit i vi mt xa hi ma thng tin hu h t c lu tr va v n chuy n trn cac phng ti n i n t chinh la cac phng ti n am bao an toan bao m t thng tin c l p vi cac phng ti n lu tr va vn chuyn vt ly cua n .Phng ti n o chinh la m t ma ho c ,m t nganh khoa ho c co li ch s lu i d a trn n n tang cac thu t toan toan ho c, sho c, xac sut va cac mn khoa hoc khac. 2. Khi nim h thng va tai sn cua h thng Khai nim h thng :Hth ng la m t t p h p cac may tinh g m cac thanh ph n ph n cng, ph n m m va d li u lam vi c c tich luy qua thi gian. Tai san cua h thng bao gm: -Ph n cng -Ph n m m -D li u -Cac truyn thng gia cac may tinh cua h thng -Mi trng lam vi c -Con ngi 3. Cc mi e doa i vi mt h thng va cc bin php ngn chn Co 3 hinh thc chu yu e doa i vi h thng: Chng I: Gii thi u 3 -Pha hoai: ke th pha hng thit bi phn cng hoc phn mm hoat ng trn h th ng. -Sa i: Tai san cua h thng bi sa i trai phep. i u nay thng lam cho hth ng khng lam ung chc nng cua no.Ch ng ha n nh thay im t kh u, quy n ngi dung trong hth ng lam hokhng thtruy c p vao hth ng lam vic. -Can thi p :Tai san bi truy cp bi nhng ngi khng c thm quyn .Cac truy n thng th c hi n trn hth ng bi ngn ch n, sa i. Cac e doa i vi mt h thng thng tin c th n t nhiu ngun va c thc hi n bi cac i t ng khac nhau . Chng ta c th chia thanh3 loai i tng nh sau : cac i tng t ngay bn trong h thng (insider), y la nhng ngi co quy n truy c p h p phap i vi hth ng ,nhng i t ng bn ngoai hth ng(hacker,cracker), thng cac i t ng nay t n cng qua nhng ng k t n i vi hth ng nh Internet ch ng ha n, va th ba la cac ph n m m (ch ng ha n nh spyware, adware ) chay trn h th ng. Cc bin php ngn chn: Thng co 3 bi n phap ngn ch n: -i u khi n thng qua ph n m m : d a vao cac c chan toan bao m t cua hth ng n n (hi u hanh), cac thut toan mt ma hoc -i u khi n thng qua ph n cng :cac c ch bao mt ,cac thut toan mt ma hoc c cng ha s dung -i u khi n thng qua cac chinh sach cua tchc : ban hanh cac qui i nhcua t chc nh m am bao tinh an toan bao m t cua hth ng. Trong mn ho c nay chung ta t p trung xem xet cac thu t toan m t ma ho c nh la m t phng ti n c ban, chu yu am bao an toan cho h thng. 4. Mc tiu va nguyn t c chung cua an toan bao m t thng tin Ba mu c tiu cua an toan bao m t thng tin: Tinh bi mt: Tai san cua h thng ch c truy cp bi nhng ngi c thm quy n.Cac loai truy cp gm c : o c (reading), xem(viewing),in n(printing), s du ng chng trinh, ho c hi u bi t vst n ta i cua m t i t ng trong tchc .Tinh bi mt c th c bao vnh vi c ki m soat truy c p(theo nhi u ki u khac nhau ) ho c nh cac thu t toan ma ha d liu. Ki m soat truy c p chi co th c th c hi n vi cac hth ng ph n cng v t ly. Cn i vi cac d liu cng cng th thng phng phap hiu qua la cac phng phap cua mt ma hoc. Tinh toan ven d li u: tai san cua h thng ch c thay i bi nhng ngi c thm quyn. Tinh sn dng: tai san lun sn sang c s dung bi nhng ngi c thm quy n. Hai nguyn t c cua an toan bao m t thng tin: Chng I: Gii thi u 4 Vi c th m i nh vbao m t pha i la kho va c n tinh ti t t ca cac tinh hu ng , kha nng tn cng c th c thc hin. Tai san c bao v cho ti khi ht gia tri s dung hoc ht y ngha bi mt. 5. M t ma ho c (cryptology) M tma hoc bao gm hai lnh vc :ma ha(cryptography)va tham ma (cryptanalysis-codebreaking) trong o: Ma ha: nghin cu cac thu t toan va phng thc am bao tinh bi m t va xac thc cua thng tin(thng la di da ng cac vn ban lu tr trn may tinh ). Cac san ph m cua linh v c nay la cac hma m t , cac ham bm, cac h ch ky in t , cac c chphn ph i, quan ly kha va cac giao thc mt ma. Tham ma: Nghin cu cac phng phappha ma hoc tao ma gia . San phm cua lnh vc nay la cac phng phap tham ma , cac phng phap gia mao ch ky ,cac phng phap t n cng cac ham bm va cac giao thc m t ma. Trong gii ha n cua mn ho c nay chung ta chu y u t p trung vao tim hi u cac v n ma ha vi cac h ma mt, cac ham bm, cac h ch ky in t, cac giao thc mt ma. Ma hoa(cryptography) l mt ngnh khoa hc ca cc phng php truyn tin bo mt. Trong ting Hy Lp, Crypto (krypte) co ngha l che du hay o ln, cn Graphy (grafik) co ngha l t. [3] Ngi ta quan nim rng: nhng t, nhng ky t cua ban vn ban gc c th hiu cscuthanhnnbanr(P-Plaintext),thng thi y la cac oa n vn ban trong m t ngn ng nao o; cn nhng t, nhng ky t dang bi mt khng th hiu c th c goi la ban ma (C-Ciphertext). C 2 phng thc ma hoa c ban: thay th va hoan vi: Phng thc ma hoa thay th la phng thc ma hoa ma tng ky t gc hay mt nhm ky t gc cua ban r c thay th bi cac t, cac ky hiu khac hay kt hp vi nhau cho ph hp vi mt phng thc nht inh va khoa. Phng thc ma hoa hoan vi la phng thc ma hoa ma cac t ma cua ban r c sp xp lai theo mt phng thc nht inh. Cac h ma m t thng s du ng k t h p ca hai ky thu t nay. 6. Khi nim h ma mt (CryptoSystem) Mt h ma mt l b 5 (P, C, K, E, D) tho man cc iu kin sau: 1)P l khng gian bn r: l tp hu hn cc bn r co th co. 2)C l khng gian bn ma: l tp hu hn cc bn ma co th co. 3)Kl kkhng gian kho: l tp hu hn cc kho co th co. 4)ivimikeK,comtquytcmahoek eEvmtquytcgiima tng ng dk e D. Vi mi ek: P C v dk: C P l nhng hm m dk(ek(x)) = x cho mi bn r x e P. Hm gii ma dk chinh l nh x ngc ca hm ma hoa ek [5] Chng I: Gii thi u 5 Thng thi khng gian cac ban ro va khnggian cac ban ma la cac vn ban c tao thanh t mt b ch caiA nao . o co thla bch cai ti ng Anh, bma ASCII, bma Unicode hoc n gian nht la cac bit 0 va 1. Tinh cht 4 la tinh cht quan trong nht cua ma hoa. Ni dung cua n ni rng nu ma hoabng ek va ban ma nhn c sau c giai ma bng ham dk th kt qua nhn c phai la ban r ban u x. R rang trong trng hp nay, ham ek(x) phai la mt n anh, nu khng th ta s khng giai ma c. V nu tn tai x1 v x2 sao cho y = ek(x1) = ek(x2) th khi nhn c ban ma y ta khng bit n c ma t x1 hay x2. Trong mt h mt bt ky ta lun c |C| |P| v mi quy tc ma hoa la mt n anh. Khi |C| = |P| th mi ham ma hoa la mt hoan vi. 7. M hinh truy n tin c ban cua m t ma ho c va lut Kirchoff M hinh truy n tin thng thng : Trong m hinh truy n tinthng thng thng tin c truy n (v n chuy n) t ngi gi n ngi nh n c th c hi n nh m t knh v t ly (ch ng ha n nh vi c gi th) c coi la an toan. M hnh truy n tin c ban cua m t ma ho c: Hnh 1.1: M hnh c ban cua truyn tin bao mt y la m hnh c ban cua truyn tin bao mt. Khac vi truyn tin thng thng, c cacyutmicthmvaonhkhainimkeich(E-Enemy),cckhomhov giai ma K am bao tinh bao mt cua thng tin cn truyn i. Trong m hinh nay ngi gi S (Sender) mun gi mt thng i p X(Message la m t ban ro) ti ngi nhn R (Receiver) qua mt knh truynkhng an toan(Insecured Channel), ke ich E (Enemy) c th nghe trm, hay sa i thng tin X. V vy, S s dung phep bin i, tc ma hoa (E-Encryption) ln thng tin X dang oc c (Plaintext) taoramtoanvn ban cmhoY(C-Ciphertext)khng th hi u ctheomt quy lut thng thng s du ng m t thng tin bi m tc goi la khoa K1 (Key), kho K1 chinh la thng s iu khin cho phep bin i t ban ro X sang banm Y (ch cc bn tham gia truyn tin S va R mi c thbi t khoa nay). Giai ma (D-Decryption) l qu trnh ngc lai cho phep ngi nhn thu c thng tin X ban u t oan ma hoa Y s du ng kha giai ma K2 (ch y la kha giai ma va kha ma ha c th khac nhauho c la m t ty thu c vao hma s du ng). Cac phep bin i c s dung trong m hnh truyn tin trn thuc v mt h ma m t (Cryptosytem) nao . XYYX Sender Encrypt Insecured Channel Decrypt Receiver K1 K2 Enemy Chng I: Gii thi u 6 Qua trnh ma ha va giai ma yu cu cac qua trnh bin i d liu t dang nguyn thuy thanh in put chovi c ma hoa va chuy n output cua qua trinh giai ma thanh ban ro. Cac qua trnh nay la cac qua trnh bin i khng kha va c goi la cac qua trnh encode va decode. Theo lu t Kirchoff(1835 - 1903) (mt nguyn t c c ban trong m ho) th: ton b c ch ma/gii ma tr kho l khng bi mt i vi k ch [5].R rang khi i phng khng bit c h ma mt ang s dung thu t toan ma hoa gi th vic tham ma s rt kh khn. Nhng chng ta khng th tin vao an toan cua h ma mt ch da vao mt gia thit khng chc chn la i phng khng bit thu t toan ang s dung . V vy, khi trnh bay mt h mt bt ky ,chng ta u gia thit h mt c trnh bay di lu t Kirchoff. Y nghia cua lut Kirchoff : s an toan cua cac h ma mt khng phai da vao s phc ta p cua thu t toan ma hoa s du ng. 8. S lc vli ch s m t ma ho c M t ma ho c la m t nganh khoa ho c co m t li ch s khoang4000nm. Cac c vt cua nganh khao cho c thu c a cho th y i u nay . Nhng ngi Ai c p ca i a s dung cac ch tng hnh nh la mt dang ma ha n gian nht trn cac bia m cua ho . Cac tai liu vit tay khac cung cho thy cac phng phap maha n gian u tin ma loai ngi a s dung la cua ngi Ba T c va ngi Do Thai c. Tuy v y co thchia li ch s m t ma ho c thanh hai thi ky nh sau: Thi ky ti n khoa ho c :T trc cng nguyn cho ti nm1949.Trong giai oa n nay mt ma hoc c coi la mt ngh thut nhiu hn la mt mn khoa hoc mc d a c ng du ng trong th c t . Lich s cua mt ma hoc c anh du vao nm1949 khi Claude Shannon a ra ly thuyt thng tin . Sau thi ky nay m t loa t cac nghin cu quan tro ng cua nghanh m t ma hoc a c thc hin chng han nh cac nghin cu v ma khi , sra i cua cac hma m t khoa cng khai va ch ky i n t. Qua nhi u thky phat tri n cua m t ma ho c chu y u c phu c vucho cac mu c ich qun s (gian ip,ngoai giao,chi n tranh ).M t vi dui n hinh la2000nm trc y hoang La ma Julius Caesar a tng s du ng m tthu t toan thay thn gian ma ngay nay c mang tn ng trong cuc chin tranh Gallic. Tac phm A manuscript on Deciphering Cryptography Messages cua Abu al -Kindi c vit vao th ky th 9 c tim th y ta i Istabul vao nm 1987 a cho th y nhng nha khoa ho c Ar p la nhng ngi u tin a phat tri n cac phng phap tham ma d a vao phn tich t n sxu t hi n cua cac ky t i vi cac hma thay thn m(m t phng phap c s dung rng rai trong thi ky Trung cdo n gian va kha hi u qua). chu u thi ky Trung c la mt khoang thi gian u am va tm ti cua lich s nn khng co nhi u phat tri n ma nh vvn hoa noi chung va m t ma ho c noi ring . Mt vai s kin c ghi lai bi cac vi linh muc nhng ch c Roger Bacon la ngi thc s a vit v mt ma hoc trong tac phm Secret Work of Art and the Nullity of Magic vao gia nhng nm 1200. Vao thi Trung c mt trong nhng cai tn ni ting nht la Chaucer, ngi a a ra cac cng trnh nghin cu nghim tc u tin v mt ma hoc trong cac Chng I: Gii thi u 7 tac phm cua mnh chng han nh Treatise on the Astrolabe. Trong thi ky Trung c phng Ty cun sach cua Blaise De Vegenere(ngi phat minh ra thu t t oan ma ha thay tha m ti t ) c xem nh la m t tng kt cac kin thc v mt ma hoc cho ti thiimbygi,bao gmca thut toanthay tham titvamtvaiskha t ng.Blaise De Vegenere cung la tac gia cua hma mang t n ng,hma nay a tng c xem la an toan tuy t i va c s du ng trong m t thi gian dai, tuy nhin Charles Babbages a thc hin tham ma thanh cng vao nm1854 nhng iu nay c gi bi mt.M t thut toan tham ma c phat hin clp bi mt nha khoa hoc ngi Ph(thu c nc c ngay nay ) c tn l Friedrich Kasiski . Tuy v y do vic thiu cac thit bi cai tin nn cac bin th cua thut toan ma ha nay vn cn c s dung trong nhng nmucuathky20matiubiunht la vic tham ma thanh cng may in tin Zimmermann cua qun c(m t trong cac ski n tiu bi u cua m t ma ho c ) trong th chin th nht va kt qua la s tham gia cua My vao cuc chin. Vi sxu t hi n cua cac hth ng may tinh ca nhn va mang may tinh cac thng tin vn ban ngay cang c lu tr va x ly nhi u hn trn cac may tinh do o nay sinh yu c u van toan bao m t i vi cac thng tin c lu tr, x ly va truy n gia cac may tinh. Vao u nhng nm 1970 la s phat trin cua cac thut toan ma ha khi u tin : Lucipher v DES .DES sau o a co m t sphat tri n ng du ng r c r cho ti u nhng nm 90. Vaocuinhngnm1970chngkinsphattrincuacacthuttonmha kha cng khai sau khi Whitfield Diffie va Martin Hellman cng bbai bao New Directions inCryptographylam nn tang cho s ra i cua cac h ma kha cng khai va cac h ch ky i n t. Do nh c i m cua cac hma m t khoa cng khai la ch m nn cac hma kh i v n ti p tu c c phat tri n vi cac hma kh i mi ra i thay thcho DES vao cu i thky 20 nh IDEA, AES ho c 3DES (m t cai ti n cua DES). G n y nh tla cac s kin lin quan ticac ham bm MD5 (m t ham bm thu c ho MD do Ron Rivest phat trin )va SHA1.M t nhom cacnha khoa hoc ngi Trung Qu c(XiaoyunWang,YiqunLisaYin,HongboYu)a phat tri ncac phng phap cho phep phat hin ra cac ung cua cac ham bm c s dung rng rai nht trong s cac ham bm nay. y la m t ski n ln i vi nganh m t ma ho c do sng du ng r ng rai va c th xem la cn quan trong hn ban thn cachma m t cua cac ham bm . Do ski n nay cac hang vi t ph n m m ln(nh Microsoft) va cac nha mt ma hoc a khuyn cao cac lp trnh vin s dung cac ham bm manh hn(nh SHA-256, SHA-512) trong cac ng dung. BruceSchneier(m t trong nhng nha m t ma ho c hang u ,tac gia cua h ma Blowfish) a tng noi r ng cac hinh thc t n cng i vi cac hma m t noi ring va t n cng i vi cac hth ng may tinh noi chung se ngay cang t r nn hoan thi n hn Attacks always get better ;they never get worse . va li ch s phat tri n cua m t ma ho c chinh la lich s phat trin cua cac hnh thc tn cng i vi cac h ma mt ang c s du ng. Chng I: Gii thi u 8 9. Phn loa i cac thu t toan m t ma ho c C nhiu cach khac nhau chng ta c th phn loai cac thut toan mt ma hoc s c hoc trong chng trnh. y chng ta s phn loai cac thut toan mt ma hoc d a vao hai loa i tiu chi. Tiu chi th nh t la d a vao cac di ch vuan toan bao m t ma cac thu t toan cung c p, d a vao sl ng khoa s du ng (0, 1, 2) chng ta c cac thut toan ma ha sau: 1.Cac thut toan ma ha kha bi mt tng ng vi cac h ma mt kha bi mt hay khoa i xng SKC(SymmetricKeyCryptosytems),do vai tro cua ngi nh n va ngi gi la nh nhau ,ca hai u c th ma ha va giai ma thng ip ,nh Caesar , DES, AES Khoa s du ng cho cac thu t toan nay la1 kha cho ca vic ma ha va giai ma. 2.Cac thut toan ma ha kha cng khai tng ng vi cac h ma kha cng khai PKC (Public Key Cryptosystems). i khi cac hma nay cn c goi la cac h ma kha bt i xng (Asymmetric Key Cryptosytems). Kha s dung cho cac thut toan nay la2kha,m t cho vi c ma hoa va m t cho vi c giai ma, kha ma ha c cng khai ha. 3.Cac thut toa n ta o ch ky i n t(DigitalSignatureAlgorithms).Cac thut toan tao ch ky in t tao thanh cac h ch ky in t . Thng thng m i hch ky i n t co cung c s ly thuy t vi m t hma m t khoa cng khai nhng vi cach ap dung khac nhau. Trong chng trinh ho c chung ta se ho c m t shch ky i n t phbi n la RSA, ElGammma 4.Cac ham bm (Hash functions). Cac ham bm la cac thut toan ma ha khng kha hoc c kha va thng c s du ng trong cac hch ky i n t ho c cac hma kha cng khai. Tiu chi th hai phn loa i cac thu t toan ma hoa d a trn cach thc x ly input cua thu t toan(tc la ban ro),d a trn tiu chi nay chung ta cohai loa i thu t toan ma hoa sau: 1.Cac thut toan ma ha khi(ch ng ha n nh DES, AES ) x ly ban ro di cac n vi c ban la cac khi c kich thc ging nhau. 2.Cac thut toan ma ha dng (RC4 ) coi ban ro la m t lu ng bit, byte lin tu c. 10. M t sng du ng cua m t ma ho c Ngay nay kh c th tm thy cac ng dung trn may tinhlai khng s du ng ti cac thu t toan va cac giao thc m t ma ho c .T cac ng du ng cho cac may tinhca nhn (Desktop Applications )cho ti cac chng trinh hth ng nh cac hi u hanh (Operating Systems) ho c cac ng du ng ma ng nh Yahoo Messenger ho c cac hc s d li u u co s du ng cac thu t toan ma hoa m t kh u ng i dng bng mt h ma ho c m t ham bm nao o. c bit vi s phat trin manh m cua thng mai in t cac m hnh ch ky in t ngay cang ng vai tr tich cc cho mt mi trng an toan cho ngi dung. Tuy v y chng ta vn c th chia cac lnh vc ng dung cua mt ma hoc thanh cac lnh vc nh nh sau: Chng I: Gii thi u 9 Bao mt(Confidentiality): che d u n i dung cua cac thng i p c trao i trong m t phin truy n thng ho c giao di ch ho c cac thng i p trn m t hth ng may tinh (cac file, cac d liu trong mt c s d liu ). Xac thc ha(Authentication): am bao ngu n g c cua m t thng i p , ngi dng. Toan ven (Integrity): am bao chi co cac tchc a c xac th c hoa mi co ththay i cac tai san cua hth ng cung nh cac thng tin trn ng truy n. Dich vu khng th chi t(Non-Repudiation):Cac bn a c xac thc khng th phu nhn vic tham gia vao mt giao dich hp l. Ngoai ra cn cac dich vu quan trong khac chng han nh ch ky in t , dich vu chng thc danh tinh(Identification) cho phep thay thhinh thc xac th c hoa ngi dng d a trn cac m t kh u b ng cac ky thu t ma nh hnho c di ch vuthng ma i i n t cho phep ti n hanh cac giao di ch an toan trn cac knh truy n thng khng an toan nh Internet. Chng II: C s ton hoc 10 CHNG II: C STOAN HOC hi u c nhng thu t toan s du ng trong cac hma m t , trong cac hch ky i n t cung nh cac giao thc m t ma, chng ta phai c nhng kin thcn n tangc ban v toan hoc, ly thuyt thng tin c s du ng trong m t ma ho c. Chng nay trinh baynhng khai ni m c ban vly thuy t thng tin nh Entropy ,t c cua ngn ng (RateofLanguage),phc ta p cua thu t toan ,an toan cua thu t toan ,va mt ski n thc toan hoc: ng d sho c(modulo),snguyn t ,i nh ly ph n d trung hoa , i nh ly Fermat . . . va cac thut toan ki m tra snguyn t . Nhng v n chinh se c trnh bay trong chng nay gm : - Ly thuyt thng tin - Ly thuyt phc tap - Ly thuyt s hoc.1. Ly thuyt thng tin Nhng khai ni m m u cua ly thuyt thng tin ca ra l n u tin vao nm 1948bi Claude Elmwood Shannon (m t nha khoa ho c c coi la cha cua ly thuy t thng tin). Trong ph n nay chung ta chi c p ti m t schu quan tro ng cua ly thuy t thng tin. 1.1. Entropy Ly thuyt thng tin inh ngha kh i l ng thng tin trong m t thng bao la s bit nh nh t c n thi t ma hoa t t ca nhng nghia co thcua thng bao o. Vi du, trng ngay_thang trong m t c s d li u cha khng qua3 bit thngtin, bi vi thng tin ngay c th ma hoa vi 3 bit d liu: 000 = Sunday 001 = Monday 010 = Tuesday 011 = Wednesday 100 = Thursday 101 = Friday 110 = Saturday 111 is unused N u thng tin nay c bi u di n bi chu i ky tASCII tng ng ,n s chim nhi u khng gian nh hn , nhng cung khng cha nhi u thng tin hn . Tng tnh trng gioi_tinh cua m t c s d li uch cha 1 bit thng tin, n c th lu tr nh mt trong hai xu ky tASCII : Nam, N. Kh i l ng thng tin trong m t thng bao M o bi Entropy cua thng bao o,ky hi u la H(M).Entropy cua thng bao gioi _tinh la1bit, ky hiu H(gioi_tinh)=1,Entropy cua thng bao s ngay trong tun la nh hn 3 bits. Chng II: C s ton hoc 11 Trong trng h p t ngquat,Entropycua mt thng bao la log2n,vi n la skha nng co th(y ngha) cua thng bao. 1.2. T c cua ngn ng. (Rate of Language) i vi mt ngn ng, t c th c t(actual rate) cua ngn ng la: r = H(M)/N trong trng h p nay N la dai cua thng bao va M la mt thng ip c dai N. T c cua ti ng Anh binh thng la 0.28 do o m i ch cai ti ng Anh co 1.3 bit ngha. T c tuy t i(absoluterate)cuam tngn ng la sbits ln nh t c n thi t ma ha cac ky t cua ngn ng . N u co L ky tt rong m t ngn ng, th tc tuyt i la : R = log2L y la sEntropy ln nh t cua m i ky tn le. i vi ting Anh gm26 ch cai, t c tuy t i la log226 = 4.7bits/ch cai. S khng c iu g la ngac nhin i vi t t ca moi ngi rng thc t tc cua ting Anh nh hn nhi u so vi t c tuy t i , va chng ta vn thy rng i vi mt thng bao bng ting Anh c th loai b mt sch cai nhng ngi oc vn c thhi u c. Hi n t ng nay c go i lad tha cua ngn ng (Redundancy) tnhin. Khng chi i vi ti ng Anh ma vi h u h t cac ngn ng tnhin , do c u truc cua ngn ng,do vi c s du ng ngn ng d n ti co m t s ch cai c s dung vi tn su t khng ng u ho c chi co thxu t hi n vi m t c u truc nao o lam cho chung ta v n co thoan c nghia cua cac thng bao n u loa i bo cac ch cai nay. d tha(Redundancy)cua mt ngn ng ky hiu la D va D=Rr.i vi ti ng Anh: D = 1 - .28 = .72 letters/letter D = 4.7 1.3 = 3.4 bits/letter Nh v y m i ch cai co 1.3 bit nghia va 3.4 bit d tha (x p xi 72%). 1.3. Tinh an toan cua hth ng ma hoa Shannon i nh nghia r t ro rang , t m cac m hnh toan hoc anh gia an toan cua cac h ma mt s dung . Muc ich cua ngitham ma la phat hin ra khoas du ng cua h ma (K-Key),ban r(P-PlainText),ho c ca hai .Hn na hoco thhai long vi m t vai thng tin co kha nng vban roP ch ng ha n nh o la m thanhdang s , ho c la mt vn ban ti ng c, ho c la m t bang tinh d liu, v. v . . . Trong h u h t cac l nthamma,ngi tham mathng cg ng thu th p m tsthng tin co kha nng vban r P trc khi b t u. Ho c th bit ngn ng a cs dung ma hoa. Ngn ng nay ch c ch n co sd tha k t h p vi chinh ngn ng o. N u no la m t thng bao gi tiBob,n c th bt u vi"DearBob". oa n vn ban H(M) = log2n Chng II: C s ton hoc 12 "Dear Bob" s la mt kha nng c th hn la m t chu i khng mang y nghia gi ch ng ha n "tm*h&rf". Muc ich cua vi c tham ma la sa nhng t p h p kha nng co thco cua ban ma (C-CipherText) vi m i kha nng co thcua ban ro. Shannon phat tri n ly thuy t cho r ng ,hth ng ma hoa chi an toan tuy t i n u n u skhoa c ths du ngit nhtphai b ng sthng bao co th . Hi u theo m t nghia khac, khoa ti thiu cua h ma phai dai bng thng bao cua hma o. Ngoai trcac h maan toan tuy t i , cacban mathng cha m ts thng tin ung vi ban ro,i u nay la khng thtranh c .M t thu t toan m t ma t t gi cho thngtinbi tit l mc nh nht va m t ngi tham ma gioi sekhai thact t nhng thng tin nay phat hi n ra ban r. Ngithamma s dung s d tha t nhin cua ngn ng lam giam s kha nng co th c cua ban r. Nhi u thng tin d tha cua ngn ng, s d dang hn cho qua trnh tham ma. Chinh v ly do nay ma nhium hinh ma hoa s du ng thu t toan nen ban r giam kich thc vn ban trc khi ma hoa chng. V qua trnh nen lam giam s d tha cua thng bao . Entropy cuam t hma mt la kich thc cua khng gian khoa (Keyspace). H(K) = log2(number of keys ) Shannon cung a ra m t khai ni m go i la Unicity Distance(ky hiu la U) anh gia an toan cua mt h ma mt. i vi mt h ma mt U cua n la: U = H(K)/D y la snho nh t cac ban ma c nthi t co thti n hanh tham ma theo cach th t t ca cac khoa co th (brute-force attack) thanh cng. Ch ng ha n i vi hma thay thn m (nh Caesar) trn bang ch cai ti ng Anh ta se co: H(K)= log226! = 87. D = 3.4 suy ra U = 25.5. i u nay co nghia la n u chung ta co khoang 25 ch cai ban ma chung ta chi co thth khp vi m t ban ro. Khai nim Unicity Distance la mt khai nim mang tinh xac sut n cho chng ta bi t sl ng it nht cac ban ma cn c c th xac inh duy nht1 ban ma ch khng phai la s ban ma u tin hanh tham ma(ch c ch n thanh cng). N u chung ta co sban ma it hn s U th khng th ni la d oan(phepth) cua chng ta la ng . D a vao cng thc nay chng ta thy nu nh d tha cua ngn ng cang gn0 th cang kh tham ma mc d c th la mt h ma rt n gian . Cung da vao cng thc nay suy ra tng tinh an toan cua hma co thtng khng gian khoa cua no. 1.4. Ky thut l n x n va rm ra (Confusion and Diffusion) Theo Shannon, c hai ky thut c ban che du s d tha thng tin trong thng bao gc, o la: sl n x n va s rm ra. Ky thut ln xn (Confusion):che d u m i quan hgia ban ro va ban g c .Ky thu t nay lam th t ba icac cg ng nghin cu ban ma tm kim thng tin d tha va th ng k m u.Phng phap dnh t t h c hi n i u nay la thng quaky thut thay th . M t hma hoa thay thn gian , ch ng ha n hma di ch vong Caesar , d a trn n n Chng II: C s ton hoc 13 tang cua s thay thccch cai cuabanr,ngha la ch cai nay c thay th bng ch cai khac Ky thut rm ra (Diffusion): lam mt i s d tha cua ban r bngcach tng s phu ban ma vao ban r (va kha). Cng vi c tim ki m sd tha cua ngi tham ma s rt mt thi gian va phc tap. Cach n gian nht tao ra s rm ra la thng qua vic i ch(hay con go i la ky thut hon vi). Thng thng cac hma hi n a i thng k t h p ca hai ky thu t thay thva hoan vi tao ra cac thut toan ma ha c an toan cao hn. 2. Ly thuyt phc tap Ly thuyt phc tap cung cp mt phng phap phn tich phc tap tinh toan cua thut toan va cac ky thut ma hoa khac nhau .N so sanh cac thut toan ma hoa, ky thut va phat hin ra an toan cua cac thuttoan . Ly thuyt thng tin a cho chung ta bit rng mt thut ton ma ho co th b bi l . Cn ly thuyt phc ta p cho bit kha nng bi tham ma cua m t hma m t. phc tap thi gian cua thut toan lam t ham cua kich thc d liu input cua thu t toan o. Thu t toan co phc ta p thi gian f (n) i vi mo i n vakich thc inputn, ngha la s bc th c hi n cua thu t toan ln hn f(n) bc. phc tap thi gian thut toan phu thuc vao m hnh cua cac thut toan , scac bc nho hn n u cac hoa t ng ct p trung trong m t bc(ch ng ha n nh cac vng lp, cac li goi ham ). Cac lp cua thut toan, vi phc ta p thi gian la mt ham mu i vi kich thc input c coi la"khng co kha nng th c hi n ".Cac thut toan c phc tap ging nhau c phn loa i vao trong cac lp tng ng . Vi du tt ca cac thut toan c phc ta p lan3 c phn vao trong lp n3 va ky hiu biO(n3). C hai lp tng quat s c la lp P (Polynomial) va lp NP (NonPolynomial). Cac thut toan thuc lp P c phc tap la ham a thc cuakich thc input . N u m i bc ti p theo cua thu t toan la duy nh t thi thu t toan go i la n i nh . T t ca thu t toan thu c lp P n i nh co thi gian gii ha n la P _time, i u nay cho bi t chung s thc hin trong thi gian a thc ,tng ng vi phc ta p a thccua kich thc input. Thu t t oan ma bc tip theo vic tinh toan phai la chon giai phap t nhng gii ha n gia tri cua hoa t ng go i la khng n i nh . Ly thuyt phc tap s du ng cac may c bit m ta c im bng cach a ra kt lun bi cac chun .My Turingla m t may c bi t , may hoat ng trong thi gian ri rac , tai mt thi im n nm trong khoang trang thai y u s cua tt ca cac trang thai c th la hu han . Chng ta c th i nh nghia ham phc ta p thi gian k t h p vi may Turing A.fA(n) = max{m/A k t thuc sau m bc vi u vao w = n3 } y chng ta gia s rng A la trang thai kt thc i vi tt ca cac u vao , v n s tr nn kh khn hn nu cac trang thaikhng n m trong P.May Turing k hng n i nh hoa t ng vi thu t toan NP. May Turing khng n inh c th c mt vai trang Chng II: C s ton hoc 14 thai chinh xac. S(w) la trang thai o s thanh cng ngn nht cua thut toan, (Ngha la s tinh toan dn n trang thai cui cng) Ham s phc tap thi gian cua may Turing khng n inh A c inh ngha :fA(n)=max{1,m/s(w) co m bc i vi w/w=n} mi bc may Turing khng n inh b tri nhiu ban sao cuachinh n nh c m t vai giai phap va tinh toan c l p vi mo i li giai. Cac thut toan thuc lp NP la khng n inh va c th tinh toan trn may Turing khng n i nh trong thi gian P. Tuy nhin khng phai thu t toanma ha cang c phc tap ln th h ma mt s dung thut toan s cang an toan theo nh phat bi u cua lu t Kierchoff. V y co thanh gia an toan cua m thma m t nh thnao ?V n nay a c Claude Shannon tra li vi cac khai ni m van toan cua cac hma m t trong m t bai bao c tiu Ly thuyt thng tin cua cac h thng bao mt (1949). 2.1. an toan tinh ton inh nghia: Mt h mt c gi l an ton v mt tinh ton nu co mt thut ton tt nht ph no th cn it nht N php ton, vi N l mt s rt ln no o. [10] Tuynhintrongthct,khngcmthmtnaochngtlaantoantheoinh nghatrn.Vvy,trnthct,ngitagoihmtlaantoantinhtoannucmt thut toan pha n nhng i hi thi gian ln n mc khng chp nhn c (thu t toan c phc tap ham mu hoc thuc lp cac bai toan c phc tap NP). Mt cach tip cn khac v an toan tinh toan la quy n v mt bai toan a c nghin cu ky va c coi la kh. Vi du nh bai toan phn tich ra tha s nguyn t cua mt s n cho trc c coi la bai toan kh vi n ln,v vy ta c th coi mt h mt da trn bai toan phn tich ra tha s nguyn t la antoan (tt nhin y ch la an toan da vao chng minh mt bai toan khac ch khng phai chng minh hoan chnh v an toan cua h mt). 2.2. an toan khng iu kin inh nghia 1: Mt h mt c coi l an ton khng iu kin khi no khng th b ph ngay c vi kh nng tinh ton khng hn ch. [10] R rang la an toan khng iu kin khng th nghin cu theo quan im phc tap tinh toan v thi gian tinh toan la khng han ch. V vy, y ly thuyt xac sut s c cp nghin cu v an toan khng iu kin. inh nghia 2: Gia s bin X va Y la cac bin ngu nhin. Ky hiu xac sut X nhn gia tri x la p(x) va Y nhn gia tri y la p(y). Xac sut ng thi p(x, y) la xac sut ng thi X nhn gia tri x va Y nhn gia tri y. Xac sut c iu kin p(x/y) la xac sut X nhn gia tri Chng II: C s ton hoc 15 x vi iu kin Y nhn gia tri y. Cac bin X va Y c goi la c lp nu p(x, y) = p(x)p(y) vi moi gia tri c th c cua X va Y. inh ly Bayes: Nu p(y) 0 th ta co: ( ) ( / )( / )( )pxpy xpx ypy= H qu: X, Y l bin c lp khi v ch khi p(x/y) = p(x) vi mi x, y. [5] y,tagiathitrng mt khoacuthchcdngchomtbanma.Kyhiu xac sut tin nghim ban r xut hin la pp(x). Cung gia thit rng khoa K c chon theo mt phn b xac sut nao (thng thng khoa K c chon ngu nhin nn cac khoa s ng kha nng). Ky hiu xac sut khoa K c chon la pk(K).Gia thit rng khoa K va ban r x la cac bin c lp. Hai phn b xac sut trnPv K s tao ra mt phn b xac sut trn C . Ky hiu C(K) la tp cac ban ma c th nu K l kho. C (K) = { eK(x): xeP} Khi vi mi yeC, ta c: C, ( )( ) ( ). ( ( ))K p KKy CKp y p K p d ye= Va xac sut c iu kin pC(y/x) la xac sut y la ban ma vi iu kin ban r la x c tinh theo cng thc sau: ==) ( ,) ( ) / (y d x KK CKK p x y p By gi ta c th tinh xac sut c iu kin pP(x/y) la xac sut x la ban r khi ban ma la y theo inh ly Bayes: , ( )C, ( )( ) ( )( ) ( / )( / )( ) ( ) ( ( ))KP KKx d yPPC K P KKy CKp x p Kp xp y xp x yp y p Kp d y=e= = Lc nay, ta c th inh ngha khai nim v mt hoan thin. Ni mt cach khng hnh thc, mt hoan thin ngha la i phng vi ban ma trong tay cung khng th thu nhn c thng tin g v ban r. Tuy nhin ta s nu inh ngha chinh xac v mt hon thin nh sau: inh nghia: Mt h mt hon thin nu pP(x/y) = pP(x) vi mi xeP v mi yeC. Tc l xc sut hu nghim thu c bn r l x vi iu kin a thu c bn ma l y ng nht vi xc sut tin nghim bn r l x. [5] Chng II: C s ton hoc 16 Hay ni cach khac, mt hoan thin cung tng ng vi pC(y/x)= pC(y)).inh ly Shannon: Gi s (P, C, K, E, D) l mt h mt, khi o h mt t c mt hon thin khi v ch khi |K| |C|. Trong trng hp |K| = |C| = |P|, h mt t mt hon thin khi v ch khi mi kho K c dng vi xc sut bng nhau, bng 1/|K| v vi mi xeP, mi yeC co mt kho K duy nht sao cho eK(x) = y. [5] Nh vy ta thy at hoan thin i hi khoa phai rt dai, do vy rt kh khn trong vic chuyn giao khoa gia hai bn truyn tin. V vy trong thc t, chng ta khng th c an toan khng iu kin ma chng ta ch cn an toan thc t, tc la phu thuc vao thng tin va thi gian cn bao mt bng cach s dung cac h mt khac nhau vi bao mt khac nhau. 3.3. H mt tich Mt y tng khac c Shannon a ra la y tng tao ra cac h mt mi da trn cach mtcubngcachtao tichcuachng.ylamtytng quan trong trongvic thit k cac h mt hin ai ngay nay. n gian, y chng ta ch xet cac h mt trong C = P, cac h mt loai nay goi la t ng cu. Gia s S1 = (P, C, K1, E1, D1) va S2 = (P, C, K2, E2, D2) la cac h mttngcuccngkhnggianbanrvabanma.Khihmttichcinh ngha la h mt S = (P, C, K1K2 ,E ,D). Khoa cua h mt tich K = (K1, K2) trong K1 e K1, K2 e K2. Cac ham ma hoa va giai ma c xac inh nh sau: )) ( ( ) (1 2 2 1) , (x e e x eK K K K=)) ( ( ) (2 1 2 1) , (x e d x dK K K K=Nu chng ta ly tich cua S vi chinh n, ta c h mt (SS) (ky hiu S2). Nu ly tich n ln th kt qua la Sn. Ta goi Sn la mt h mt lp. Nu S2 = S th ta goi h mt la luy ng. Nu S la luy ng th khng nn ly tich lp v bao mt khng tng ln ma khng giankhoalailnhn.ngnhinnuSkhngluyngthtacthlplaiS nhiulntngbaomt.ynaysinhmtvnlalamthnaocmth mt khng luy ng? Ta bit rng nu S1 va S2 la luy ng va giao hoan th S1S2 cung luy ng, n gian v: (S1S2)(S1S2) = S1(S2S1)S2 = S1(S1S2)S2

= (S1S1)(S2S2)= (S1S2) Vy nu mun (S1S2) khng luy ng th cn phai c S1 va S2 khng giao hoan. iu nay c th d dang thc hin bng cach ly tich cua mt h mt theo kiu thay th va mt h mt theo kiu hoan vi. y la ky thut c dng thit k cac h ma hin ai nh ma DES. Chng II: C s ton hoc 17 3. Ly thuyt ton hoc 3.1. Modulo sho c Vc ban ab(mod n)n u a=b+kn trong o k la m t snguyn .N u a va b dng va a nho hn n, chng ta c thgoi a la ph n d cua b khi chia cho n. Ni chung a va b u laph n d khi chia cho n . Ngi ta con go b la th ng d cua atheo modulo n, va a la ng d cua b theo modulo n. Modulo sho c cung gi ng nh sho c binh thng , bao g m cac phep giao hoan , k t h p va phn ph i. M t khac giam m i gia tri trung gian trong su t qua trnh tinh toan. (a+b) mod n = ((a mod n) + (b mod n)) mod n (a- b) mod n = ((a mod n) - (b mod n)) mod n (ab) mod n = ((a mod n) (b mod n)) mod n (a(b + c)) mod n = (((a b) mod n) + ((a c) mod n))mod n Cac phep tinh trong cac h ma m t h u h t u th c hi n i vi m t modulo N nao o. 3.2. Snguyn tSnguyn tla m t sln hn1, nhng chi chia h t cho1 va chinh n , ngoai ra khng con snao no co thchia h t na .S 2la mt s ng uyn t u tin va la snguyn tch n duy nh t . Do v y 7, 17, 53, 73, 2521, 2365347734339 cung la s nguyn t . Sl ng snguyn tla v t n. Hm t ma thng s du ng snguyn tln c 512 bits va th m chi ln hn nh v y. 3.3. c s chung ln nht Hai sa va n c go i la hai snguyn tcng nhau nuchng khng c tha s chung nao khac1, hay noi m t cach khac, n u c schung ln nh t cua a va n la b ng 1. Chng ta c th vi t nh sau : GCD(a,n)=1, (GCD-Greatest Common Divisor) S15 va 28 la hai snguyn tcung nhau, nhng 15 va 27 th khng phai la hai snguyn t cng nhaudo co c schung la1 va 3, ddang th y13 va 500 cung la mt c p snguyn tcng nhau. M t snguyn tse la nguyn tcung nhau vi t t ca cac snguyn khac tr cac b i scua no. M t cach dnh t tinh toan ra c schung ln nh t cua hai sla nh vao thu t toan Euclid. Knuth m ta thu t toan va m t vai m hinh cua thu t toan a c sa i. Di y la oa n ma ngu n trong ngn ng C: /* Thu t toan tim c schung ln nh t cua x va y, gia s x,y>0 */ intgcd(int x, int y) { intg; if(x=j) { if (bj==1) kq = (kq * a) mod N; a = (a * a) mod N; j = j + 1; } return kq; end M t cai t khac b ng ngn ng C nh sau: long modexp(long a, long x, long n) { Chng II: C s ton hoc 21 long r = 1; while (x > 0){ if (x % 2 == 1) /* is x odd? */ r = (r * a) % n; a = (a*a) % n; x /= 2; } return r; } Thu t toan nay cha y khng qua log2(m+1) bc. 3.9. Thu t toan clit m r ng Trong ph n3.3chng ta a bit thut toan clit c dng tm c s chung ln nh t cua ha i snguyn va trong ph n3.7chng ta a bit cach tm mt phn t nghich ao cua m t sb ng cach s du ng thu t toan luy tha nhanh tuy nhin v n co m t thu t toan hi u qu a khac tm phn tnghich ao goi la thut tan clit m rng (do d a trn thu t toan clit). Cac bc cua thut toan nh sau: input: a, N vi GCD(a, N) = 1 output: a-1 begin g0=n, g1 = a, u0 = 1, u1 = 0, v0 = 0, v1 = 1, i = 1; while (gi 0 ) { y = gi-1 div gi; gi+1 = gi-1 y*gi; ui+1 = ui-1 y*ui; vi+1 = vi-1 v*ui; i = i + 1; } x = vi-1; if(x>0) thenreturn x; else return (N+x); end; Chng II: C s ton hoc 22 3.10. Phng trinh ng d b c nh t 1 n Phng trinh ng d b c nh t 1 n la phng trnh c dang: ax b (mod N) trong o a, b e ZN la cac h s cn x la n s. N u nhGCD(a, N) =1 chng ta c thtm a-1 sau o nhn vao2 vcua phng trnh va tm ra nghim mt cach d dang tuy nhin nu g = GCD(a, N) la mt gia tri khac 1 th sao?Khi o bai toan co thv nghi m ho c co nhi u nghi m .Chng ta xet i nh ly sau: Gia s g = GCD(a, N) va nu b chia ht cho g th phng trnh ng d bc nht1 n: ax b (mod N) s c g nghim c dang x ((b/g)x0 + t(n/g)) (mod N) trong o t = 0, , g-1, va x0 la nghim cua phng trnh (a/g)x 1 (mod N/g). 3.11. i nh ly ph n d Trung Hoa. i nh ly ph n d Trung Hoa la m t inh ly quan trong cua s hoc c cac nha toan hoc Trung Quc kham pha ra vao th ky th nht. i nh ly phat bi u nh sau: N u d1, d2, , dk la cac s nguy n i m t nguyn tcung nhau va N= d1d2dk th h phng trnh ng d: x xi (mod di), i=1, 2, , k s c mt nghim thuc vao ZN. Nghi m cua hco tinh theo cng thc sau: 1( / ) (mod )ki i iix N d y x N==trong o yi la cac nghim cua cac phng trnh ng d (N/di) yi 1(mod di). Di y la oa n ma i nh ly ph n d trung hoa trong ngn ng C : int chinese_remainder(int r, int *m, int *u) { int i; int modulus; int n; modulus = 1; for ( i=0; i 0 va z=1 th p khng phai la s nguyn t. 5.t j = j+1. N u j < b va z= p-1 th t z=z2 mod p va tr la i bc 4. 6.N u j = b va z = p-1, th p khng phai la s nguyn t.4.4. Thu t toan Lehmann. M t phng phap n gian hn ki m tra snguyn t c phat tri n c l p bi Lehmann. Sau y la thu t toan vi sbc l p la 100. 1.Chon ngu nhin mt s n kim tra. 2.Ch c ch n r ng n khng chia h t cho cac snguyn tnho nh 2,3,5,7 va 11. 3.Chon ngu nhin 100 sa1, a2, . . . , a100 gia 1 va n-1. 4.Tinh ai(n-1)/2 (mod n)cho t t ca ai = a1. . . a100 . Dng la i n u ba n tim th y ai sao cho phep ki m tra la sai. 5.N u ai(n-1)/2 = 1 (mod n) vi mo i i, th n c th la hp s. N u ai(n-1)/2 = 1 ho c -1 (mod n) vi i b t ky, th n la hp s. N u ai(n-1)/2 = 1 ho c -1 (mod n) vi mo i i = 1, th n la s nguyn t. 5. Bai tp Bai tp2.1: hy tnh 1753 mod 29, hi cn dng it nht la bao nhiu phep nhn tm ra kt qua. Bai tp 2.2: Tnh 876611 mod 899. S du ng m t trong cac ngn ng l p trinh C, C++, Java ho c C# lam cac bai tp sau: Bai tp 2.3: Vi t chng trinh cai t thu t toan tim ph n t nghi ch ao. Bai tp 2.4: Vi t chng trinh cai t thu t toan luy tha nhanh. Bai tp 2.5: Vi t chng trinh giai hphng trinh ng d b c nh t hai n. Bai tp2.6: Vi t chng trinh cai tthu t toan ki m tra snguyn tvi input la m t snguyn nh hn 2000000000. Chng II: C s ton hoc 27 Bai tp2.7: Vi t chng trinh cai t th vi n snguyn ln vi cac thao tac tinh toan c ban: nhn, chia, c ng tr, l y modulo. Bai tp2.8:S du ng th vi n sln( bai tp2.5ho c m t th vi n ma ngu n m) cai t cac thut toan kim tra s nguyn t c trnh bay trong phn4 cua chng 2. Chng III: Cc h ma khoa bi mt 28 CHNG III: CAC H MA KHOA BI MT 1. Cc h ma c in 1.1. Hma hoa thay th(substitution cipher) Hma hoa thay thla hma hoa trong o m i ky tcua ban ro c thay thb ng ky t khac trong ban ma (c thla mt chcai, m t sho c m t ky hi u). C 4 ky thut thay th sau y: 1.Thay thn(A simple substitution cipher): la h trong mt ky t cua ban r c thay b ng m t ky ttng ng trong ban ma. M t anh xa1-1 t ban ro ti ban ma c s dung ma hoa toan b thng ip. 2.Thay th ng m(A homophonic substitution cipher ):gi ng nh hth ng ma hoa thay th n ,ngoai tr mt ky t cua ban r c th c anh xa ti mt trong sm t vai ky t cua ban ma : s anh xa 1-n (one-to-many). Vi du, A c th tng ng vi5,13,25,ho c56,B co thtng ng vi7,19,31, ho c 42, v.v. 3.Thay tha m u t (A polyalphbetic substitution cipher): c ta o nn t nhi u thu t toan ma hoa thay thn. Anh xa 1-1 nh trong trng h p thay thn, nhng co ththay i trong pha m vi m t thng i p . Vi du, c th c nm thut toan ma hoa n khac nhau c s dung ; c bi t thu t toan ma hoan cs du ng thay i theo vi tricua m i ky ttrong ban ro. 4.Thay tha s (A polygram substitution cipher ):la thut toan trong cac kh i ky t c ma hoa theo nhom . y la thu t toan t ng quat nh t , cho phep thay thcac nhom ky tcua vn ban g c .Vi du,ABA co thtng ng vi RTQ, ABB co thtng ng vi SLL, v.v. 1.2. Hma Caesar HmaCaesar la mt h ma hoa thay th nm lam vic trn bang ch cai ting Anh26 ky t(A,B,..., Z).y la hma ci n va n gian nh t a tng c dung trong th c tbi hoang La ma Caesar nn c t theo tn cua vi hoang nay. Khng gian cac ban ro Pla cac thng ip c tao t bang ch cai A ( tin trnh bay chng ta xem y la mt bang ch cai tng quat). Tng tkhng gian cac ban ma C P. Gia s s phn t cua bang ch cai |A| = N. ma hoa ngi ta anh scac ch cai t 0 ti N-1. Khng gian khoa K = ZN. Vi m i khoa K e K ham ma ha va giai ma mt ky t c s th t la i s c thc hin nh sau: Ma ha: EK(i) = (i + k) mod N. Giai ma: DK(i) = (i k) mod N. Hma Caesar vi bang ch cai ti ng Anh se co N = 26 ch cai, bang ch cai c anh snh sau: Chng III: Cc h ma khoa bi mt 29 ABCD...LMN...WXYZ 0123...111213...22232325 Bang 3.1: Bang anh s cac ch cai ting Anh Cac pheptinh toan s hoc c th c hi n trn vanh Z26, skhoa co ths du ng la 26 nhng trn th c tchi co 25 kha c ich. Vi du: vi k=3 (trng h p a c hoang Caesar s du ng), ky t A c thay b ng D, B c thay b ng E, ... , W c thay b ng Z, ... , X c thay b ng A, Y c thay b ng B, va Z c thay bng C.Bang ch cai gc: ABCDEFGHIJKLMNOPQRSTUVWXYZ Bang ch cai dng ma hoa: DEFGHIJKLMNOPQRSTUVWXYZABC Do o ch ng ha n xu ANGLES se c ma hoa thanh DQJOHV. Hma Caesar s du ng phng phap thay thn m nn co hi n t ng go i la phu thuc tn sut xut hin cua ngn ng t nhin. Trong ngn ng tnhin m t sch cai xut hin nhiu hn so vi cac ch cai khac(ch ng ha n trong ti ng Anh cac ch cai xu t hi n nhi u la e, t, i, h ) nn cac ch cai dung thay thcho chung cung xu t hi n nhi u. i u nay co thd n ti h qua la ngi tham ma c th s dung phng phap th thay thcac ky t xu t hi n nhi u trong ban ma b ng cac ky txu t hi n nhi u trn cac vn ban th c t . Trn th c thma Caesar co skhoa it nn hoan toan c th tham ma bng cach th t t ca cac khoa co th(ki u t n cng Brute force). 1.3. Hma Affine Khng gian cac ban ro va ban ma cua hma la cac xu c hinh thanh t m t bang ch cai A, gia s |A| = N. Khi o khng gian khoa cua hma c xac i nh nh sau: K = { (a, b): a, b e ZN, (a, N) = 1} ma hoa ngi ta anh scac ch cai cua bang ch cai t0 ti N1va tin hanh ma ha, giai ma tng ky t (thay th ) theo cac cng thc sau: Ma ha: EK(x) = (a*x + b) mod N. Ky t ban r c s th t la x s c chuyn thanh ky t c s th t la (a*x+b) mod N trong bang ch cai. giai ma ta c n tim a-1 (do (a, N) = 1 nn lun tim c) va tin hanh cng thc giai ma sau: Chng III: Cc h ma khoa bi mt 30 DK(y) = a*(y - b) mod N. Ky t ban ma c s th t la y s c thay th bng ky t c s th t la a*(y - b) mod N trong bang ch cai. C th thy rng i vi mt h ma Affine th s kha c th s dung s la: |K| = C(N) * N. Vi du vi N= 26 tng ng vi bang ch cai ti ng Anh chung ta se c C(26) * 26 = 12 * 26 = 312 kha. Con snay la tng i nho. 1.4. Hma Vigenere Hmanay c t theo tn cua mt nha mt mahocngi Phap Blaise de Vigenre (1523-1596). i vi h ma nay khng gian cac ban ma va ban r cung la cac thng ip c tao thanh t mt bang ch cai A nh trong hma Caesar, cac ch cai c anh s t0 ti N-1 trong o N la sph n t cua bang ch cai.Khng gian khoa K c xac i nh nh sau: Vi m i snguyn dng M , kha c dai Mla mt xu ky t c dai M , K = k1k2kM. ma hoa m t ban ro P ngi ta chia P thanh cac oa n daiM va chuyn thanh sth ttng ng cua chung trong bang ch cai , ch ng ha n X= x1x2xM. Khi ovi c ma ha va giai ma c thc hin nh sau: EK(X) = (x1 + k1, x2 + k2, , xM + kM) mod N DK(Y) = (y1 - k1, y2 - k2, , yM - kM) mod N vi N la sph n t cua bang ch caiva Y = y1y2yM la ban ma. Vi du: xet A la bang ch cai ting Anh , ta co N= 26 gia s kha c dai6 va K = CIPHER, ban r P= THIS CRYPTOSYSTEM IS NOT SECURE . Ta co K= 2 8 15 7 4 17, P = 19 7 8 18 2 17 | 24 15 19 14 18 23 |18 19 4 12 8 18 | 13 14 19 18 4 2 | 20 17 4. Qua trnh ma ha thc hin nh sau: P = 19 7 8 18 2 17 | 24 15 19 14 18 23 |18 19 4 12 8 18 | 13 14 19 18 42 | 20 17 4 K =28 15 7 4 17 | 28157417| 28 1574 17 | 28157417 | 2 8 15 C = 21 15 23 25 6 8 | 0 23 8 21 22 14 | 20 1 19 19 12 9 | 15 22 8 25 8 19 | 22 25 19 V y ban ma la C = VPXZGI AXIVWO UBTTMJ PWIZIT WZT. Vth c ch t hma nay la k t h p cua nhi u ma Caesar ,trong hma Caesar chng ta thay th tng ky t n le th trong h maVigenere nay thay thtng bM ky tlin ti p. Vi m i M chung ta co skhoa co ths du ng la NM, cu th la vi bang ch cai ting Anh s c 26M kha c th s dung. 1.5. Hma Hill Hma hoa nay d a trn lythuy t va i stuy n tinh do Lester S .Hill a ra nm 1929. Ca khng gian ban r va ban ma u lacac xu c thanh lp t mt bang ch cai A nh trong hma Vigenere. Chng III: Cc h ma khoa bi mt 31 Vi m i snguyn M khoa cua hma la m t ma tr nK vung kich thc MxM g m cac phn t la c ac s nguyn thuc ZN trong o N la sph n t cua bang ch cai . i u ki n ma tr n K co ths du ng lam khoa cua hma la K phai la m t ma tr n khng suy bi n trn ZN hay noi cach khac la t n ta i ma tr n nghi ch ao cua ma tr n K trn ZN. Cac ky t cua bang ch cai cung c anh s t 0 ti N-1. ma hoa m t ban ro ngi ta cung chia ban ro o thanh cac xu co dai M , chuy ncac xu nay thanh s th t cua cac ch cai trong bang ch cai di dang mt vect hang M chi u va ti n hanh ma hoa, giai ma theo cng thc sau: Ma ha: C = P * K. Giai ma: P = C * K-1. Vi du: cho hma Hill co M = 2 (kha la cac ma trn vung cp 2) va bang ch cai la bang ch cai ting Anh, tc la N = 26. Cho khoa K = ||.|

\|5 23 3 Hay ma ha xu P = HELP va giai ma ng c la i ban ma thu c. ma hoa chung ta chia xu ban r thanh hai vecto hang 2 chi u HE (7 4) va LP (11 15) va tin hanh ma ha ln lt. Vi P1 = (7 4) ta co C1 = P1 * K =( ) 7 4||.|

\|5 23 3 =( ) 3 15=( ) D P Vi P2 = (11 15) ta co C2 = P2 * K =( ) 11 15||.|

\|5 23 3 =( ) 11 4=( ) L E V y ban ma thu c la C = DPLE. giai ma ta tinh khoa giai ma la ma tr n nghi ch aocua ma trn kha trn Z26 theo cng thc sau: Vi K = 11 1221 22k kk k| | |\ . va det(K) = (k11*k22 k21*k12) mod N la m t ph n t co ph n t nghich ao trn ZN (ky hiu la det(K)-1) th kha giai ma s laK-1 = det(K)-1*22 1221 11k -k-k k| | |\ . Chng III: Cc h ma khoa bi mt 32 Ap dung vao trng hp trn ta c det(K) = (15 - 6) mod 26 = 9. GCD(9, 26) =1 nn ap dung thut toan clit m rng tm c det (K)-1=3.V y K-1=3* 523243| | |\ .=||.|

\|9 201715. Qua trnh giai ma tin hanh ging nh qua trnh ma ha vi kha ma ha thay bng kha giai ma.Giai ma C = DP = ( 3 15 ), P = C * K-1 = (3 15) * ||.|

\|9 201715=( ) 3 15 = HE. Tng t giai ma xu C = LE kt qua s c ban r P = LP. Ch y la trong vi du trn chng ta s dung kha K c kich thc nh nn d dang tm c kha giai ma cn trong trng hp tng quat iu nay la khng d dang. 1.6. Hma i ch(transposition cipher) M t hma hoa i chla hma hoa trong o cac ky tcua ban ro v n c gi nguyn, nhng th tcua chung c i chcho nhau. Vi du mt h ma hoa i ch ct n gian , ban r c vit theohang ngang trn trang gi y vi dai ci nh, va ban ma c oc theo hang doc. Ban r: COMPUTER GRAPHICS MAY BE SLOW BUT AT LEAST ITS EXPENSIVE COMPUTERGR APHICSMAYB ESLOWBUTAT LEASTITSEX PENSIVE Ban ma: CAELPOPSEEMHLANPIOSSUCWTITSBIUEMUTERATSGYAERBTX Bang 3.2: Ma hoa thay i vi tri ct Phng phap nay co cac ky thu t sau: 1.ao ngc toan bban ro: ngha la ban r c vit theo th t ngc lai tao ra ban ma .y la phng phap ma hoa n gian nh t vi v y khng am bao an toan. Vi du :ban r TRANSPOSITION CIPHER c ma hoa thanh REHPICNOITISOPSNART. 2.Ma ho theo mu hinh hoc :ban r c sp xp lai theo mt m u hinh ho c nao , thng la m t mang ho c m t ma tr n hai chi u. Vi du:ban r LIECHTENSTEINER c vit thanh ma trn35theo hang nh sau: C t12345 Ban rLIECH Chng III: Cc h ma khoa bi mt 33 TENST EINER Bang 3.3: Ma ha theo mu hnh hoc N u l y cac ky tra theo sth tc t2,4,1,3,5th s c ban ma IEICSELTEENNHTR. i ch ct: u tin i ch cac ky t trong ban r thanh dang hnh chnh t theo c t, sau o cac c t c s p x p la i va cac ch cai c l y ra theo hang ngang Vi du: ban r gc la NGAY MAI BAT DAU CHIEN DICH XYZ c vit di dang ma tr n 55 theo c t nh sau: C t12345 Ban rNADIC GIAEH ABUNX YACDY MTHIZ Bang 3.4: Vi du ma ha theo mu hnh hoc V c5 c t nn chung co th c s p la i theo5!=120 cach khac nhau. tng an toan co thcho n m t trong cac cach sp xp lai . N u ta chuy n vi cac c t theo th t 3,5,2,4,1r i l y cac ky tra theo hang ngang ta se c ban ma la DCAINAHIEGUXBNACYADY HZTIM . Lu y r ng cac ky tcach c b i. Han ch cua phngphap nay la toan b cac ma trn ky t phai c sinh ma hoa va giai ma. 3.Hon vi cc ky t cua bn ro theo chu ky c inh d : N u ham f la m t hoan vi cua mt khi gm d ky t th khoa ma hoa c biu din bi K(d,f). Do v y, ban r: M = m1m2...mdmd+1...m2d Vi mi la cac ky t , va ban ro se c ma hoa thanh Ek(M) = mf(1)mf(2)...mf(d)mf(d)+1...md+f(d) Trong o mf(1)mf(2)...mf(d) la mt hoan vi cua m1m2...md. Vi du: gia s d=5 va f hoan vi day i=12345 thanh f(i)=35142 Vi tri uVi tri hoan viTMa hoa 13GO 25RP Chng III: Cc h ma khoa bi mt 34 31OG 44UU 52PR Bang 3.5: Ma ha hoan vi theo chu ky Theo bang trn, ky t u trong khi5 ky t c chuy n ti vi tri th3, ky t th hai c chuy n ti vi tri th5,...Ch ng ha n t g c GROUP c ma hoa thanh OPGUR. B ng cach o, ban r I LOVE BEETHOVENS MUSIC s c chuyn thanh OEIVLEHBTEESONVSCMIU. Hma ADFGV cua c , c s du ng trong su t chi n tranh thgii l n th I , la m t hma hoa i ch(cs dung phng phap thay thn gian). N c coi la mt thu t toan ma hoa phc ta p vao thi y nhng no abi pha bi Georges Painvin ,m t nha tham ma ngi Phap . Trn th c tc rt nhiu h thng ma hoa s dungphng phap i ch , nhng chng r t r c r i v thng i hi khng gian nh ln. 2. Cc h ma khi Trong ph n nay chung ta se ho c vcac hma kh i i n hinh la chu n ma hoa d li u DES (Data Encryption Standard), m t trong scac hma kh i c s du ng r ng rai nh t va la n n tang cho r t nhi u cac hma kh i khac. Chu n ma hoa d li u DES la m t chu nmahoaccngbbiUybanTiu chun quc gia Hoa Ky vao 15/02/1977. H ma nay c xy dng da trn mt h ma kh i ph bin c tn la LUCIFER va c phat trin bi IBM. DES co nhi u u i m(nhanh, thu t toan cng khai , dcai t )va a tng c s du ng trn th c ttrong m t thi gian r t dai(cho n trc u nhng nm90) tuy nhin theo thi gian nng l c cua cac may tinh phat tri n cung vi cac ky thu t thamma mi c a ra a cho th y nhu c u vm t hma kh i ma nh hn va chun ma ha caocp AES a ra i .Chu n nay ra i d a trn m t cu c thi vthi t km t hma kh i an toan hn(vao nm1997) thay thcho DES cua U y ban Tiu chu n qu c gia cua HoaKy(NIST).C rt nhiu h ma a c gi n lam ng c vin cho AES nhng cu i cung hma Rijndael cua hai tac gia ngi Bi la ti n si Joan Daemen va ti n si Vincent Rijmen (vao nm 2001). 2.1. Mt ma khi Cac h ma c in ma chng ta xem xet phn u chng nayu c c im chung la tng ky t cua ban r c ma hoa tach bit. iu nay lam cho vic pha ma tr nnddanghn.Chinhvvy,trnthctngitahaydngmtkiumtmakhac, trong tng khi ky t cua ban r c ma hoa cng mt lc nh la mt n vi ma hoa ng nht. Trong kiu ma hoa nay, cac tham s quan trong la kich thc ( dai) cua mi khi va kich thc khoa. iu kin ma hoa khi an toan: -Kchthckhiphaiulnchnglaiphngantncngbngphng phap thng k. Tuy nhin iu nay s dn n thi gian ma hoa s tng ln. Chng III: Cc h ma khoa bi mt 35 -Khnggiankhoa,tcchiudaikhoaphaiulnchnglaiphngantn cng bng vet can. Tuy nhin khoa phai u ngn vic tao khoa, phn phi va lu tr khoa c d dang. Khi thit k mt h ma khi, phai am bao hai yu cu sau: -Shnloan(confusion):sphuthucgiabanrvabanmaphaithcs phc tap gy kh khn i vi vic tm quy lut tham ma. Mi quan h nay tt nht la phi tuyn. -S khuch tan (diffusion): Mi bit cua ban r va kha phai anh hng ln cang nhiu bit cua ban ma cang tt. Trong khi s hn loan (confusion) c tao ra bng ky thu t thay th th s khuch tn (diffusion) c tao ra bng cac ky thu thoan vi. Cac h ma khi ma chng ta xem xet trong phn nay u tha man cac yu cu . Ngoai cac h ma khi c trnh bay trong phn nay cn rt nhiu cac h ma khi khac a phat trin q ua thi gian(tai cac quc gia khac nhau va ng dung trong cac lnh v c khac nhau), c th k ra y mt s h ma ni ting nh: Lucifer (1969), DES (1977), Madryga (1984), NewDES (1985), FEAL, REDOC, LOKI (1990), Khufu and Khafre (1990), RC2,RC4,IDEA(1990),MMB,CA-1.1,Shipjack,GOST,CAST,Blowfish,SAFER,3-Way, Crab, SXAL8/MBAL, SAFER, RC5, RC6 ...c im chung cua cac h ma khi la qua trnh ma ha lam vic vi cac khi d liu (thng dang xu bit) c kich thc khac nhau (ti thiu la 64 bit), kha cua h ma cung la mt xu bit c dai c inh (56 bit vi DES, cac h ma khac la 128, 256, hoc thm chi 512 bit). Tt ca cac h ma nay u da trn ly thuyt cua Shannon a ra nm 1949vanumangmahahaibanrgingnhausthuccngmtbanma.Hoat ng cua cac h ma khi thng c thc hin qua mt s ln lp, mi ln s s dung mt kha con c sinh ra t kha chinh. 2.2. Chun ma ho d liu DES (Data Encryption Standard) Vao cui thp nin 60, hma Lucifer a c a ra bi Horst Feistel. Hma nay g n li n vi hangIBM n i ti ng. Sau o Uy ban Tiu chun Hoa Ky a dan x p vi IBM thut toan ma ha nay thanh min phi va phat trin n thanh chun ma ha d liuva cng bvao ngay 15/02/1977. 2.2.1. M t s ma ho DES M ta t ng quan: DES la thu t toan ma hoa vi input la kh i64 bit, output cung la kh i64 bit. Kha ma ha c dai56 bit, th c ra chinh xac hn phai la64 bit vi cac bit vi tri chia h t cho 8 c th s dung la cac bit kim tra tinh chn le . Skha cua khng gian khaK la 256. Chng III: Cc h ma khoa bi mt 36 Hnh 3.1: Chu n ma hoa d li u DES Thu t toan th c hi n16 vng. T khoa input K, 16 kha con48 bit Ki s c sinh ra, m i khoa cho m t vong th c hi n trong qua trinh ma hoa . Trong m i vong, 8 anh xa thay th 6 bit thanh 4 bit Si (cn goi la hp Si) c cho n l a ky cang va ci nh , ky hiu chung la S se c s du ng. Ban r 64 bit se c s du ng chia thanh hai na L0 va R0. Cac vng c chc nng ging nhau ,nh n input la Li-1va Ri-1t vong trc va sinh ra output la cac xu 32 bit Li va Ri nh sau: Li = Ri-1; (1) Ri = Li-1 f(Ri-1, Ki) trong o f(Ri-1, Ki) = P( S( E(Ri-1) Ki ) ); (2) Trong : la ky hiu cua phep tuyn loai tr (XOR) cua hai xu bit theo modulo 2. Ham f la mt ham phi tuyn. E la hoan vi m r ng anh xaRi-1 t 32 bit thanh 48 bit (i khi t t ca cac bit se c s du ng ho c m t bit se c s du ng hai l n). P la hoan vi ci nh khac cua 32 bit.M t hoan vi bit khi u(IP) c s du ng cho vong u tin ; sau vong cu i cung na trai va phai se c i cho nhau va cu i cung xu k t qua se c hoan vi bit l n cu i bi hoan vi ng c cua IP (IP-1).Qua trnh giai ma din ra tng t nhng vi cac khoa con ng dung vao cac vng trong theo th tng c la i. C th hnh dung n gian la phn bn phai trong mi vng(sau khi m r ng input 32 bit thanh 8 ky t 6 bit xu 48 bit) s thc hin mt tinh toanthay thphuthu c khoa trn m i m t ky ttrong xu48bit, va sau s dung mt phep chuyn bit c inh phn bla i cac bit cua cac ky tk t qua hinh thanh nn output 32 bit. Cac khoa con Ki (cha 48 bit cua K) c tinh b ng cach s du ng cac bang PC1 va PC2 (Permutation Choice 1 va 2). Trc tin8 bit (k8, k16,,k64) cua K bi b i(ap dung PC1). 56 bit con la i c hoan vi va gan cho hai bi n28 bit C va D, va sau trong16 vng lp ca C va D s c quay 1 ho c 2 bit, va cac kha con 48 bit Ki c cho n t k t qua cua vic ghep hai xu vi nhau. Nh vy, ta c th m ta toan b thut toan sinh ma DES di dang cng thcnh sau: Y = IP-1- f16- T- f15- T-...- f2- T- f1- IP(x) Trong : T m ta phep hoan vi cua cac khi LiRi (1 i 15). fi m ta vic dng ham f vi khoa Ki (1 i 16). Thu t toan chi ti t: Input: ban r M= m1m2m64, kha 64 bit K = k1k2k64 (bao g m ca8 bit ch n le, vi c thm bit ch n le sao cho cac oa n khoa 8 bit co sbit 1 la le) Chng III: Cc h ma khoa bi mt 37 Output: ban ma 64 bit C = c1c2c64 1. Sinh khoa con. Tinh cac kha con theo thut toan sinh kha con bn di 2. (L0,R0) IP(m1m2m64) (S du ng bang hoan vi IP hoan vi cac bit , k t qua nh n c chia thanh hai na la L0 = m58m50m8, R0 = m57m49m7.) 3. (16 vng) for i = 1 to 16Tinh cac Li va Ri theo cac cng thc (1) va (2), vi c tinhf(Ri-1, Ki) = P( S( E(Ri-1) Ki ) ) c th c hi n nh sau: a)M r ng Ri-1=r1r2r32t32bit thanh48bit b ng cach s du ng hoan vi m r ng E. T E(Ri-1). (V th T = r32r1r2r32r1) b)T T Ki. Bi u di n T nh la cac xu g m 8 ky t 6 bit T = (B1,,B8) c)T (S1(B1), S2(B2),,S8(B8)). Trong o Si(Bi) anh xa b1b2b6 thanh cac xu4 bit cua ph n t thu c hang r va c t c cua cac bang Si (S box) trong o r = 2 * b1 +b6va c=b2b3b4b5la mt s nhi phn t0 ti15.Ch ng ha n S1(011011)s cho r = 1 va c = 13 va kt qua la 5 bi u di n di da ng nhi phn la 0101. d)TP(T)trong o P la hoan vi ci nh hoan vi 32bit cua T =t1t2t32 sinh ra t16t7t25. 4. b1b2b64 (R16, L16) ( i vi tri cac kh i cu i cung L16, R16 5. C IP-1(b1b2b64) (Bi n i s du ng IP-1, C = b40b8b25) S 16 vng lp cua DES: Chng III: Cc h ma khoa bi mt 38 Hnh 3.2: S ma hoa DES K16 (48 bit) K15 (48 bit) Bn r (64 bit) Bn m (64 bit) IP IP-1 L0(32 bit) L1 = R0 R0(32 bit) R1 = L0 f(R0, K1) f K1 (48 bit) Li = Ri-1 L15 = R14 Ri = Li-1 f(Ri-1, Ki) R15 = L14 f(R14, K15) f f Ki (48 bit) L16 = L15 f(R15, K16)R16 = L15 f Chng III: Cc h ma khoa bi mt 39 2.2.2. Hon vi IP va hon vi ngc IP-1 Bang hoan vi IP c a ra trong bang di y: 585042342618102605244362820124 625446383022146645648403224168 57494133251791595143352719113 615345372921135635547393123157 Bang 3.6: Bang hoan vi IP Bang hoan vi ngc IP-1: 408481656246432397471555236331 386461454226230375451353216129 364441252206028353431151195927 34242105018582633141949175725 Bang 3.7: Bang hoan vi ng c IP-1 Hai hoan viIP v IP-1 khng c y ngha g v mt mt ma ma hoan toan nhm tao iu kin cho vic chip hoa thut toan DES. S cu trc mt vng DES: Hnh 3.3: S mt vng DES Li-1 Ri-1 Hm m rng (E) S-Box P-Box Ri Li Trt t nn (PC-2) Kho Kho Vng dchVng dch Hm f Kho K Chng III: Cc h ma khoa bi mt 40 2.2.3. Thu t toan sinh khoa con Mi sau vng lp cua DES chay cng thut toan nh nhau nhng vi 16 kho con khc nhau. Cac kho con u c sinh ra t khoa chinh cua DES bng mt thut toan sinh khoa con. Khoa chinh K (64 bit) i qua 16 bc bin i, tai mi bc bin i nay mt khoa con c sinh ra vi dai 48 bit. C th m ta thut toan sinh cac kha con chi tit nh sau: Input: kha 64 bit K = k1k2...k64 (bao g m ca 8 bit ki m tra tinh ch n le) Output: 16 kha con 48 bit Ki, 1 s i s 16. 1)i nh nghia vi,1 si s16nhsau:vi= 1 i vi ie{1,2,9,16};vi =2 cho cac trng h p khac (y la cac gia tri di ch trai cho cac quay vng 28 bit bn di). 2)T PC1(K); bi u di n T thanh cac na28 bit (C0, D0) (S du ng bang PC1 chon cac bit t K: C0 = k57k49...k36, D0 = k63k55...k4.) 3)For i from1 to 16, tinh cac Ki nh sau: Ci (Ci-1 vi), Di (Di-1 vi), Ki PC2(Ci, Di). (S du ng bang PC2 chon48 bit t xu ghep b1b2...b56 cua Ci va Di: Ki = b14b17...b32. la ky hi u di ch vong trai.) S sinh cac khoa con cua DES: Chng III: Cc h ma khoa bi mt 41 Hnh 3.4: S tao khoa concua DES 64 bit u vao s giam xung cn 56 bit bng cach b i 8 bit ( cac vi tri chia ht cho 8), cac bit nay dng kim tra bit chn le. Sau 56 bit nay lai c trich ly 48 bit sinh ra cho 16 vng khoa cua DES.Bang trt t khoa (PC-1): 57494133251791585042342618 10259514335271911360524436 635547393123157625446383022 1466153453729211352820124 Bang 3.8: Bang PC-1 u tin56 bit khoa c chia ra thanh hai na28 bit. Sau , hai na 28 bit ny c dich vng trai hoc 1 hoc 2 bit phu thuc vao sbit di ch tng ng vi vng . S bit dich cua cac vng (LS): Vng l p12345678910111213141516 Kho chnh (64 bit) C0 (28 bit) D0 (28 bit) PC-1 C1 (28 bit) D1(28 bit) LS1 LS1 Ci (28 bit) Di (28 bit) LS2 LS2 C16 (28 bit) D16 (28 bit) LS1 LS1 PC-2 K1 (48 bit) PC-2 Ki (48 bit) PC-2 K16 (48 bit) Chng III: Cc h ma khoa bi mt 42 S bit dich1122222212222221 Bang 3.9: Bang dich bit tai cac vng lp cua DES Saukhidichvng,m t bang cho n48bitcs du ng.V cachhoanvinaycua cac bit c chon nh mt t hp con cua cac bit nn c goi la hoan vi nen hay trt t nen. Bang trt t nen(PC-2): 14171124153281562110 23191242681672720132 415231374755304051453348 444939563453464250362932 Bang 3.10: Bang PC-2 Vi du nh chng ta c th nhn thy bit vi tri 33 cua khoa s dich sang vi tri 35 ra ngoai, cn bit vi tri 18 cua khoa s bi b qua. Chinh vic dich vng nay, tao nn mt tp hp con cua khoa c s dung trong mi t hp khoa. Mi bit c s dung khoang 14 lntrongtngs16 t hpkhoa,d khngphaittcacacbitcsdungmtcach chinh xac cng mt lc trong mi ln s dung. 2.2.4. M t ham f Hm f(Ri-1,Ki) la mt ham c hai bi n vao: bin th nht Ri-1 la mt xu bit c dai 32 bit, bin th hai khoa Ki la mt xu bit c dai 48 bit. u ra cua f la mt xu bit c dai32bit.HamfcthlahambtkytuynhinvngungcscmanhcuaDES nm trong ham f nn vic chon ham f phai cn thn tranh bi pha ma mt cach d dang. Thng thng ham f c chon thng la ham c tinh cht f = f-1, tc f(f(x)) = x. Trong s m ta ma hoa cua DES c cng b bi Uy ban Tiu chun Quc gia Hoa Ky (The Untied States Nation Bureau of Standard), ham f thc hin cac vic sau: BinthnhtRi-1c mrngthanh mtxubitcdai48bittheomt ham m rng c inh E. Thc cht ham m rng E(Ri-1) la mt hoan vi c lp trong lp lai 16 bit cua Ri-1. Tnh E(Ri-1) Ki va vit kt qua thanh 8 xu 6 bit B1B2B3B4B5B6B7B8. a 8 khi Bi vao 8 bang S1, S2, ..., S8 (c goi la cac hp S-Box). Mi hp S-Box la mt bang 4*16 c inh c cac ct t 0 n 15 va cac hang t 0 n 3. Vi mi xu 6 bit Bi = b1b2b3b4b5b6, ta tinh c Si(Bi) nh sau: hai bit b1b6 xac inh hang r trong hp Si, bn bit b2b3b4b5 xac inh ct c trong hp Si. Khi , Si(Bi) s xac inh phn t Ci = Si(r,c), phn t nay vit di dang nhi phn 4 bit. Nh vy, 8 khi 6 bit Bi (1 i 8) s cho ra 8 khi 4 bit Ci vi (1 i 8). Xu bit C = C1C2C3C4C5C6C7C8 c dai 32 bit c hoan vi theo phep hoan vi P (hp P-Box). Kt qua P(C) s la kt qua cua ham f(Ri-1, Ki), va cung chinh la Ri cho vng sau. Ham f cung c th m ta bng hnh v sau: Chng III: Cc h ma khoa bi mt 43 Hnh 3.5: S ham f 2.2.5. Hm (nh xa) m rng (E) Ham m rng (E) s tng dai cua Ri t 32 bit ln 48 bit bng cach thay i cac th t cua cac bit cung nh lp lai cac bit. Vic thc hin nay nhm hai muc ich: Lam dai cua Ri cng c vi khoa K thc hin vic cng modulo XOR. Cho kt qua dai hn c th c nen trong sut qua trnh thay th. Tuynhin,cahaimucichnayunhm mt muc tiuchinhlabaomtdliu. Bng cach cho phep 1 bit c th chn vao hai vi tri thay th, s phu thuc cua cac bit u ra vi cac bit u vao s trai rng ra. DES c thit k vi iu kin la mi bit cua ban ma phu thuc vao mi bit cua ban r va khoa. S ham m rng: 32 bit 32 bit 86 bit Ri-1 (32 bit) Hm m rng (E)Kho Ki (48 bit) S1 S2 S3 S4 S5 S6 S7 S8 P Ri (32 bit) 48 bit 84 bit 48 bit Chng III: Cc h ma khoa bi mt 44 Hnh 3.6: S ham m rng (E) i khi n c goi la ham E-Box, mi 4 bit cua khi vao, bit th nht va bit th t tng ng vi 2 bit cua u ra, trong khi bit th 2 va 3 tng ng vi 1 bit u ra. Bang sau y miu ta vi tri cua bit ra so vi bit vao. Bang m ta ham m rng (E): 3212345456789 8910111213121314151617 161718192021202122232425 24252627282928293031321 Bang 3.11: Bang m ta ham m r ng E Vi du nh bit vi tri s 3 cua khi vao s di chuyn n vi tri s 4 cua khi ra va bit vi tri 21 u vao s di chuyn n vi tri 30 va 32 u ra. 2.2.6. M t hp S - Box ivismahoaDES,moitinhtoanulatuyntinh,tclavictinhphep tuynloaitrXORcuahaiuracung gingvipheptuynloaitrXORcuahaiu vao ri tinh toan u ra. Ch duy nht c cac tinh toan vi hp S la phi tuyn. Chinh v vy cc hp S-Box (cha ng cac thanh phn phi tuyn cua h mt) la quan trong nht i vi mt cua h ma, chinh cac hp S tao nn s hn loan (confusion) va s khuch tan (diffusion) cua DES. Nm 1976, NSA a a ra tiu chun thit k hp S nh sau: Mi hang trong mi hp S la mt hoan vi cua cac s nguyn t 0 n 15. Khng c hp S nao la ham Affine hay tuyn tinh i vi cac u vao cua n. S thay i cua mt bit u vao s dn n s thay i it nht hai bit u ra. 12345678910111213141516 1 2345 45 6789 89 101112 1312 13141516 1716 32 32 Chng III: Cc h ma khoa bi mt 45 i vi hp S bt ky va vi u vao x (mt xu bit c dai bng 6) bt ky, th S(x) v S(x001100) phai khac nhau it nht la 2 bit. NSAcungtitl3thuctinhcuahpS,nhngthuctinhnayambaotinh confusion va diffusion cua thut toan: Cac bit vao lun phu thuc khng tuyn tinh vi cac bit ra. Sa i mt bit vao lam thay i it nht la hai bit ra. Khi mt bit vao c gi c inh va 5 bit cn lai cho thay i th hp S th hin mt tinh cht c goi la phn b ng nht: so sanh s lng bit s 0 va 1 cac u ra lun mc cn bng. Tinh cht nay khin cho vic phn tich theo ly thuyt thng k tm cach pha hp S la v ich.Sau khi cng modulo vi khoa K, kt qua thu c chui 48 bit chia lam 8 khi a vao 8 hp S-Box.Mi hp S-Box c 6 bit u vao va 4 bit u ra (tng b nh yu cu cho 8 hp S-Box chun DES la 256 bytes). Kt qua thu c la mt chui 32 bit tip tuc vao hp P-Box. Ta c th xy dng cac hp S cua ring mnh, tuy nhin cung c th dng cac hp S chun a c cng b: 1441312151183106125907 0157414213110612119538 4114813621115129731050 1512824917511314100613 Bang 3.12: Hp S1 1518146113497213120510 3134715281412011069115 0147111041315812693215 1381013154211671205149 Bang 3.13: Hp S2 1009146315511312711428 1370934610285141211151 13649815301112121510147 1101306987415143115212 Bang 3.14: Hp S3 7131430691012851112415 1381156150347212110149 Chng III: Cc h ma khoa bi mt 46 1069012117131513145284 3150610113894511127214 Bang 3.15: Hp S4 2124171011685315130149 1411212471315015103986 4211110137815912563014 1181271142136150910453 Bang 3.16: Hp S5 1211015926801334147511 1015427129561131401138 9141552812370410113116 4321295151011141760813 Bang 3.17: Hp S6 4112141508133129751061 1301174911014351221586 1411131237141015680592 6111381410795015142312 Bang 3.18: Hp S7 1328461511110931450127 1151381037412561101492 7114191214206101315358 2114741081315129035611 Bang 3.19: Hp S8 Vi d: Gia s u vao cua hp S6 la chui bit 110011 t 31 n 36 . Bit u tin va bit cui cng kt hp lai thanh 11 tng ng vi hang 3 cua hp S6. Bn bit gia cgia tri 1001, tng ng vi ct 9. Nh vy, gia tri nhn c la 14 (s m cua ct, hang bt u t 0) va gia tri 1110 c thay th cho gia tri 110110 u ra. 2.2.7. Hp P-Box Vic hoan vi nay mang tinh n anh, ngha la mt bit u vao s cho mt bit u ra, khng bit nao c s dung hai ln hay bi b qua. Hp P-Box thc cht ch lam chc nng sp xp n thun theo bang sau:Chng III: Cc h ma khoa bi mt 47 Bang m ta hp P-Box (P): 167202129122817 11523265183110 282414322739 19133062211425 Bang 3.20: Bang hoan vi P Vi du nh bit 21 s dich chuyn n bit th 4, trong khi bit th 4 lai dich chuyn n bit31.Kt quacuicngcuahp P-Box lai c XOR vi natraicuakhi64bitcua chinh n (tc Li-1 tao ra Ri ) va sau na trai va na phai ao cho nhau va bt u mt vng khac. 2.2.8. Vi d v ma ho DES c th hiu r hn v phng phap ma hoa DES, chng ta hay xet vi du sau: Mt ban r mang ni dung: 0123456789ABCDEF. Sdungkhoa(dangthpphn):133457799BBCDFFI.Khoanaydang nhi phn la mt chui bit nh sau (khng c bit kim tra):00010010011010010101101111001001101101111011011111111000 Chuyn i IP, chng ta ly ra L0 v R0: L0 = 11001100000000001100110011111111 L0 = R0 = 11110000101010101111000010101010 16 vng ma hoa c thc hin nh sau: E(R0)=011110100001010101010101011110100001010101010101 K1 =000110110000001011101111111111000111000001110010 E(R0) K1=011000010001011110111010100001100110010100100111 u ra S-Box=01011100100000101011010110010111 f(R0,K1)=00100011010010101010100110111011 L2=R1 =11101111010010100110010101000100 E(R1)=011101011110101001010100001100001010101000001001 K2 =011110011010111011011001110110111100100111100101 E(R1) K2=000011000100010010001101111010110110001111101100 u ra S-Box=11111000110100000011101010101110 f(R1,K2)=00111100101010111000011110100011 L3=R2 =1100110000000001011101110