Đang tải... (xem toàn văn)
Tài liệu tham khảo công nghệ thông tin Tìm hiểu Các giải thuật mã hóa thông tin
/ƯÚL1RÛL³DÂX7KHÃJLƯÛLFXÝDFKXÛQJWDOXRÄQVRÄLVXĐFWURQJPXRÄQYDÚQELHÃQĨRỈQJĨØƯĐFWDĐRUDÝLFRQQJØƯÚL9DÚWURQJWKHÃN\ÝQDÚ\PDÛ\WÏQKODÚPRỈWWURQJQKØ×QJVDÝQSKDÇPỸĨDĐLQKDÃW&XÚQJÛLWKƯÚLJLDQQJØƯÚLWDNKRÄQJPXRÃQVØÝGXĐQJPRỈWPDÛ\WÏQKĨƯQOHÝQØ×DPDÚVH×NHÃWQRÃLFDÛFPDÛ\QDÚ\ODĐLWKDÚQKPRỈWPDĐQJPDÛ\WÏQKQKDÊPWDÌQJNKDÝQDÌQJODÚPYLHỈFKLHÇXELHÃWWUDRĨRÇLFDỈSQKDỈWFDÛFWKRÄQJWLQg0DĐQJ,QWHUQHWODÚ[XKØƯÛQJSKDÛWWULHÇQFXÝDWKHÃJLƯÛLQJDÚ\QD\+LHỈQQD\,QWHUQHWĨD×WÝQHÄQUDÃWSKRÇELHÃQWUHÄQWRDÚQWKHÃJLƯÛL 7KRÄQJTXDPDĐQJ,QWHUQHW PRĐLQJØƯÚLFRÛWKHÇWUDRĨRÇLWKRÄQJWLQÛLQKDXPRỈWFDÛFKQKDQKFKRÛQJWKXDỈQWLHỈQ1KØ×QJFRÄQJW\SKDÛWWULHÇQYDÚNLQKGRDQKWUHÄQPRÄLWÙƯÚQJ,QWUDQHW,QWHUQHWKRĐSKDÝLĨRÃLGLHỈQÛLNKRÛNKDÌQÛQODÚODÚPWKHÃQDÚRĨHÇEDÝRYHỈQKØ×QJGØ×OLHỈXTXDQWURĐQJQJDÌQFKDÍQQKØ×QJKỴQKWKØÛFWDÃQFRÄQJWUX\[XDÃWGØ×OLHỈXEDÃWKƯĐSSKDÛSWØÚEHÄQWURQJ,QWUDQHWODÅQFDÝEHÄQQJRDÚL,QWHUQHW.KLPRỈWQJØƯÚLPXRÃQWUDRĨRÇLWKRÄQJWLQÛLPRỈWQJØƯÚLKD\PRỈWWRÇFKØÛFQDÚRĨRÛWKRÄQJTXDPDĐQJPDÛ\WÏQKWKỴ\HÄXFDÂXTXDQWURĐQJODÚODÚPVDRĨHÇĨDÝPEDÝRWKRÄQJWLQNKRÄQJVDLOHỈFKKRDÍFORỈGRVØĐ[DÄPQKDỈSFXÝDNHÝWKØÛED7ÙƯÛFFDÛF\HÄXFDÂXFDÂQWKLHÃWĨRÛPRỈWVRÃJLDÝLWKXDỈWPD×KRÛDĨD×GØƯĐF[DÄ\GØĐQJQKDÊPĨDÝPEDÝRWÏQKDQWRDÚQGØ×OLHỈXWDĐLQƯLÒXWÙ×FX×QJQKØNKLGØ×OLHỈXĨØƯĐFWUX\HÂQWUHÄQPDĐQJQKØFDÛFJLDÝLWKXDỈWPD×KRÛDĨRÃL[ØÛQJ (DES), JLDÝLWKXDỈWPD×KRÛDFRÄQJNKDL, . 9LHỈFWỴPKLHÇXYDÚ[DÄ\GØĐQJFKØƯQJWQKFDÛFJLDÝLWKXDỈWQDÚ\FX×QJNKRÄQJQDÊPQJRDÚLPXĐFĨÏFKFXÝDEDÝQOXDỈQYDÌQQDÚ\/XDỈQYDÌQFRÛQKLHỈPYXĐWỴPKLHÇXO\ÛWKX\HÃWYHÂPDỈWPD×KRDÛWKRÄQJWLQ[DÄ\GØĐQJVHUYHUWDĐRNKRÛDFKR user trong YDÃQĨHÂEDÝRPDỈWGØ×OLHỈX.'RWKƯÚLJLDQYDÚNKDÝQDÌQJFRÛKDĐQWURQJNKLSKDĐPYLĨHÂWDÚLODĐLURỈQJQKØ×QJQJØƯÚLWKØĐFKLHỈQFKÈFRÛWKHÇWỴPKLHÇXĨØƯĐFPRỈWVRÃJLDÝLWKXDỈWFKÏQKQKØ'(6(&%&%&56$0'YDÚTXDĨRÛĨØDUDPRÄKỴQKVHUYHUWDĐRNKRÛDFKRFDÛFXVHUFXĐWKHÇODÚODÚPWKHÃQDÚRĨHÇTXDÝQO\ÛYDÚSKDÄQSKRÃLNKRÛDPRỈWFDÛFKDQWRDÚQKLHỈXTXDÝ&KDËFFKDËQUDÊQJWDỈSWKX\HÃWPLQKQDÚ\VH×NKRÄQJWUDÛQKNKRÝLQKØ×QJWKLHÃXVRÛWQJØƯÚLWKØĐFKLHỈQPRQJQKDỈQĨØƯĐFVØĐJRÛS\ÛFKÈGDÅQWKHÄPFXÝDFDÛF7KDÂ\&RÄEDĐQEHÚĨHÇEDÝQWKX\HÃWPLQKĨØƯĐFKRDÚQWKLHỈQKƯQ&KXÛQJWRÄL[LQFKDÄQWKDÚQKFDÝPƯQ7KDÂ\KØƯÛQJGDÅQFDÛF7KDÂ\&RÄWURQJNKRDĨD×WDĐRĨLHÂXNLHỈQWKXDỈQĐLĨHÇEDÝQWKX\HÃWPLQKQDÚ\FRÛWKHÇKRDÚQWKDÚQKĨXÛQJWKƯÚLKDĐQ &KØƯQJ&DÛFKHỈPDỈWPD× +HỈPDỈWPD×ĨRÃL[ØÛQJ*LƯÛLWKLHỈX&DÛFJLDÝLWKXDỈWPDỈWPD×ĨRÃL[ØÛQJODÚFDÛFJLDÝLWKXDỈWVØÝGXĐQJFXÚQJPRỈWNKRÛDẸPDỈWFKRWDÛFYXĐPD×KRÛDYDÚWDÛFYXĐJLDÝLPD×9ÏGXĐQKØFDÛFJLDÝLWKXDỈWWKD\WKHÃYDÚKRDÛQJLDÝLWKXDỈW '(6g ¶½ ĨDÄ\ WD FKÈ WỴP KLHÇX JLDÝL WKXDỈW '(6 'DWD (QFU\SWLRQ 6WDQGDUG ODÚ JLDÝLWKXDỈWPDỈWPD×ĨRÃL[ØÛQJĨØƯĐFVØÝGXĐQJSKRÇELHÃQQKDÃW*LDÝLWKXDỈW'(6'DWD(QFU\SWLRQ6WDQGDUG9DÚRQDÌP1DWLRQDO%XUHDXRIVWDQGDUGĨD×ĨØDUDFKXDÇQ'(6ĨHÇVØÝGXĐQJFKRFDÛFØÛQJGXĐQJƯÝ0\×'(6PD×KRÛDFDÛFNKRÃLGDWDELWVÛLNKRÛDELWV*LDÝLWKXDỈWGXÚQJĨHÇPD×KRÛDODÅQJLDÝLPD×ĨØƯĐFPRÄWDÝWRÛPWDËWQKØKỴQK7ÙƯÛFWLHÄQELWLQSXW7ĨØƯĐFKRDÛQÝLSKHÛSKRDÛQKRDÛQNKƯÝLĨRỈQJ,3ÛL7R ,376DXNKLTXDYRÚQJODÍSPRÅLYRÚQJVØÝGXĐQJPRỈWNKRÛDELWĨØƯĐFWDĐRUDWØÚNKRÛDLQSXWELWVÛLWDÛFĨRỈQJFXÝDKDÚP)QRÛĨØƯĐFKRDÛQEDÊQJSKHÛSKRDÛQĨDÝR,3ĨHÇWDĐRUDELWRXWSXWFXRÃLFXÚQJ,3YDÚ,3ĨØƯĐFFKRWURQJFDÛFEDÝQJEDÝQJDYDÚEDÝQJE&DÛFEDÝQJQDÚ\ĨØƯĐFĨRĐFWØÚWUDÛLVDQJSKDÝLWØÚWUHÄQ[XRÃQJGØƯÛLWKHRGDĐQJ7 WWgWỈ7 WWggW³DÂXWLHÄQNKRÃL7 ĨØƯĐFWDÛFKWKDÚQKKDLNKRÃLWUDÛLYDÚSKDÝLPRÅLNKRÃLELWV7 /5ÛL/ WgW5 WgW¶½YRÚQJODÍSWKØÛLL/L 5L5L /L⊕)5L.LWURQJĨRÛ⊕ODÚSKHÛSFRỈQJH[FOXVLYHBRUYDÚ.LODÚNKRÛDELWV¶½YRÚQJODÍSFXRÃLFXÚQJFDÛFQKDÛQKWUDÛLYDÚSKDÝLNKRÄQJĨRÇLFKRÅFKRQKDXYDỈ\LQSXWFXÝD,3ODÚ5/ +DÚP)YDÚ6BER[HVKỴQK7ÙƯÛFWLHÄQ5LĨØƯĐFPƯÝURỈQJWKDÚQKNKRÃLELWV(5LÛL(ODÚEDÝQJÒĐDFKRĐQELWĨØƯĐFFKRWURQJEDÝQJ6DXĨRÛWKØĐFKLHỈQSKHÛS;25(5LÛL.LYDÚNHÃWTXDÝĨØƯĐFWDÛFKWKDÚQKNKRÃLELWWØÚ%WƯÛL%(5L⊕.L %%% 0RÅLNKRÃL%MVDXĨRÛĨØƯĐFĨØDYDÚRPRỈWKDÚP6M6ER[6M%MWUDÝYHÂPRỈWNKRÃLELWEDÝQJ&DÛFNKRÃLQDÚ\ĨØƯĐFQRÃLODĐLYDÚ NKRÃLNHÃW TXDÝELWĨØƯĐFKRDÛQEDÊQJSKHÛS3EDÝQJ)5L.L 36%g6%+RDĐWĨRỈQJFXÝD6ER[VRÃQJX\HÄQWØƯQJØÛQJÛLEEVH×FKRĐQ5RZWURQJEDÝQJFRÚQVRÃQJX\HÄQWØƯQJØÛQJÛLEEEEVH×FKRĐQ&ROXPQ*LDÛWFXÝD6M%MĨØƯĐFFKRĐQVH×ODÚPRỈWVRÃQJX\HÄQELWƯÝWỤ5RZYDÚ&ROXPQĨRÛ7ÏQKNKRÛDKỴQK'(6WDĐRUDNKRÛDPRÅLNKRÛDFKLHÂXGDÚLELWWØÚPRỈWNKRÛDLQSXWELWGXÚQJFKRYRÚQJODÍS/ØXĨRÂWÏQKWRDÛQNKRÛDĨØƯĐFFKRWURQJKỴQK.KRÛDLQSXWODÚPRỈWNKRÃLELWÛLELWSDULW\WDĐLFDÛFWỤg3HUPXWDWLRQ3&VH×ORDĐLERÝFDÛFELWSDULW\YDÚVH×KRDÛQELWFRÚQODĐLWKHREDÝQJ.HÃWTXDÝ3&.VDXĨRÛĨØƯĐFFKLDWKDÚQKKDLSKDÂQ&YDÚ'PRÅLSKDÂQELW.KRÛD.LGXÚQJWURQJYRÚQJWKØÛLĨØƯĐFWDĐRUDWØÚ&LYDÚ'LWKHRTX\WDËFQKØVDXWURQJFDÛFYRÚQJYDÚ&LYDÚ'LĨØƯĐFTXD\YRÚQJPRỈWẸWTXDWUDÛLWURQJFDÛFYRÚQJFRÚQODĐLWKỴĨØƯĐFTXD\YRÚQJKDLẸWTXDWUDÛL4XDSKHÛSTXD\YRÚQJQDÚ\&LYDÚ'LVH×ĨØƯĐFELHÃQĨRÇLWKDÚQK&LYDÚ'L+RDÛQ&LYDÚ'LWKHREDÝQJ6DXNKLKRDÛQ&LERÝTXDFDÛFẸWWDĐRWKDÚQKQØ×DWUDÛLFXÝD.LẸWFRÚQ'LERÝĨLFDÛFẸWWDĐRUDQØ×DSKDÝLFXÝD.LẸW*KHÛSQØ×DWUDÛLYDÚQØ×DSKDÝLWDĐRUDNKRÛD.LẸW*LDÝLPD×4XDÛWQKJLDÝLPD×ĨØƯĐFWKØĐFKLHỈQWKHRFXÚQJJLDÝLWKXDỈWQDÚ\WKHRWKØÛWØĐQJØƯĐFODĐLQKØVDX,3ODÚĨDÝRFXÝD,3YDÚƯÝYRÚQJODÍSWKØÛLVØÝGXĐQJNKRÛD.L.ƯÝYRÚQJODÍSĨDÂXWLHÄQ.ƯÝYRÚQJODÍSFXRÃLFXÚQJYDÚ5L /L/L 5L⊕)/L.L Input.KÖÝLWDÑRKRDÛQYÔL1=RoRo+F+F+F³DÝRNKÖÝLWDÑRKRÛDQYÔ2XWSXWLoR1 = Lo + F(R1,K1)L15 = R14R2 = L1 + F(R1,K2)L2 = R1R15 = L14 + F(R14,K15)+FR16 = L15 + F(R15,K16)L16 = R151,2,3, . 64 1,2,3, . 64 1,2,3, . 32K1K2KnK16Hình 1: Encryption computation1,2,3, . 32 &KRÑQKRÛDQYÔ/HIW6KLIW /HIW6KLIW/HIW6KLIW/HIW6KLIW/HIW6KLIW /HIW6KLIW&KRÑQKRÛDQYÔ&KRÑQKRDÛQYÔ&KRÑQKRDÛQYÔ1,2,3, . 641,2,3, . 28 1,2,3, . 28K1KnK16+ÎQK Key Schedule CalculationKeyKey KeyC1D1Cn DnC16D16 S1S2S3S6S5S7S4S8P32 bits+E48 bitsK (48 bits)5ELWVHình 3 : Calculation of f(R,K)64 %DÝQJD%DÝQJKRDÛQYÔÓDÂXWLHÄQ,3 %DÝQJE%DÝQJKRDÛQYÔFXRÃLFXÚQJ,3%DÝQJ%DÝQJFKRÑQEÏW( %DÝQJ%DÝQJKRDÛQYÔ3%DÝQJ%DÝQJKRDÛQYÔNKRÛD3& %DÝQJ%DÝQJKRDÛQYÔNKRÛD3& &ROXPQ5RZ%R[66666666%DÝQJ%DÝQJFKRÑQ6ER[H[ '(6,Q(OHFWURQLF&RGH%RRN0RGH(&%ảẵPRGHQD\FDFNKRLGDWDGỉệLGDẹQJURíFOHDUWH[WểỉệẹFểỉDYDRLQSXWFXíD'(6&DFNKRLNHWTXDíGỉệLGDẹQJPDặWPDìFLSKHUWH[WFRWKHầểỉệẹFVỉíGXẹQJFKRFDFỉQJGXẹQJNKDF4XDWUẻQKELHQểRầLGLHQUDQKỉVDXKẻQK&OHDUWH[Wặ,QSXWEORFNặ'(6ặ2XWSXWEORFNặ&LSKHUWH[W(&%HQFU\SWLRQ (&%GHFULSWLRQ+ẻQK(OHFWURQLF&RGHERRN0RGH(&%'(6,Q&LSKHU%ORFN&KDLQLQJ0RGH&%&.KRLGDWDFDQPDìKRDểỉệẹFFKLDWKDQKFDFNKRL%%g%QYệLNẽFKWKỉệFPRLNKRLODELWV9HFWệNKệíLWDẹR,9ELWVểỉệẹFFKRẹQ6ệểRPDặWPDìểỉRẹFFKRWURQJKẻQK4XDWUẻQKPDìKRD,9%&&OHDUWH[W''',QSXWEORFN,,g,'(6HQFU\SW2XWSXWEORFN22g2&LSKHUWH[W&&g&&OHDUWH[W'''&LSKHUWH[W&&g&,QSXWEORFN,,g,'(6GHFU\SW2XWSXWEORFN22g20Dì KRD &⊕%& Q&Q⊕%Q&Q 4XDÛWUÎQKJLDÝLPD×& ,9⊕%,9⊕%⊕,9 %& &⊕%&⊕%⊕& % &Q&Q⊕%Q&Q⊕%Q⊕&Q %Q+ÎQK&LSKHU%ORFN&KDLQLQJ&%&PRGH*LDÝL PD×,9 %%%3 Time = 1 Time = 2Time = n + + +,,,'(6HQFU\ '(6HQFU\ '(6HQFU\&&&Q ., , ,'(6GHFU\ '(6GHFU\ '(6GHFU\,9 + + +%%%3 0D×KRÛD*LDÝLPD× 123doc.vn