亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? des-ziji.txt

?? DES算法及其在VC++6.0下的實現 給出了在VC++6.0語言環境下實現的源代碼。
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
                            makedata( left , right ,(ULONG32)number) ;
                     }
              break;
       default:
              break;
       }

       /*最后一輪操作不交換左右值*/

       tmp = *left ;
       *left = *right ;
       *right = tmp ;        

       /*最后一次調整wz_pc4[64]*/

       for ( j = 0 ; j < 64 ; j++)
       {
              if (j < 32 ) 
              {
                     if ( wz_pc4[j] > 32)/*屬于right*/
                     {
                            if ( *right&wz_pc2[wz_pc4[j]-1] )
                            {
                                   tmpbuf[0] |= wz_pc2[j] ;
                            }
                     }
                     else
                     {
                            if ( *left&wz_pc2[wz_pc4[j]-1] )
                            {
                                   tmpbuf[0] |= wz_pc2[j] ;
                            }
                     }
              }
              else
              {
                     if ( wz_pc4[j] > 32)/*屬于right*/
                     {
                            if ( *right&wz_pc2[wz_pc4[j]-1] )
                            {
                                   tmpbuf[1] |= wz_pc2[j] ;
                            }
                     }
                     else
                     {
                            if ( *left&wz_pc2[wz_pc4[j]-1] )
                            {
                                   tmpbuf[1] |= wz_pc2[j] ;
                            }
                     }
              }
       }
  
       *left =  tmpbuf[0] ;
       *right = tmpbuf[1];

       return SUCCESS;
}


INT32 makedata(ULONG32  *left ,ULONG32  *right ,ULONG32 number) 
{
              INT32 j; 
              ULONG32 oldright = *right;         
              ULONG8 rexpbuf[8] = { 0} ;
              ULONG32 datatmp = 0;        
              ULONG32 exp[2] = { 0} ;                         
       //由32擴充至48位

       for ( j = 0 ; j < 48 ; j++)
       {
              /*兩個32位,每個存放24位*/
              if ( j < 24 )
              {
                     if ( *right&wz_pc2[exptab3[j]-1] )
                     {
                            exp[0] |= wz_pc2[j] ;
                     }            
              }            
              else
              {
                     if ( *right&wz_pc2[exptab3[j]-1] )
                     {
                            exp[1] |= wz_pc2[j-24] ;
                     }
              }
       }

       for ( j = 0 ; j < 2 ; j++)
       {            
              exp[j] ^= g_outkey[number][j] ;
       }    

       /*由48->32*/      

       exp[1] >>= 8 ;
       rexpbuf[7] = (ULONG8) (exp[1]&0x0000003fL) ;
       exp[1] >>= 6 ;
       rexpbuf[6] = (ULONG8) (exp[1]&0x0000003fL) ;
       exp[1] >>= 6 ;
       rexpbuf[5] = (ULONG8) (exp[1]&0x0000003fL) ;
       exp[1] >>= 6 ;
       rexpbuf[4] = (ULONG8) (exp[1]&0x0000003fL) ;
       exp[0]  >>=  8 ;
       rexpbuf[3] = (ULONG8) (exp[0]&0x0000003fL) ;     
       exp[0] >>= 6 ;
       rexpbuf[2] = (ULONG8) (exp[0]&0x0000003fL) ;
       exp[0] >>= 6 ;
       rexpbuf[1] = (ULONG8) (exp[0]&0x0000003fL) ;
       exp[0] >>= 6 ;
       rexpbuf[0] = (ULONG8) (exp[0]&0x0000003fL) ;     
       exp[0] = 0 ;
       exp[1] = 0 ;
 
       /*由48-> 32*/

       *right = 0 ;
       for ( j = 0 ; j < 7 ; j++)
       {
              *right |= SP[j][rexpbuf[j]] ;
              *right <<= 4 ;
       }
       *right |= SP[j][rexpbuf[j]] ;

       /*又要換位了*/

       datatmp = 0;
       for ( j = 0 ; j < 32 ; j++)
       {
              if ( *right&wz_pc2[wz_pc3[j]-1] )
              {
                     datatmp |= wz_pc2[j] ;
              }
       }
       *right = datatmp ;

       /*一輪結束收尾操作*/                

       *right ^= *left;       
       *left = oldright;
 
       return SUCCESS;
}

INT32 makefirstkey( ULONG32 *keyP )
{
       ULONG32 key[2] = {0};
       ULONG32 *Pkey ;
       ULONG32 *Pbufkey ;
       INT32 j; 
       Pbufkey = (ULONG32*)g_bufkey ;
       Pkey = (ULONG32*)key;
              
       memset((ULONG8*)g_bufkey,0,sizeof(g_bufkey));    
       memcpy((ULONG8*)&key,(ULONG8*)keyP ,8) ;      
       memset((ULONG8*)g_outkey,0,sizeof(g_outkey));
       for(  j = 0 ; j < 28 ; j++)
       {
              if ( wz_keyleft[j] > 32 ) 
              {
                     if ( Pkey[1]&wz_pc2[wz_keyleft[j]-1] )
                     {
                            Pbufkey[0] |= wz_pc2[j] ;
                     }
              }
              else
              {
                     if ( Pkey[0]&wz_pc2[wz_keyleft[j]-1] )
                     {
                            Pbufkey[0] |= wz_pc2[j] ;
                     }
              }
              
              if ( wz_keyright[j] > 32 ) 
              {
                     if ( Pkey[1]&wz_pc2[wz_keyright[j]-1] )
                     {
                            Pbufkey[1] |= wz_pc2[j];
                     }
              }
              else
              {
                     if ( Pkey[0]&wz_pc2[wz_keyright[j]-1] )
                     {
                            Pbufkey[1] |= wz_pc2[j];
                     }
              }
       }
       for (j = 0 ; j < 16 ; j++)
       {
              makekey(&Pbufkey[0],&Pbufkey[1] , j ) ;
       }
       return SUCCESS;
}


INT32 makekey(  ULONG32 *keyleft,ULONG32 *keyright ,ULONG32 number)/*輸入密鑰的地址,一個32位的*/
{
       ULONG32 tmpkey[2] ={0};
       ULONG32 *Ptmpkey = (ULONG32*)tmpkey;     
       ULONG32 *Poutkey = (ULONG32*)&g_outkey[number]; 
       INT32 j;        
       memset((ULONG8*)tmpkey,0,sizeof(tmpkey));          
              /*要最高的一位或兩位*/
              *Ptmpkey = *keyleft&wz_leftandtab[wz_lefttable[number]] ;           
              Ptmpkey[1] = *keyright&wz_leftandtab[wz_lefttable[number]] ;              
              if ( wz_lefttable[number] == 1)
              {
                     *Ptmpkey >>= 27;
                     Ptmpkey[1] >>= 27;
              }
              else
              {
                     *Ptmpkey >>= 26;
                     Ptmpkey[1] >>= 26;                    
              }
              Ptmpkey[0] &= 0xfffffff0;
              Ptmpkey[1] &= 0xfffffff0;
              /*得到高位的值*/
              *keyleft <<= wz_lefttable[number] ;
              *keyright <<= wz_lefttable[number] ;
              *keyleft |= Ptmpkey[0] ;
              *keyright |= Ptmpkey[1] ;            
              Ptmpkey[0] = 0;
              Ptmpkey[1] = 0;
    
       /*從56位中選出48位,3個16位*/
       for ( j = 0 ; j < 48 ; j++)
       {
              if ( j < 24 )
              {
              
                            if ( *keyleft&wz_pc2[wz_keychoose[j]-1])
                            {
                                   Poutkey[0] |= wz_pc2[j] ;
                            }                   
              }            
              
              else /*j>=24*/
              {                   
                            if ( *keyright&wz_pc2[(wz_keychoose[j]-28)])
                            {
                                   Poutkey[1] | = wz_pc2[j-24] ;
                            }                   
              }
       }
       return SUCCESS;
}

代碼在win2000/vc6.0環境下測試通過. 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费观看在线观看| 国产视频在线观看一区二区三区 | 久久久久久黄色| 欧美精品三级在线观看| 91精彩视频在线| 91福利视频久久久久| 色先锋久久av资源部| 在线精品国精品国产尤物884a| 成人av午夜影院| a级高清视频欧美日韩| 91日韩精品一区| 色婷婷亚洲婷婷| 欧美日韩成人在线| 日韩一区二区免费在线电影| 日韩视频一区二区三区在线播放| 欧美精品久久99| 精品美女一区二区| 中文天堂在线一区| 亚洲黄一区二区三区| 亚洲国产中文字幕| 麻豆成人在线观看| 国产成人在线观看免费网站| heyzo一本久久综合| 色美美综合视频| 91精品国模一区二区三区| 精品久久国产字幕高潮| 久久精品视频在线免费观看 | 粉嫩aⅴ一区二区三区四区五区| 国产一区二区影院| 99精品视频中文字幕| 91麻豆精品国产自产在线观看一区 | 一区二区三区精品久久久| 亚洲综合成人在线视频| 青青草原综合久久大伊人精品 | 波多野洁衣一区| 欧美日韩一本到| 国产亚洲短视频| 亚洲成人午夜影院| 东方aⅴ免费观看久久av| 91麻豆国产福利在线观看| 制服丝袜成人动漫| 亚洲视频每日更新| 国产综合色精品一区二区三区| 91色在线porny| 欧美成人a∨高清免费观看| 亚洲日本韩国一区| 国产在线一区二区综合免费视频| 91在线视频在线| 久久综合九色综合欧美98| 一区二区三区精品| 成人精品鲁一区一区二区| 777色狠狠一区二区三区| 中文字幕不卡的av| 蜜臀av一区二区在线观看 | 亚洲欧美区自拍先锋| 麻豆精品视频在线观看视频| 91浏览器在线视频| 国产农村妇女毛片精品久久麻豆| 三级影片在线观看欧美日韩一区二区| 成人小视频免费在线观看| 欧美精品 国产精品| 一区二区三区日韩欧美| 成人丝袜18视频在线观看| 精品国产一区二区三区不卡| 亚洲综合一区在线| 91美女在线看| 中文字幕日韩一区二区| 国产精品影视在线| 精品99999| 免费成人深夜小野草| 欧美猛男超大videosgay| 亚洲精品欧美在线| 色偷偷久久一区二区三区| 中文字幕制服丝袜一区二区三区 | 成人网在线播放| 久久蜜桃av一区二区天堂| 日韩高清电影一区| 欧美精品久久久久久久多人混战 | 美女任你摸久久| 欧美日本一区二区三区| 亚洲国产美女搞黄色| 欧洲av一区二区嗯嗯嗯啊| 一区二区三区资源| 欧美视频日韩视频| 99久久精品久久久久久清纯| 国产人成亚洲第一网站在线播放| 国产精品亚洲午夜一区二区三区| 91精品国产综合久久国产大片| 视频一区二区不卡| 日韩欧美视频在线| 国产精品自在在线| 国产精品女主播在线观看| va亚洲va日韩不卡在线观看| 亚洲另类在线一区| 欧美电影一区二区三区| 免费精品视频在线| 欧美国产日韩在线观看| 91小视频免费看| 亚洲一区二区三区精品在线| 91精品国产色综合久久久蜜香臀| 蓝色福利精品导航| 国产精品少妇自拍| 欧美专区在线观看一区| 蜜桃久久精品一区二区| 欧美—级在线免费片| 色久优优欧美色久优优| 免费在线视频一区| 国产精品国产三级国产普通话三级| 91污片在线观看| 天堂va蜜桃一区二区三区漫画版| 精品国免费一区二区三区| 成人免费视频免费观看| 亚洲国产aⅴ成人精品无吗| 欧美r级电影在线观看| 97久久精品人人做人人爽 | 日本va欧美va精品| 国产日产欧美一区二区三区| 91婷婷韩国欧美一区二区| 免费一级片91| 亚洲免费av高清| 2014亚洲片线观看视频免费| 在线看国产一区| 国产精品白丝av| 日韩高清欧美激情| 免费一区二区视频| **网站欧美大片在线观看| 欧美一区二区人人喊爽| 91啦中文在线观看| 国产伦精品一区二区三区免费| 亚洲国产一区二区三区| 国产视频在线观看一区二区三区| 欧美精品久久99久久在免费线 | 色婷婷久久久综合中文字幕| 黄色成人免费在线| 亚洲成人手机在线| 亚洲色图第一区| 久久精品欧美一区二区三区麻豆| 欧美日韩二区三区| 91蜜桃网址入口| 99久久99久久综合| 国产91精品一区二区麻豆亚洲| 青青草一区二区三区| 亚洲国产综合人成综合网站| 亚洲欧美日韩国产综合| 欧美—级在线免费片| 久久综合狠狠综合久久综合88| 欧美绝品在线观看成人午夜影视| av电影天堂一区二区在线| 成人黄色网址在线观看| 国产高清不卡一区二区| 国产一区二三区好的| 国产精品一二二区| 麻豆专区一区二区三区四区五区| 婷婷夜色潮精品综合在线| 亚洲欧美综合网| 亚洲色图色小说| 夜夜精品视频一区二区| 一二三区精品福利视频| 亚洲欧美怡红院| 一区二区三区中文字幕在线观看| 一区二区三区不卡视频| 亚洲精选视频免费看| 亚洲自拍另类综合| 日本亚洲免费观看| 国产在线视视频有精品| 国产成人免费高清| zzijzzij亚洲日本少妇熟睡| 99re热这里只有精品视频| 91久久国产最好的精华液| 欧美性videosxxxxx| 日韩一区二区三区在线视频| 精品国产91乱码一区二区三区| 久久综合成人精品亚洲另类欧美 | 丰满亚洲少妇av| 成人ar影院免费观看视频| 色先锋aa成人| 5858s免费视频成人| 久久久不卡网国产精品一区| 国产精品毛片无遮挡高清| 亚洲免费在线播放| 日本中文字幕一区二区视频 | 成人sese在线| 在线免费观看视频一区| 日韩欧美色电影| 一色屋精品亚洲香蕉网站| 亚洲国产精品人人做人人爽| 久久电影网站中文字幕| 岛国av在线一区| 欧美日韩三级一区二区| 久久久久久一二三区| 亚洲日本在线a| 麻豆精品一区二区| 91美女视频网站| 久久综合一区二区| 一区二区三区四区在线| 加勒比av一区二区| 在线观看视频一区| 国产网红主播福利一区二区| 亚洲最新在线观看| 成人午夜又粗又硬又大|