Ã÷ÎÄwλL0XORFwλR0K1L1µÚ1ÂÖR1KiXORFLiµÚiÂÖRiKnXORFLnµÚnÂÖRnLn+1wλÃÜÎÄwλRn+1ͼ5£6¡¡FeistelÃÜÂë½á¹¹
FeistelÃÜÂë½á¹¹Èçͼ5£6Ëùʾ¡£¼ÓÃÜËã·¨µÄÊäÈëÊdz¤Îª2wλµÄÃ÷ÎĺÍÃÜÔ¿K£¬Ã÷Îı»¾ù·ÖΪ³¤¶ÈΪwλµÄL0ºÍR0Á½²¿·Ö¡£ÕâÁ½²¿·Ö¾¹ýnÂÖµü´úºó½»»»Î»ÖÃ×éºÏÔÚÒ»Æð³ÉΪÃÜÎÄ¡£ÆäÔËËãÂß¼¹ØÏµÎª£º
Li?Ri?1(i?1,2,?,n)
Ri?Li?1?F(Ri?1,Ki)(i?1,2,?,n)
ÿÂÖµü´ú¶¼ÓÐÏàͬµÄ½á¹¹¡£´úÌæ×÷ÓÃÔÚÊý¾ÝµÄ×ó°ë²¿·Ö£¬Ëüͨ¹ýÂÖº¯ÊýF×÷ÓÃÊý¾ÝµÄÓҰ벿·Öºó£¬Óë×ó°ë²¿·ÖÊý¾Ý½øÐÐÒì»òÀ´Íê³É¡£Ã¿ÂÖµü´úµÄÂÖº¯ÊýÏàͬ£¬µ«Ã¿ÂÖµÄ×ÓÃÜÔ¿Ki²»Í¬¡£´úÌæÖ®ºó£¬½»»»Êý¾ÝµÄ×óÓÒ²¿·ÖʵÏÖÖû»¡£
Feistel½á¹¹µÄʵÏÖÒÀÀµµÄÖ÷Òª²ÎÊýÊÇ£º·Ö×鳤¶È¡¢ÃÜÔ¿³¤¶È¡¢µü´úÂÖÊý¡¢×ÓÃÜÔ¿Éú³ÉËã·¨¡¢ÂÖº¯Êý¡£
5£6 ¼òÊö·Ö×éÃÜÂëµÄÉè¼Æ×¼Ôò¡£
´ð£º·Ö×éÃÜÂëµÄÉè¼Æ×¼ÔòÖ÷Òª°üÀ¨SºÐµÄÉè¼Æ×¼Ôò¡¢PºÐµÄÉè¼Æ×¼Ôò¡¢ÂÖº¯ÊýFµÄÉè¼Æ×¼Ôò¡¢µü´úµÄÂÖÊýÒÔ¼°×ÓÃÜÔ¿µÄÉú³É·½·¨¡£
5£7 ʲôÊÇ·Ö×éÃÜÂëµÄ²Ù×÷ģʽ£¿ÓÐÄÄЩÖ÷ÒªµÄ·Ö×éÃÜÂë²Ù×÷ģʽ£¿Æä¹¤×÷ÔÀíÊÇʲ
ô£¿¸÷ÓкÎÌØµã£¿
´ð£ºÍ¨³££¬·Ö×éÃÜÂëËã·¨£¨ÈçµäÐ͵ÄDES£©ÊÇÌṩÊý¾Ý°²È«µÄÒ»¸ö»ù±¾¹¹¼þ£¬ËüÒԹ̶¨³¤¶ÈµÄ·Ö×é×÷Ϊ»ù±¾µÄ´¦Àíµ¥Î»¡£·Ö×éÃÜÂëµÄ²Ù×÷ģʽ¾ÍÊÇÈçºÎÔÚ¸÷ÖÖ¸÷ÑùµÄÓ¦ÓÃÖÐʹÓÃÕâЩ»ù±¾¹¹¼þ¡£
Ö÷ÒªÓÐECB¡¢CBC¡¢CTR¡¢OFB¡¢CFBµÈÎåÖÖ·Ö×éÃÜÂë²Ù×÷ģʽ¡£¾ßÌåÔÀí¼°ÌØµã²Î¼û½Ì²Ä¡£
5£8 ÔÚ8λµÄCFBģʽÖУ¬Èô´«ÊäÖÐÒ»¸öÃÜÎÄ×Ö·û·¢ÉúÁËһλ´íÎó£¬Õâ¸ö´íÎ󽫴«²¥¶àÔ¶£¿
´ð£º9¸öÃ÷ÎÄ×Ö·ûÊÜÓ°Ïì¡£ÒòΪ³ýÁËÓëÃÜÎÄ×Ö·ûÏà¶ÔÓ¦µÄÒ»¸öÃ÷ÎÄ×Ö·ûÊÜÓ°ÏìÍ⣬ÊÜÓ°ÏìµÄ¸ÃÃ÷ÎÄ×Ö·û½øÈëÒÆÎ»¼Ä´æÆ÷£¬Ö±µ½½ÓÏÂÀ´µÄ8¸ö×Ö·û´¦ÀíÍê±Ïºó²ÅÒÆ³ö¡£ 5£9 ÃèÊöDESµÄ¼ÓÃÜ˼ÏëºÍFº¯Êý¡£
´ð£ºDES Ëã·¨µÄ¼ÓÃܹý³Ì¾¹ýÁËÈý¸ö½×¶Î£ºÊ×ÏÈ£¬64λµÄÃ÷ÎÄÔÚÒ»¸ö³õʼÖû»IP ºó£¬±ÈÌØÖØÅŲúÉúÁ˾¹ýÖû»µÄÊäÈ룬Ã÷ÎÄ×é±»·Ö³ÉÓҰ벿·ÖºÍ×ó°ë²¿·Ö£¬Ã¿²¿·Ö32룬ÒÔL0ºÍR0±íʾ¡£½ÓÏÂÀ´µÄ½×¶ÎÊÇÓɶÔͬһ¸öº¯Êý½øÐÐ16´ÎÑ»·×é³ÉµÄ£¬16ÂÖµü´ú³ÆÎª³Ë»ý±ä»»»òº¯ÊýF£¬Õâ¸öº¯Êý±¾Éí¼È°üº¬Óл»Î»ÓÖ°üº¬ÓдúÌæº¯Êý£¬½«Êý¾ÝºÍÃÜÔ¿½áºÏÆðÀ´£¬×îºó1ÂÖµÄÊä³öÓÉ64λ×é³É£¬Æä×ó±ßºÍÓÒ±ßÁ½¸ö²¿·Ö¾¹ý½»»»ºó¾ÍµÃµ½Ô¤Êä³ö¡£×îºó½×¶Î£¬Ô¤Êä³öͨ¹ýÒ»¸öÄæ³õʼÖû»IPËã·¨¾ÍÉú³ÉÁË64λµÄÃÜÎĽá¹û¡£ Fº¯ÊýµÄ±ä»»ÈçÏÂͼËùʾ¡£
Li-1(32룩Ri-1(32룩£1
F±ä»»À©Õ¹±ä»»E48룫48λ48λKiÃÜÔ¿²úÉúÆ÷Ñ¡ÔñѹËõ±ä»»SºÐ´úÌæ32λÖû»ÔËËãP32룫Li(32룩Ri(32λ£©Í¼5-18¡¡DESËã·¨µÄÒ»ÂÖµü´ú´¦Àí¹ý³Ì
5£10 ΪʲôҪʹÓÃ3DES£¿
´ð£ºËæ×żÆËã»ú´¦ÀíÄÜÁ¦µÄÌá¸ß£¬Ö»ÓÐ56λÃÜÔ¿³¤¶ÈµÄDESËã·¨²»ÔÙ±»ÈÏΪÊǰ²È«µÄ¡£Òò´ËDESÐèÒªÌæ´úÕߣ¬ÆäÖÐÒ»¸ö¿ÉÌæ´úµÄ·½°¸ÊÇʹÓÃ3DES¡£3DESµÄÓŵ㣺£¨1£©ÃÜÔ¿³¤¶ÈÔö¼Ó
µ½112λ»ò168룬¿ÉÒÔÓÐЧ¿Ë·þDESÃæÁÙµÄÇî¾ÙËÑË÷¹¥»÷£»£¨2£©Ïà¶ÔÓÚDES£¬ÔöÇ¿ÁË¿¹²î·Ö·ÖÎöºÍÏßÐÔ·ÖÎöµÄÄÜÁ¦£»£¨3£©¾ß±¸¼ÌÐøÊ¹ÓÃÏÖÓеÄDESʵÏֵĿÉÄÜ¡£ 5£11 AESµÄÖ÷ÒªÓŵãÊÇʲô£¿
´ð£ºAESµÄÖ÷ÒªÓŵã±íÏÖΪ£º»ã¾ÛÁ˰²È«ÐÔÄÜ¡¢Ð§ÂÊ¡¢¿ÉʵÏÖÐÔºÍÁé»îÐÔµÈÓŵ㣬×î´óµÄÓŵãÊÇ¿ÉÒÔ¸ø³öËã·¨µÄ×î¼Ñ²î·ÖÌØÕ÷µÄ¸ÅÂÊ£¬²¢·ÖÎöËã·¨µÖ¿¹²î·ÖÃÜÂë·ÖÎö¼°ÏßÐÔÃÜÂë·ÖÎöµÄÄÜÁ¦¡£AES¶ÔÄÚ´æµÄÐèÇó·Ç³£µÍ£¬Ò²Ê¹ËüºÜÊʺÏÓÃÓÚÊÜÏÞÖÆµÄ»·¾³ÖУ¬AESµÄ²Ù×÷¼òµ¥£¬²¢¿ÉµÖÓùÇ¿´óºÍʵʱµÄ¹¥»÷¡£
5£12 AESµÄ»ù±¾ÔËËãÓÐÄÄЩ£¿Æä»ù±¾ÔËËã·½·¨ÊÇʲô£¿
´ð£º AESµÄ»ù±¾ÔËËã°üÀ¨×Ö½ÚÔËËãºÍ×ÖÔËËã¡£»ù±¾ÔËËã·½·¨£¨ÂÔ£©¡£ 5£13 AESµÄ»ù±¾±ä»»ÓÐÄÄЩ£¿Æä»ù±¾µÄ±ä»»·½·¨ÊÇʲô£¿
´ð£ºAESµÄ»ù±¾±ä»»°üÀ¨Èý¸ö´úÌæºÍÒ»¸ö»ìÏý£º£¨1£©×Ö½Ú´úÌæSubBytes£ºÓÃÒ»¸öSºÐÍê³É·Ö×éÖеİ´×ֽڵĴúÌæ£»£¨2£©ÐÐÒÆÎ»ShiftRows£ºÒ»¸ö¼òµ¥µÄÖû»£»£¨3£©ÁлìÏýMixColumns£ºÒ»¸öÀûÓÃÔÚÓòGF£¨2£©ÉϵÄËãÊõÌØÐԵĴúÌæ£»£¨4£©ÂÖÃÜÔ¿¼ÓAddRoundKey£ºÒ»¸öÀûÓõ±Ç°·Ö×éºÍÀ©Õ¹ÃÜÔ¿µÄÒ»²¿·Ö½øÐа´Î»Òì»ò¡£ »ù±¾±ä»»·½·¨£¨ÂÔ£©¡£
5£14 AESµÄ½âÃÜËã·¨ºÍAESµÄÄæËã·¨Ö®¼äÓкβ»Í¬£¿
´ð£ºAESµÄÄæËã·¨ÊÇÏà¶Ô¼ÓÃÜ»ù±¾±ä»»¶øÑԵ쬼´´æÔÚInvSubBytes¡¢InvShiftRows¡¢InvMixColumns±ä»»¡£
AESµÄ½âÃÜËã·¨ÊÇÏà¶ÔÓÚ¼ÓÃÜËã·¨¶øÑԵģ¬ËüÓÉInvSubBytes¡¢InvShiftRows¡¢InvMixColumnsºÍAddRoundKeyµÈ»ù±¾±ä»»¹¹³É¡£ 5£15 ÔÚGF£¨2£©ÉÏ£û01£ýµÄÄæÊÇʲô£¿ ´ð£º01¡£
5£16 ±àд³ÌÐòʵÏÖAESÃÜÂëËã·¨¡£ ÂÔ¡£
¡¶Ó¦ÓÃÃÜÂëѧ¡·Ï°ÌâºÍ˼¿¼Ìâ´ð°¸
8
8
µÚ6Õ ·Ç¶Ô³ÆÃÜÂëÌåÖÆ
6£1 ΪʲôҪÒýÈë·Ç¶Ô³ÆÃÜÂëÌåÖÆ£¿
´ð£º¶Ô³ÆÃÜÂëÌåÖÆ²»ÄÜÍêÈ«ÊÊÓ¦Ó¦ÓõÄÐèÒª£¬Ö÷Òª±íÏÖÔÚÒÔÏÂÈý¸ö·½Ã棺ÃÜÔ¿¹ÜÀíµÄÀ§ÄÑÐÔÎÊÌ⡢İÉúÈ˼äµÄ±£ÃÜͨÐÅÎÊÌâ¡¢Êý×ÖÇ©ÃûÎÊÌ⣬¶ø·Ç¶Ô³ÆÃÜÂëÌåÖÆ¿ÉÒÔÔÚÕâÈý¸ö·½ÃæÓнÏ
ºÃµÄ½â¾ö·½°¸¡£
6£2 ¶Ô¹«Ô¿ÃÜÂëÌåÖÆµÄÒªÇóÊÇʲô£¿
´ð£º£¨1£©²ÎÓë·½BÈÝÒ×ͨ¹ý¼ÆËã²úÉúÒ»¶ÔÃÜÔ¿£¨¹«¿ªÃÜÔ¿KUbºÍ˽ÓÐÃÜÔ¿KRb£©¡£ £¨2£©ÔÚÖªµÀ¹«¿ªÃÜÔ¿ºÍ´ý¼ÓÃܱ¨ÎÄMµÄÇé¿öÏ£¬¶ÔÓÚ·¢ËÍ·½A£¬ºÜÈÝÒ×ͨ¹ý¼ÆËã²úÉú¶ÔÓ¦
µÄÃÜÎÄ£ºC?EKUb(M) ¡£
£¨3£©½ÓÊÕ·½BʹÓÃ˽ÓÐÃÜÔ¿ÈÝÒ×ͨ¹ý¼ÆËã½âÃÜËùµÃµÄÃÜÎÄ£¬ÒÔ±ã»Ö¸´ÔÀ´µÄ±¨ÎÄ£º
M?DKRb(C)?DKRb(EKUb(M))
£¨4£©µÐ¶Ô·½¼´Ê¹ÖªµÀ¹«¿ªÃÜÔ¿KUb£¬ÒªÈ·¶¨Ë½ÓÐÃÜÔ¿KRbÔÚ¼ÆËãÉÏÊDz»¿ÉÐеġ£ £¨5£©µÐ¶Ô·½¼´Ê¹ÖªµÀ¹«¿ªÃÜÔ¿KUbºÍÃÜÎÄC£¬ÒªÏë»Ö¸´ÔÀ´µÄ±¨ÎÄMÔÚ¼ÆËãÉÏÒ²ÊDz»¿ÉÐеġ£
£¨6£©Á½¸öÃÜÔ¿ÖеÄÈκÎÒ»¸ö¶¼¿ÉÒÔÓÃÀ´¼ÓÃÜ£¬¶ÔÓ¦µÄÁíÒ»¸öÃÜÔ¿ÓÃÀ´½âÃÜ£¨ÕâÒ»Ìõ²»ÊǶÔËùÓй«¿ªÃÜÔ¿ÃÜÂëÌåÖÆ¶¼ÊÊÓã©£º
M?DKRb(EKUb(M))£¨»úÃÜÐÔʵÏÖ£©
¡£ M?DKUb(EKRb(M))£¨Êý×ÖÇ©ÃûʵÏÖ£©
6£3 ʲôÊÇÏÝÃŵ¥Ïòº¯Êý£¿ÏÝÃŵ¥Ïòº¯ÊýÓкÎÌØµã£¿ÈçºÎ½«ÆäÓ¦ÓÃÓÚ¹«Ô¿ÃÜÂëÌåÖÆÖУ¿
´ð£ºÏÝÃŵ¥Ïòº¯ÊýÊÇÂú×ãÏÂÁÐÌõ¼þµÄº¯Êýf£º
£¨1£© ÕýÏò¼ÆËãÈÝÒס£¼´Èç¹ûÖªµÀÁËÃÜÔ¿pkºÍÏûÏ¢x£¬ÈÝÒ×¼ÆËãy?fpk(x)¡£
£¨2£© ÔÚ²»ÖªµÀÃÜÔ¿skµÄÇé¿öÏ£¬·´Ïò¼ÆËãÊDz»¿ÉÐеġ£¼´Èç¹ûÖ»ÖªµÀÏûÏ¢y¶ø²»ÖªµÀÃÜÔ¿sk£¬Ôò¼ÆËãx?f?1sk(y)ÊDz»¿ÉÐеġ£
£¨3£© ÔÚÖªµÀÃÜÔ¿skµÄÇé¿öÏ£¬·´Ïò¼ÆËãÊÇÈÝÒ׵ġ£¼´Èç¹ûͬʱ֪µÀÏûÏ¢yºÍÃÜÔ¿sk£¬Ôò¼ÆËãx?f?1sk(y)ÊÇÈÝÒ׵ġ£ÕâÀïµÄÃÜÔ¿skÏ൱ÓÚÏÝÃÅ£¬ËüºÍpkÊÇÅä¶ÔʹÓõġ£
ÌØµã£º¶ÔÓÚÏÝÃŵ¥Ïòº¯Êý¶øÑÔ£¬ËüÊÇÖ¸³ý·ÇÖªµÀijÖÖ¸½¼ÓµÄÐÅÏ¢£¬·ñÔòÕâÑùµÄº¯ÊýÔÚÒ»¸ö·½ÏòÉϼÆËãÈÝÒ×£¬ÔÚÁíÍâµÄ·½ÏòÉÏÒª¼ÆËãÊDz»¿ÉÐеģ»ÓÐÁ˸½¼ÓÐÅÏ¢£¬º¯ÊýµÄÄæ¾Í¿ÉÒÔÈÝÒ×¼ÆËã³öÀ´¡£
¹«Ô¿ÃÜÂëÌåÖÆÖеĹ«Ô¿ÓÃÓÚÏÝÃŵ¥Ïòº¯ÊýµÄÕýÏò£¨¼ÓÃÜ£©¼ÆË㣬˽ԿÓÃÓÚ·´Ïò£¨½âÃÜ£©¼ÆËã¡£
6£4 ¼òÊö¹«Ô¿ÃÜÂëÌåÖÆµÄÖ÷ÒªÓ¦Ó÷½Ïò£¿
´ð:´óÌåÉÏ˵£¬¿ÉÒÔ½«¹«¿ªÃÜÔ¿ÃÜÂëϵͳµÄÓ¦Ó÷ÖΪÈýÀࣺ»úÃÜÐÔµÄʵÏÖ(·¢ËÍ·½ÓýÓÊÕ·½µÄ¹«¿ªÃÜÔ¿¼ÓÃܱ¨ÎÄ£¬½ÓÊÕ·½ÓÃ×ÔÒѶÔÓ¦µÄ˽ԿÀ´½âÃÜ)¡¢Êý×ÖÇ©Ãû¼´·À·ñÈÏÐÔµÄʵÏÖ£¨·¢ËÍ·½ÓÃ×Ô¼ºµÄ˽Կ¡°Ç©Ê𡱱¨ÎÄ£¬½ÓÊÕ·½Ó÷¢ËÍ·½Åä¶ÔµÄ¹«¿ªÃÜÔ¿À´½âÃÜÒÔʵÏÖ¼ø±ð£©ºÍÃÜ