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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cfb.h

?? 程序是在vc++平臺上實(shí)現(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])
/*實(shí)現(xiàn)bit到byte之間的轉(zhuǎn)換*/
{
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的轉(zhuǎn)換*/
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位奇偶校驗(yàn)位 */
		        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] ;/*實(shí)現(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中元素進(jìn)行左移,獲得 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] ;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久电影网电视剧免费观看| 中文字幕一区二区三区在线观看| 亚洲成av人片观看| 欧美视频一区二区三区| 亚洲综合视频网| 欧美精品v国产精品v日韩精品| 午夜av电影一区| 日韩三级视频在线观看| 国产精品一区二区三区四区| 国产区在线观看成人精品| 波多野结衣一区二区三区 | 7777精品伊人久久久大香线蕉超级流畅 | 国产综合久久久久久鬼色| 久久精品日韩一区二区三区| 高清不卡在线观看| 亚洲日本丝袜连裤袜办公室| 欧美在线999| 久久精品国产久精国产爱| 久久久99久久精品欧美| 在线视频欧美区| 麻豆中文一区二区| 国产精品久久久久久久久久免费看| 色网站国产精品| 美女在线观看视频一区二区| 国产拍欧美日韩视频二区| 色欧美乱欧美15图片| 久久爱另类一区二区小说| 国产精品久久夜| 欧美精品亚洲一区二区在线播放| 国产老女人精品毛片久久| 亚洲男同1069视频| 精品久久久久久最新网址| 色综合中文字幕国产 | 91精品国产一区二区三区| 国产福利91精品一区| 亚洲黄色小视频| 精品国产免费久久| 欧美性猛交xxxx乱大交退制版 | 粉嫩蜜臀av国产精品网站| 亚洲成av人片在www色猫咪| 亚洲国产成人一区二区三区| 欧美电影在哪看比较好| av在线不卡网| 极品瑜伽女神91| 日日摸夜夜添夜夜添亚洲女人| 国产欧美日本一区视频| 制服丝袜亚洲色图| 在线免费亚洲电影| 成人午夜在线播放| 激情都市一区二区| 丝瓜av网站精品一区二区 | 久久久精品人体av艺术| 欧美三级午夜理伦三级中视频| 国产91丝袜在线播放0| 青青国产91久久久久久| 一区二区成人在线视频 | 亚洲欧美日韩成人高清在线一区| 欧美精品一区在线观看| 欧美一区在线视频| 欧美视频一区在线| 日本韩国欧美一区| 99精品1区2区| 99久久99久久精品免费看蜜桃| 国产精品一区二区三区99| 久久成人av少妇免费| 视频一区视频二区在线观看| 亚洲永久精品大片| 亚洲视频你懂的| 最新热久久免费视频| 欧美激情一区二区三区四区| 久久久电影一区二区三区| 欧美成人福利视频| 精品国产制服丝袜高跟| 日韩精品专区在线影院观看 | 色菇凉天天综合网| 91在线看国产| 色综合久久久久综合99| 91视频91自| 欧美综合久久久| 欧美日韩一区二区电影| 欧美日韩美少妇| 制服丝袜成人动漫| 日韩一区二区三区视频在线观看| 6080国产精品一区二区| 日韩一二在线观看| 欧美成人bangbros| 国产亚洲综合色| 中文字幕中文在线不卡住| 中文字幕佐山爱一区二区免费| 国产精品不卡在线| 亚洲精品一二三四区| 夜夜爽夜夜爽精品视频| 亚洲6080在线| 狠狠色丁香婷婷综合| 粉嫩高潮美女一区二区三区| 欧美一区二区大片| 精品久久国产97色综合| 国产女人水真多18毛片18精品视频| 国产清纯白嫩初高生在线观看91| 国产精品久久夜| 香蕉av福利精品导航| 男女男精品视频| 国产91精品露脸国语对白| 91麻豆免费视频| 欧美色国产精品| 久久久久久毛片| 亚洲精品精品亚洲| 男人操女人的视频在线观看欧美| 国产又粗又猛又爽又黄91精品| 成人动漫在线一区| 91麻豆精品国产91久久久久| 久久夜色精品国产噜噜av| 亚洲天堂a在线| 日本亚洲天堂网| 成人国产在线观看| 欧美一级夜夜爽| 国产精品久久久久一区二区三区共| 性欧美疯狂xxxxbbbb| 国产麻豆午夜三级精品| 日本韩国欧美一区| 久久久精品欧美丰满| 亚洲无线码一区二区三区| 国产精品亚洲第一| 欧美人狂配大交3d怪物一区| 国产日韩成人精品| 日韩国产精品久久久| av中文一区二区三区| 精品人在线二区三区| 亚洲一区二区欧美日韩| 国产福利精品一区| 日韩欧美专区在线| 亚洲综合视频在线观看| 成人午夜激情视频| 日韩免费观看2025年上映的电影| 亚洲精品久久7777| 国产成人av电影免费在线观看| 欧美三级电影精品| 国产精品久久久99| 国产精品亚洲人在线观看| 日韩三级精品电影久久久| 夜夜夜精品看看| 99国产精品久久久久久久久久| 日韩欧美国产高清| 视频一区视频二区中文| 91福利视频在线| 国产精品久久看| 国产一区二区三区蝌蚪| 日韩精品一区二区在线观看| 亚洲国产va精品久久久不卡综合| av中文字幕在线不卡| 国产日韩一级二级三级| 国产主播一区二区三区| 日韩色视频在线观看| 天天综合色天天| 欧美唯美清纯偷拍| 亚洲午夜电影网| 欧美无乱码久久久免费午夜一区| 综合色中文字幕| 99在线热播精品免费| 国产精品女人毛片| 国产91丝袜在线播放九色| 国产色产综合产在线视频| 韩国午夜理伦三级不卡影院| 日韩美女视频在线| 精品亚洲成a人| 欧美精品一区二区三区蜜桃视频| 蜜臀久久久久久久| 欧美一区二区日韩| 青椒成人免费视频| 日韩一区二区视频| 九九九久久久精品| 久久精品日产第一区二区三区高清版| 国产在线观看免费一区| 久久久噜噜噜久久中文字幕色伊伊 | 久久国产视频网| 久久新电视剧免费观看| 国产精品亚洲第一区在线暖暖韩国| 久久久噜噜噜久久中文字幕色伊伊| 国产乱人伦偷精品视频不卡| 久久久久久电影| 成人白浆超碰人人人人| 亚洲美女区一区| 91黄色小视频| 日本欧美久久久久免费播放网| 日韩一区和二区| 国产成人av一区二区三区在线| 欧美国产欧美亚州国产日韩mv天天看完整| 国产69精品久久99不卡| 亚洲私人影院在线观看| 91精品福利视频| 日韩高清不卡一区二区| 久久奇米777| 色久综合一二码| 久久国产欧美日韩精品| 国产三级精品在线| 欧美性猛交xxxx乱大交退制版 | 亚洲综合色自拍一区| 欧美一区二区二区| caoporn国产精品| 午夜精品视频一区|