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

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

?? cfb.h

?? 程序是在vc++平臺上實現(xiàn)的des算法
?? H
?? 第 1 頁 / 共 2 頁
字號:
#include "stdio.h"
#include "conio.h"

#include <iostream.h>

void endes(unsigned char m_bit[8] , unsigned char k_bit[8] , unsigned char e_bit[8]);


void undes(unsigned char * , unsigned char * , unsigned char *) ;

unsigned char *byte2bit(unsigned char * , unsigned char *) ;
unsigned char *bit2byte(unsigned char * , unsigned char *) ;
void keychange(unsigned char oldkey[8] , unsigned char newkey[16][8]);

void s_replace(unsigned char *) ;



/* byte2bit */
unsigned char *byte2bit(unsigned char byte[64] , unsigned char bit[8])
{
int i = 0 ;
/*byte1*/
	for(i = 0;i <= 7;i++)
	{
		if(byte[0] == 0x1) bit[0] = bit[0] | 0x80 ;
		else bit[0] = bit[0] & 0x7f ;
		if(byte[1] == 0x1) bit[0] = bit[0] | 0x40 ;
		else bit[0] = bit[0] & 0xbf ;
		if(byte[2] == 0x1) bit[0] = bit[0] | 0x20 ;
		else bit[0] = bit[0] & 0xdf ;
		if(byte[3] == 0x1) bit[0] = bit[0] | 0x10 ;
		else bit[0] = bit[0] & 0xef ;
		if(byte[4] == 0x1) bit[0] = bit[0] | 0x08 ;
		else bit[0] = bit[0] & 0xf7 ;
		if(byte[5] == 0x1) bit[0] = bit[0] | 0x04 ;
		else bit[0] = bit[0] & 0xfb ;
		if(byte[6] == 0x1) bit[0] = bit[0] | 0x02 ;
		else bit[0] = bit[0] & 0xfd ;
		if(byte[7] == 0x1) bit[0] = bit[0] | 0x01 ;
		else bit[0] = bit[0] & 0xfe ;
	}
/*byte2*/
	for(i = 8;i <= 15;i++)
	{
		if(byte[8] == 0x1) bit[1] = bit[1] | 0x80 ;
		else bit[1] = bit[1] & 0x7f ;
		if(byte[9] == 0x1) bit[1] = bit[1] | 0x40 ;
		else bit[1] = bit[1] & 0xbf ;
		if(byte[10] == 0x1) bit[1] = bit[1] | 0x20 ;
		else bit[1] = bit[1] & 0xdf ;
		if(byte[11] == 0x1) bit[1] = bit[1] | 0x10 ;
		else bit[1] = bit[1] & 0xef ;
		if(byte[12] == 0x1) bit[1] = bit[1] | 0x08 ;
		else bit[1] = bit[1] & 0xf7 ;
		if(byte[13] == 0x1) bit[1] = bit[1] | 0x04 ;
		else bit[1] = bit[1] & 0xfb ;
		if(byte[14] == 0x1) bit[1] = bit[1] | 0x02 ;
		else bit[1] = bit[1] & 0xfd ;
		if(byte[15] == 0x1) bit[1] = bit[1] | 0x01 ;
		else bit[1] = bit[1] & 0xfe ;
	}
/*byte3*/
	for(i = 16;i <= 23 ;i++)
	{
		if(byte[16] == 0x1) bit[2] = bit[2] | 0x80 ;
		else bit[2] = bit[2] & 0x7f ;
		if(byte[17] == 0x1) bit[2] = bit[2] | 0x40 ;
		else bit[2] = bit[2] & 0xbf ;
		if(byte[18] == 0x1) bit[2] = bit[2] | 0x20 ;
		else bit[2] = bit[2] & 0xdf ;
		if(byte[19] == 0x1) bit[2] = bit[2] | 0x10 ;
		else bit[2] = bit[2] & 0xef ;
		if(byte[20] == 0x1) bit[2] = bit[2] | 0x08 ;
		else bit[2] = bit[2] & 0xf7 ;
		if(byte[21] == 0x1) bit[2] = bit[2] | 0x04 ;
		else bit[2] = bit[2] & 0xfb ;
		if(byte[22] == 0x1) bit[2] = bit[2] | 0x02 ;
		else bit[2] = bit[2] & 0xfd ;
		if(byte[23] == 0x1) bit[2] = bit[2] | 0x01 ;
		else bit[2] = bit[2] & 0xfe ;
	}
/*byte4*/
	for(i = 24;i <= 31 ;i++)
	{
		if(byte[24] == 0x1) bit[3] = bit[3] | 0x80 ;
		else bit[3] = bit[3] & 0x7f ;
		if(byte[25] == 0x1) bit[3] = bit[3] | 0x40 ;
		else bit[3] = bit[3] & 0xbf ;
		if(byte[26] == 0x1) bit[3] = bit[3] | 0x20 ;
		else bit[3] = bit[3] & 0xdf ;
		if(byte[27] == 0x1) bit[3] = bit[3] | 0x10 ;
		else bit[3] = bit[3] & 0xef ;
		if(byte[28] == 0x1) bit[3] = bit[3] | 0x08 ;
		else bit[3] = bit[3] & 0xf7 ;
		if(byte[29] == 0x1) bit[3] = bit[3] | 0x04 ;
		else bit[3] = bit[3] & 0xfb ;
		if(byte[30] == 0x1) bit[3] = bit[3] | 0x02 ;
		else bit[3] = bit[3] & 0xfd ;
		if(byte[31] == 0x1) bit[3] = bit[3] | 0x01 ;
		else bit[3] = bit[3] & 0xfe ;
	}
/*byte5*/
	for(i = 32;i <= 39 ;i++)
	{
		if(byte[32] == 0x1) bit[4] = bit[4] | 0x80 ;
		else bit[4] = bit[4] & 0x7f ;
		if(byte[33] == 0x1) bit[4] = bit[4] | 0x40 ;
		else bit[4] = bit[4] & 0xbf ;
		if(byte[34] == 0x1) bit[4] = bit[4] | 0x20 ;
		else bit[4] = bit[4] & 0xdf ;
		if(byte[35] == 0x1) bit[4] = bit[4] | 0x10 ;
		else bit[4] = bit[4] & 0xef ;
		if(byte[36] == 0x1) bit[4] = bit[4] | 0x08 ;
		else bit[4] = bit[4] & 0xf7 ;
		if(byte[37] == 0x1) bit[4] = bit[4] | 0x04 ;
		else bit[4] = bit[4] & 0xfb ;
		if(byte[38] == 0x1) bit[4] = bit[4] | 0x02 ;
		else bit[4] = bit[4] & 0xfd ;
		if(byte[39] == 0x1) bit[4] = bit[4] | 0x01 ;
		else bit[4] = bit[4] & 0xfe ;
	}
/*byte6*/
	for(i = 40;i <= 47 ;i++)
	{
		if(byte[40] == 0x1) bit[5] = bit[5] | 0x80 ;
		else bit[5] = bit[5] & 0x7f ;
		if(byte[41] == 0x1) bit[5] = bit[5] | 0x40 ;
		else bit[5] = bit[5] & 0xbf ;
		if(byte[42] == 0x1) bit[5] = bit[5] | 0x20 ;
		else bit[5] = bit[5] & 0xdf ;
		if(byte[43] == 0x1) bit[5] = bit[5] | 0x10 ;
		else bit[5] = bit[5] & 0xef ;
		if(byte[44] == 0x1) bit[5] = bit[5] | 0x08 ;
		else bit[5] = bit[5] & 0xf7 ;
		if(byte[45] == 0x1) bit[5] = bit[5] | 0x04 ;
		else bit[5] = bit[5] & 0xfb ;
		if(byte[46] == 0x1) bit[5] = bit[5] | 0x02 ;
		else bit[5] = bit[5] & 0xfd ;
		if(byte[47] == 0x1) bit[5] = bit[5] | 0x01 ;
		else bit[5] = bit[5] & 0xfe ;
	}
/*byte7*/
	for(i = 48;i <= 55 ;i++)
	{
		if(byte[48] == 0x1) bit[6] = bit[6] | 0x80 ;
		else bit[6] = bit[6] & 0x7f ;
		if(byte[49] == 0x1) bit[6] = bit[6] | 0x40 ;
		else bit[6] = bit[6] & 0xbf ;
		if(byte[50] == 0x1) bit[6] = bit[6] | 0x20 ;
		else bit[6] = bit[6] & 0xdf ;
		if(byte[51] == 0x1) bit[6] = bit[6] | 0x10 ;
		else bit[6] = bit[6] & 0xef ;
		if(byte[52] == 0x1) bit[6] = bit[6] | 0x08 ;
		else bit[6] = bit[6] & 0xf7;
		if(byte[53] == 0x1) bit[6] = bit[6] | 0x04 ;
		else bit[6] = bit[6] & 0xfb ;
		if(byte[54] == 0x1) bit[6] = bit[6] | 0x02 ;
		else bit[6] = bit[6] & 0xfd ;
		if(byte[55] == 0x1) bit[6] = bit[6] | 0x01 ;
		else bit[6] = bit[6] & 0xfe ;
	}
/*byte8*/
	for(i = 56;i <= 63 ;i++)
	{
		if(byte[56] == 0x1) bit[7] = bit[7] | 0x80 ;
		else bit[7] = bit[7] & 0x7f ;
		if(byte[57] == 0x1) bit[7] = bit[7] | 0x40 ;
		else bit[7] = bit[7] & 0xbf ;
		if(byte[58] == 0x1) bit[7] = bit[7] | 0x20 ;
		else bit[7] = bit[7] & 0xdf ;
		if(byte[59] == 0x1) bit[7] = bit[7] | 0x10 ;
		else bit[7] = bit[7] & 0xef ;
		if(byte[60] == 0x1) bit[7] = bit[7] | 0x08 ;
		else bit[7] = bit[7] & 0xf7 ;
		if(byte[61] == 0x1) bit[7] = bit[7] | 0x04 ;
		else bit[7] = bit[7] & 0xfb ;
		if(byte[62] == 0x1) bit[7] = bit[7] | 0x02 ;
		else bit[7] = bit[7] & 0xfd ;
		if(byte[63] == 0x1) bit[7] = bit[7] | 0x01 ;
		else bit[7] = bit[7] & 0xfe ;
	}
return bit ;
}/*end of byte2bit*/

/* bit2byte */
unsigned char *bit2byte(unsigned char bit[8] , unsigned char byte[64])
/*實現(xiàn)bit到byte之間的轉換*/
{
int i=0 ;
for(i=0 ; i<=63 ; i++)
	{
		byte[i] = 0x0 ;
	}
	for(i=0 ; i<=7 ; i++)
	{
		if((bit[i] & 0x80) == 0x80) byte[i*8+0] = 0x01 ;
		if((bit[i] & 0x40) == 0x40) byte[i*8+1] = 0x01 ;
		if((bit[i] & 0x20) == 0x20) byte[i*8+2] = 0x01 ;
		if((bit[i] & 0x10) == 0x10) byte[i*8+3] = 0x01 ;
		if((bit[i] & 0x08) == 0x08) byte[i*8+4] = 0x01 ;
		if((bit[i] & 0x04) == 0x04) byte[i*8+5] = 0x01 ;
		if((bit[i] & 0x02) == 0x02) byte[i*8+6] = 0x01 ;
		if((bit[i] & 0x01) == 0x01) byte[i*8+7] = 0x01 ;
	}
	return byte;
}/* end of bit2byte */

/*密鑰key的轉換*/
void keychange(unsigned char oldkey[8] , unsigned char newkey[16][8])
{
int i=0,j=0,k=0 ;
int pc_1[56] = {57,49,41,33,25,17,9,           /*PC-1中去掉了8,16,24,32,40,*/
                1,58,50,42,34,26,18,           /*48,56,64位奇偶校驗位 */
		        10,2,59,51,43,35,27,
		        19,11,3,60,52,44,36,
		        63,55,47,39,31,23,15,
		        7,62,54,46,38,30,22,
		        14,6,61,53,45,37,29,
		        21,13,5,28,20,12,4} ;
int pc_2[48] = {14,17,11,24,1,5,               /*48位輸出*/
		        3,28,15,6,21,10,
		        23,19,12,4,26,8,
		        16,7,27,20,13,2,
		        41,52,31,37,47,55,
		        30,40,51,45,33,48,
		        44,49,39,56,34,53,
		        46,42,50,36,29,32} ;
int ccmovebit[16] = {1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1} ;/*左移位數(shù)*/
unsigned char oldkey_byte[64] ;
unsigned char oldkey_byte1[64] ;
unsigned char oldkey_byte2[64] ;
unsigned char oldkey_c[28] ;
unsigned char oldkey_d[28] ;
unsigned char cc_temp ;
unsigned char newkey_byte[16][64] ;

bit2byte(oldkey,oldkey_byte) ;
for(i=0;i<=55;i++) 
   oldkey_byte1[i] = oldkey_byte[pc_1[i] - 1] ;/*實現(xiàn) PC-1*/
for(i=0;i<=27;i++) 
   oldkey_c[i] = oldkey_byte1[i] ;/*將前28bit送入c0*/
for(i=28;i<=55;i++) 
   oldkey_d[i -28] = oldkey_byte1[i] ;/*將后28bit送入d0*/
/*按cc_movebit中元素進行左移,獲得 c1-16,d1-16*/
for(i=0;i<=15;i++)
   {
	for(j=1;j<=ccmovebit[i];j++)
	{
		cc_temp = oldkey_c[0] ; /*取出第一bit*/
		for(k=0;k<=26;k++)
		   {oldkey_c[k] = oldkey_c[k+1] ;}
		oldkey_c[27] = cc_temp ; /*將第一bit放到最后一bit*/

		cc_temp = oldkey_d[0] ; /*取出第一bit*/
                for(k=0;k<=26;k++)
		   {oldkey_d[k] = oldkey_d[k+1] ;}
		oldkey_d[27] = cc_temp ; /*將第一bit放到最后一bit*/
	}  
	/*通過pc-2變換bit*/
	for(k=0;k<=27;k++) 
           oldkey_byte2[k] = oldkey_c[k] ;
	for(k=28;k<=55;k++) 
           oldkey_byte2[k] = oldkey_d[k-28] ;
	/*c(i)+d(i)得到48位輸出k[i]*/
	for(k=0;k<=47;k++) 
           newkey_byte[i][k] = oldkey_byte2[pc_2[k] - 1] ;
        
    }    
for(i=0;i<=15;i++) byte2bit(newkey_byte[i],newkey[i]) ;
}/*end of keychange*/

/*加密數(shù)據(jù)*/
void endes(unsigned char m_bit[8] , unsigned char k_bit[8] , unsigned char e_bit[8])
{
int ip[64] = {  58,50,42,34,26,18,10,2,    /*定義初始置換表*/
		60,52,44,36,28,20,12,4,
		62,54,46,38,30,22,14,6,
		64,56,48,40,32,24,16,8,
		57,49,41,33,25,17,9,1,
		59,51,43,35,27,19,11,3,
		61,53,45,37,29,21,13,5,
		63,55,47,39,31,23,15,7
		} ;
int ip_1[64] = {40,8,48,16,56,24,64,32,    /*定義初始逆置換表*/
		39,7,47,15,55,23,63,31,
		38,6,46,14,54,22,62,30,
		37,5,45,13,53,21,61,29,
		36,4,44,12,52,20,60,28,
		35,3,43,11,51,19,59,27,
		34,2,42,10,50,18,58,26,
		33,1,41,9,49,17,57,25
		} ;
int e[48] = {   32,1, 2, 3, 4, 5,          /*定義e函數(shù)表*/
		4, 5, 6, 7, 8, 9,
		8, 9, 10,11,12,13,
		12,13,14,15,16,17,
		16,17,18,19,20,21,
		20,21,22,23,24,25,
		24,25,26,27,28,29,
		28,29,30,31,32,1
		} ;
unsigned char m_bit1[8] = {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0} ;
unsigned char m_byte[64] ;
unsigned char m_byte1[64] ;
unsigned char key_n[16][8] ;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频在线播放| 国产精品不卡在线观看| 国产日韩欧美精品电影三级在线| 亚洲欧美日本韩国| 国产伦精一区二区三区| 欧美中文字幕不卡| 国产精品毛片无遮挡高清| 美女性感视频久久| 欧美性色欧美a在线播放| 国产精品无码永久免费888| 免费人成在线不卡| 欧美性高清videossexo| 国产精品情趣视频| 国产一区二区免费在线| 欧美精品在欧美一区二区少妇| 成人欧美一区二区三区| 国产一区欧美日韩| 日韩免费看的电影| 日本va欧美va瓶| 欧美精品自拍偷拍| 亚洲大型综合色站| 在线观看av一区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 狠狠色狠狠色合久久伊人| 欧美高清激情brazzers| 亚洲成a人v欧美综合天堂下载| 99re热这里只有精品视频| 国产网红主播福利一区二区| 久久国产精品免费| 欧美mv日韩mv国产| 久久精品国产一区二区三| 宅男在线国产精品| 免费看黄色91| 欧美精品一区二区三区四区| 免费人成网站在线观看欧美高清| 欧美一区二区三区系列电影| 午夜视频一区在线观看| 欧美日韩成人综合天天影院| 偷拍日韩校园综合在线| 日韩一区二区三区视频在线观看| 日韩高清在线一区| 精品三级av在线| 精品一区二区影视| 国产亚洲成av人在线观看导航 | 欧美少妇bbb| 一区二区三区小说| 欧美日韩国产美女| 看电视剧不卡顿的网站| www亚洲一区| 国产99精品视频| 亚洲免费观看高清完整版在线| 日本高清视频一区二区| 午夜精品一区二区三区三上悠亚| 欧美一区二区久久久| 国内久久精品视频| 国产精品嫩草影院com| 色综合久久综合中文综合网| 午夜视频在线观看一区二区| 精品国产一区二区三区忘忧草| 国产成人无遮挡在线视频| 亚洲免费毛片网站| 欧美精品tushy高清| 国产精品主播直播| 亚洲激情图片一区| 日韩精品最新网址| caoporm超碰国产精品| 日韩成人免费在线| 日本一区二区三区视频视频| 欧美性感一区二区三区| 麻豆成人久久精品二区三区红| 国产精品你懂的在线| 欧美精三区欧美精三区| 成人午夜免费视频| 日本一不卡视频| 麻豆精品视频在线| 国产女同互慰高潮91漫画| 91亚洲精品久久久蜜桃网站| 色噜噜久久综合| 久久99久久久久久久久久久| 国产日韩成人精品| 欧美日本韩国一区二区三区视频 | 日本美女视频一区二区| 国产精品麻豆欧美日韩ww| 884aa四虎影成人精品一区| 北条麻妃国产九九精品视频| 日韩精品一二三区| 一区二区三区四区激情| 欧美激情一区二区三区蜜桃视频 | 欧美日韩www| 99久久99久久精品免费看蜜桃| 蜜桃视频一区二区三区 | 亚洲韩国精品一区| 欧美激情综合在线| 日韩视频免费观看高清完整版在线观看 | 亚洲成人一区二区在线观看| 国产精品美女www爽爽爽| 日韩一区二区免费在线观看| 色老汉一区二区三区| 国产成人亚洲综合a∨猫咪| 日韩精品三区四区| 亚洲一区视频在线| 亚洲欧美色一区| 国产精品理论片| 国产欧美日本一区视频| 日韩亚洲欧美一区二区三区| 欧美日韩免费观看一区三区| 色婷婷国产精品| av中文字幕一区| 成人的网站免费观看| 国产精品主播直播| 国产在线播放一区| 国产美女久久久久| 国产乱一区二区| 国产精品99久久久| 国产suv精品一区二区6| 国产成人免费在线| 91精品国产福利在线观看| 欧美日韩一区二区在线视频| 在线看不卡av| 欧美揉bbbbb揉bbbbb| 欧美日韩精品一区二区三区| 欧美日韩高清影院| 欧美老年两性高潮| 日韩三级电影网址| 久久亚洲精品小早川怜子| 久久这里只有精品首页| 久久影院视频免费| 亚洲国产精品精华液2区45| 久久先锋资源网| 国产精品美女久久久久久久久| 国产三级欧美三级日产三级99| 国产亚洲短视频| 亚洲欧美日韩中文字幕一区二区三区| ...av二区三区久久精品| 亚洲美女偷拍久久| 天天综合天天做天天综合| 免费观看日韩av| 国产mv日韩mv欧美| 色哟哟一区二区在线观看| 欧美男男青年gay1069videost | 91美女在线观看| 欧美视频一区二区在线观看| 欧美一区二区三区四区在线观看 | 2020国产精品久久精品美国| 亚洲国产精品二十页| 一区二区三区产品免费精品久久75| 亚洲国产精品久久人人爱| 久久精品72免费观看| 成人免费av网站| 欧美日韩一二区| 欧美mv日韩mv国产| 亚洲人成小说网站色在线| 亚洲成人激情自拍| 国产不卡高清在线观看视频| 在线看国产一区| 国产色婷婷亚洲99精品小说| 一区二区在线观看不卡| 韩国欧美一区二区| 91国产精品成人| 2021久久国产精品不只是精品| 亚洲视频综合在线| 紧缚捆绑精品一区二区| 一本高清dvd不卡在线观看| 欧美xxxxx牲另类人与| 亚洲欧洲日韩在线| 久久99国产精品久久99果冻传媒| 99精品在线观看视频| 欧美一区二区三区免费视频| 国产精品麻豆视频| 极品少妇一区二区三区精品视频| 久久久噜噜噜久噜久久综合| 亚洲韩国精品一区| 99久久婷婷国产综合精品| 欧美成人精精品一区二区频| 亚洲黄色小视频| 成人一区二区视频| 日韩免费性生活视频播放| 性久久久久久久久| 91美女福利视频| 国产精品拍天天在线| 久久97超碰国产精品超碰| 91精品一区二区三区久久久久久| 亚洲人成人一区二区在线观看| 国产一区二区三区不卡在线观看| 欧美猛男gaygay网站| 亚洲欧美日韩国产综合在线| 成人免费看视频| 欧美精品一区二区高清在线观看 | 51精品秘密在线观看| 亚洲欧美日韩国产综合在线 | 美女国产一区二区| 欧美日韩成人综合| 亚洲妇女屁股眼交7| 色久优优欧美色久优优| 最好看的中文字幕久久| 国产传媒一区在线| 久久蜜桃av一区精品变态类天堂 | 国产成人夜色高潮福利影视| 日韩欧美国产一区在线观看| 日韩精品亚洲一区二区三区免费|