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

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

?? d3des_c.h

?? use_des.zip(vc6)DES塊加密算法 使用塊加密8個字符
?? H
?? 第 1 頁 / 共 2 頁
字號:
	leftt ^= work;
	right ^= work;
	leftt = ((leftt << 1) | ((leftt >> 31) & 1L)) & 0xffffffffL;

	for( round = 0; round < 8; round++ ) {
		work  = (right << 28) | (right >> 4);
		work ^= *keys++;
		fval  = SP7[ work		 & 0x3fL];
		fval |= SP5[(work >>  8) & 0x3fL];
		fval |= SP3[(work >> 16) & 0x3fL];
		fval |= SP1[(work >> 24) & 0x3fL];
		work  = right ^ *keys++;
		fval |= SP8[ work		 & 0x3fL];
		fval |= SP6[(work >>  8) & 0x3fL];
		fval |= SP4[(work >> 16) & 0x3fL];
		fval |= SP2[(work >> 24) & 0x3fL];
		leftt ^= fval;
		work  = (leftt << 28) | (leftt >> 4);
		work ^= *keys++;
		fval  = SP7[ work		 & 0x3fL];
		fval |= SP5[(work >>  8) & 0x3fL];
		fval |= SP3[(work >> 16) & 0x3fL];
		fval |= SP1[(work >> 24) & 0x3fL];
		work  = leftt ^ *keys++;
		fval |= SP8[ work		 & 0x3fL];
		fval |= SP6[(work >>  8) & 0x3fL];
		fval |= SP4[(work >> 16) & 0x3fL];
		fval |= SP2[(work >> 24) & 0x3fL];
		right ^= fval;
		}

	right = (right << 31) | (right >> 1);
	work = (leftt ^ right) & 0xaaaaaaaaL;
	leftt ^= work;
	right ^= work;
	leftt = (leftt << 31) | (leftt >> 1);
	work = ((leftt >> 8) ^ right) & 0x00ff00ffL;
	right ^= work;
	leftt ^= (work << 8);
	work = ((leftt >> 2) ^ right) & 0x33333333L;
	right ^= work;
	leftt ^= (work << 2);
	work = ((right >> 16) ^ leftt) & 0x0000ffffL;
	leftt ^= work;
	right ^= (work << 16);
	work = ((right >> 4) ^ leftt) & 0x0f0f0f0fL;
	leftt ^= work;
	right ^= (work << 4);
	*block++ = right;
	*block = leftt;
	return;
	}

#ifdef D2_DES

void des2key(unsigned char *hexkey, short cmode)		// stomps on Kn3 too 
{
	short revmod;

	revmod = (cmode == EN0) ? DE1 : EN0;
	deskey(&hexkey[8], revmod);
	cpkey(KnR);
	deskey(hexkey, cmode);
	cpkey(Kn3);					// Kn3 = KnL 
	return;
}

void Ddes(unsigned char *from, unsigned char *into)
{
	unsigned long work[2];

	scrunch(from, work);
	desfunc(work, KnL);
	desfunc(work, KnR);
	desfunc(work, Kn3);
	unscrun(work, into);
	return;
}

void D2des(unsigned char *from, unsigned char *into)
{
	unsigned long *right, *l1, swap;
	unsigned long leftt[2], bufR[2];

	right = bufR;
	l1 = &leftt[1];
	scrunch(from, leftt);
	scrunch(&from[8], right);
	desfunc(leftt, KnL);
	desfunc(right, KnL);
	swap = *l1;
	*l1 = *right;
	*right = swap;
	desfunc(leftt, KnR);
	desfunc(right, KnR);
	swap = *l1;
	*l1 = *right;
	*right = swap;
	desfunc(leftt, Kn3);
	desfunc(right, Kn3);
	unscrun(leftt, into);
	unscrun(right, &into[8]);
	return;
	}

void makekey(char *aptr, unsigned char *kptr)
{
	register unsigned char *store;
	register int first, i;
	unsigned long savek[96];

	cpDkey(savek);
	des2key(Df_Key, EN0);
	for( i = 0; i < 8; i++ ) kptr[i] = Df_Key[i];
	first = 1;
	while( (*aptr != '\0') || first ) {
		store = kptr;
		for( i = 0; i < 8 && (*aptr != '\0'); i++ ) {
			*store++ ^= *aptr & 0x7f;
			*aptr++ = '\0';
			}
		Ddes(kptr, kptr);
		first = 0;
		}
	useDkey(savek);
	return;
	}

void make2key(char *aptr, unsigned char *kptr)
{
	register unsigned char *store;
	register int first, i;
	unsigned long savek[96];

	cpDkey(savek);
	des2key(Df_Key, EN0);
	for( i = 0; i < 16; i++ ) kptr[i] = Df_Key[i];
	first = 1;
	while( (*aptr != '\0') || first ) {
		store = kptr;
		for( i = 0; i < 16 && (*aptr != '\0'); i++ ) {
			*store++ ^= *aptr & 0x7f;
			*aptr++ = '\0';
			}
		D2des(kptr, kptr);
		first = 0;
		}
	useDkey(savek);
	return;
	}

#ifndef D3_DES	 D2_DES only 
#ifdef	D2_DES	 iff D2_DES! 

void cp2key(unsigned long *into)
{
	register unsigned long *from, *endp;

	cpkey(into);
	into = &into[32];
	from = KnR, endp = &KnR[32];
	while( from < endp ) *into++ = *from++;
	return;
}

void use2key(unsigned long *from)				// stomps on Kn3 too 
{
	register unsigned long *to, *endp;

	usekey(from);
	from = &from[32];
	to = KnR, endp = &KnR[32];
	while( to < endp ) *to++ = *from++;
	cpkey(Kn3);					// Kn3 = KnL 
	return;
}

#endif	// iff D2_DES 
#else	 // D3_DES too 

static void D3des(unsigned char *, unsigned char *);

void des3key(unsigned char *hexkey, short mode)
{
	unsigned char *first, *third;
	short revmod;

	if( mode == EN0 ) {
		revmod = DE1;
		first = hexkey;
		third = &hexkey[16];
		}
	else {
		revmod = EN0;
		first = &hexkey[16];
		third = hexkey;
		}
	deskey(&hexkey[8], revmod);
	cpkey(KnR);
	deskey(third, mode);
	cpkey(Kn3);
	deskey(first, mode);
	return;
	}

void cp3key(unsigned long *into)
{
	register unsigned long *from, *endp;

	cpkey(into);
	into = &into[32];
	from = KnR, endp = &KnR[32];
	while( from < endp ) *into++ = *from++;
	from = Kn3, endp = &Kn3[32];
	while( from < endp ) *into++ = *from++;
	return;
	}

void use3key(unsigned long *from)
{
	register unsigned long *to, *endp;

	usekey(from);
	from = &from[32];
	to = KnR, endp = &KnR[32];
	while( to < endp ) *to++ = *from++;
	to = Kn3, endp = &Kn3[32];
	while( to < endp ) *to++ = *from++;
	return;
	}

static void D3des(unsigned char *from, unsigned char *into)	// amateur theatrics 
{
	unsigned long swap, leftt[2], middl[2], right[2];

	scrunch(from, leftt);
	scrunch(&from[8], middl);
	scrunch(&from[16], right);
	desfunc(leftt, KnL);
	desfunc(middl, KnL);
	desfunc(right, KnL);
	swap = leftt[1];
	leftt[1] = middl[0];
	middl[0] = swap;
	swap = middl[1];
	middl[1] = right[0];
	right[0] = swap;
	desfunc(leftt, KnR);
	desfunc(middl, KnR);
	desfunc(right, KnR);
	swap = leftt[1];
	leftt[1] = middl[0];
	middl[0] = swap;
	swap = middl[1];
	middl[1] = right[0];
	right[0] = swap;
	desfunc(leftt, Kn3);
	desfunc(middl, Kn3);
	desfunc(right, Kn3);
	unscrun(leftt, into);
	unscrun(middl, &into[8]);
	unscrun(right, &into[16]);
	return;
	}

void make3key(char *aptr, unsigned char*kptr)
{
	register unsigned char *store;
	register int first, i;
	unsigned long savek[96];

	cp3key(savek);
	des3key(Df_Key, EN0);
	for( i = 0; i < 24; i++ ) kptr[i] = Df_Key[i];
	first = 1;
	while( (*aptr != '\0') || first ) {
		store = kptr;
		for( i = 0; i < 24 && (*aptr != '\0'); i++ ) {
			*store++ ^= *aptr & 0x7f;
			*aptr++ = '\0';
			}
		D3des(kptr, kptr);
		first = 0;
		}
	use3key(savek);
	return;
	}

#endif	// D3_DES 
#endif	// D2_DES 














/* Validation sets:
 *
 * Single-length key, single-length plaintext -
 * Key	  : 0123 4567 89ab cdef
 * Plain  : 0123 4567 89ab cde7
 * Cipher : c957 4425 6a5e d31d
 *
 * Double-length key, single-length plaintext -
 * Key	  : 0123 4567 89ab cdef fedc ba98 7654 3210
 * Plain  : 0123 4567 89ab cde7
 * Cipher : 7f1d 0a77 826b 8aff
 *
 * Double-length key, double-length plaintext -
 * Key	  : 0123 4567 89ab cdef fedc ba98 7654 3210
 * Plain  : 0123 4567 89ab cdef 0123 4567 89ab cdff
 * Cipher : 27a0 8440 406a df60 278f 47cf 42d6 15d7
 *
 * Triple-length key, single-length plaintext -
 * Key	  : 0123 4567 89ab cdef fedc ba98 7654 3210 89ab cdef 0123 4567
 * Plain  : 0123 4567 89ab cde7
 * Cipher : de0b 7c06 ae5e 0ed5
 *
 * Triple-length key, double-length plaintext -
 * Key	  : 0123 4567 89ab cdef fedc ba98 7654 3210 89ab cdef 0123 4567
 * Plain  : 0123 4567 89ab cdef 0123 4567 89ab cdff
 * Cipher : ad0d 1b30 ac17 cf07 0ed1 1c63 81e4 4de5
 *
 * d3des V5.0a rwo 9208.07 18:44 Graven Imagery
 **********************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美顶级少妇做爰| 成人av先锋影音| 欧美一区二区在线看| 日韩国产精品久久久| 91麻豆精品国产91久久久使用方法 | 一区二区在线观看不卡| 色呦呦网站一区| 亚洲成av人综合在线观看| 7777精品伊人久久久大香线蕉最新版 | 欧美日韩国产天堂| 日韩电影在线免费| www亚洲一区| 不卡av免费在线观看| 亚洲伊人伊色伊影伊综合网| 日韩三级伦理片妻子的秘密按摩| 久久精品国产一区二区三区免费看| 久久久久久久一区| 97se亚洲国产综合自在线| 五月天国产精品| 26uuu国产电影一区二区| 91麻豆国产自产在线观看| 首页综合国产亚洲丝袜| 国产欧美视频一区二区三区| 欧亚一区二区三区| 久久99精品国产麻豆婷婷洗澡| 中文字幕 久热精品 视频在线| 欧美三级韩国三级日本三斤| 国产伦理精品不卡| 夜夜操天天操亚洲| 精品免费国产一区二区三区四区| av成人动漫在线观看| 麻豆精品精品国产自在97香蕉 | 亚洲欧美日韩久久| 日韩一二三区视频| 99精品久久只有精品| 精品一区二区久久| 亚洲成人精品影院| 国产精品欧美一级免费| 日韩一级大片在线| 在线免费视频一区二区| 国产高清不卡一区| 蜜桃视频在线观看一区二区| 一区二区三区精品在线| 欧美国产在线观看| 日韩欧美国产三级电影视频| 色一情一伦一子一伦一区| 国产一区福利在线| 日本三级亚洲精品| 艳妇臀荡乳欲伦亚洲一区| 国产精品亲子乱子伦xxxx裸| 精品对白一区国产伦| 91精品一区二区三区在线观看| 91同城在线观看| 成人免费黄色在线| 国产一区二区三区蝌蚪| 青青草成人在线观看| 婷婷六月综合亚洲| 亚洲成人一区二区| 亚洲免费观看高清完整版在线 | 国产精品久久夜| 久久精品视频在线免费观看| 日韩精品一区二| 91麻豆精品国产91久久久| 欧美色爱综合网| 色综合久久综合中文综合网| 99精品国产91久久久久久 | 国产在线视视频有精品| 男女视频一区二区| 日韩不卡一区二区三区| 亚洲电影你懂得| 亚洲第一福利一区| 亚洲国产欧美日韩另类综合| 亚洲一区在线视频| 亚洲va天堂va国产va久| 婷婷开心激情综合| 日韩国产精品久久久久久亚洲| 天天综合日日夜夜精品| 日本亚洲最大的色成网站www| 亚洲va国产va欧美va观看| 午夜在线电影亚洲一区| 五月天亚洲精品| 另类小说色综合网站| 国内精品伊人久久久久av一坑| 韩国三级电影一区二区| 国产精品2024| 99re视频这里只有精品| 91成人在线免费观看| 欧美妇女性影城| 日韩午夜激情电影| 国产性做久久久久久| 国产精品五月天| 亚洲女与黑人做爰| 亚洲成av人片一区二区| 久久精品国产99国产精品| 国产一区亚洲一区| 91小视频在线免费看| 精品视频全国免费看| 日韩美一区二区三区| 国产视频一区二区在线观看| 亚洲欧美一区二区三区久本道91| 亚洲一区二三区| 久久精品国产成人一区二区三区 | 精品剧情在线观看| 国产日韩欧美高清| 亚洲免费观看高清在线观看| 午夜欧美2019年伦理| 国产在线视频一区二区| 色综合一个色综合| 91精品国产麻豆国产自产在线| 久久亚洲精品国产精品紫薇| ...中文天堂在线一区| 丝袜美腿一区二区三区| 国产一区二区伦理片| 色综合久久久久综合体| 日韩午夜av电影| 国产精品国产自产拍在线| 丝袜美腿一区二区三区| 国产69精品久久久久777| 欧美性色欧美a在线播放| 日韩免费观看高清完整版| 亚洲免费在线播放| 久久99国产乱子伦精品免费| 色综合久久综合网| 久久精品综合网| 婷婷综合五月天| 97久久超碰精品国产| 欧美xxx久久| 亚洲观看高清完整版在线观看| 国产白丝网站精品污在线入口| 欧美日韩视频在线一区二区| 中文一区二区完整视频在线观看 | 亚洲午夜电影在线| 高清beeg欧美| 日韩免费视频一区二区| 一区二区高清视频在线观看| 国产一区二区久久| 欧美一级黄色大片| 亚洲综合激情小说| 成人高清免费在线播放| 久久综合九色综合97婷婷| 午夜精品久久久久久不卡8050 | 91福利视频网站| 国产精品美女久久久久久2018| 久久成人精品无人区| 欧美精品久久天天躁| 亚洲一区二区三区四区中文字幕| 成人免费毛片a| 欧美激情一区在线| 国产高清成人在线| 欧美精品一区视频| 麻豆精品一区二区| 日韩情涩欧美日韩视频| 日日摸夜夜添夜夜添精品视频 | 成人免费三级在线| 久久精品男人的天堂| 激情综合一区二区三区| 欧美一区永久视频免费观看| 亚洲va韩国va欧美va| 欧美乱妇23p| 亚洲成av人片在线观看无码| 欧美色中文字幕| 亚洲va韩国va欧美va| 欧美日韩免费观看一区二区三区| 一区二区三区免费网站| 色8久久人人97超碰香蕉987| 综合色天天鬼久久鬼色| 99精品国产热久久91蜜凸| 亚洲另类在线制服丝袜| 在线欧美日韩精品| 五月天一区二区| 日韩美女主播在线视频一区二区三区| 日本免费新一区视频| 日韩久久久精品| 国产一区二区在线视频| 久久久久久97三级| 从欧美一区二区三区| 亚洲少妇最新在线视频| 91黄色激情网站| 天天综合日日夜夜精品| 欧美精品一区二区三区四区| 国产精品资源在线观看| 中文字幕乱码一区二区免费| 色综合久久久久综合体桃花网| 亚洲国产精品视频| 日韩视频永久免费| 国产高清精品久久久久| 亚洲三级小视频| 欧美精品第1页| 国产麻豆一精品一av一免费 | 懂色av一区二区夜夜嗨| 一区二区三区资源| 91精品啪在线观看国产60岁| 久久99精品视频| 亚洲人成网站色在线观看| 欧美日本韩国一区二区三区视频| 麻豆传媒一区二区三区| 国产精品色哟哟| 欧美日韩中文字幕精品| 国产中文字幕一区| 亚洲情趣在线观看|