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

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

?? dec5502_des.c

?? 1、該P(yáng)ERIPHERAL文件夾包含五個有關(guān)系統(tǒng)外設(shè)的程序:DEC5502_USB、DEC5502_LED和DEC5502_UART程序。 2、DEC5502_USB程序主要實現(xiàn)了與PC機(jī)應(yīng)用程
?? C
?? 第 1 頁 / 共 2 頁
字號:

/************************************************************************/
/* FileName:	DEC5502_DES.c											*/
/* Function: 	Define DES algorithm functions							*/
/************************************************************************/

#define EN0	0	// MODE == encrypt
#define DE1	1	// MODE == decrypt

/* 聲明原型函數(shù) */
static void Scrunch(unsigned short int *, unsigned long *);
static void Unscrun(unsigned long *, unsigned short int *);
static void DesCore(unsigned long *, unsigned long *);
static void Cookey(unsigned long *);

/* 定義存儲密鑰的數(shù)據(jù)結(jié)構(gòu) */
static unsigned long KnL[32] = { 0L };
static unsigned long KnR[32] = { 0L };
static unsigned long Kn3[32] = { 0L };

/* 定義置換表 */
static unsigned short ByteBit[8] = {
	0200, 0100, 040, 020, 010, 04, 02, 01 };

static unsigned long BigByte[24] = {
	0x800000L,	0x400000L,	0x200000L,	0x100000L,
	0x80000L,	0x40000L,	0x20000L,	0x10000L,
	0x8000L,	0x4000L,	0x2000L,	0x1000L,
	0x800L, 	0x400L, 	0x200L, 	0x100L,
	0x80L,		0x40L,		0x20L,		0x10L,
	0x8L,		0x4L,		0x2L,		0x1L	};

static unsigned short int PC1[56] = {
	56, 48, 40, 32, 24, 16,  8,	 0, 57, 49, 41, 33, 25, 17,
	 9,  1, 58, 50, 42, 34, 26,	18, 10,  2, 59, 51, 43, 35,
	62, 54, 46, 38, 30, 22, 14,	 6, 61, 53, 45, 37, 29, 21,
	13,  5, 60, 52, 44, 36, 28,	20, 12,  4, 27, 19, 11,  3 };

static unsigned short int Totrot[16] = {
	1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28 };

static unsigned short int PC2[48] = {
	13, 16, 10, 23,  0,  4,  2, 27, 14,  5, 20,  9,
	22, 18, 11,  3, 25,  7, 15,  6, 26, 19, 12,  1,
	40, 51, 30, 36, 46, 54, 29, 39, 50, 44, 32, 47,
	43, 48, 38, 55, 33, 52, 45, 41, 49, 35, 28, 31 };
	
static unsigned long SP1[64] = {
	0x01010400L, 0x00000000L, 0x00010000L, 0x01010404L,
	0x01010004L, 0x00010404L, 0x00000004L, 0x00010000L,
	0x00000400L, 0x01010400L, 0x01010404L, 0x00000400L,
	0x01000404L, 0x01010004L, 0x01000000L, 0x00000004L,
	0x00000404L, 0x01000400L, 0x01000400L, 0x00010400L,
	0x00010400L, 0x01010000L, 0x01010000L, 0x01000404L,
	0x00010004L, 0x01000004L, 0x01000004L, 0x00010004L,
	0x00000000L, 0x00000404L, 0x00010404L, 0x01000000L,
	0x00010000L, 0x01010404L, 0x00000004L, 0x01010000L,
	0x01010400L, 0x01000000L, 0x01000000L, 0x00000400L,
	0x01010004L, 0x00010000L, 0x00010400L, 0x01000004L,
	0x00000400L, 0x00000004L, 0x01000404L, 0x00010404L,
	0x01010404L, 0x00010004L, 0x01010000L, 0x01000404L,
	0x01000004L, 0x00000404L, 0x00010404L, 0x01010400L,
	0x00000404L, 0x01000400L, 0x01000400L, 0x00000000L,
	0x00010004L, 0x00010400L, 0x00000000L, 0x01010004L };

static unsigned long SP2[64] = {
	0x80108020L, 0x80008000L, 0x00008000L, 0x00108020L,
	0x00100000L, 0x00000020L, 0x80100020L, 0x80008020L,
	0x80000020L, 0x80108020L, 0x80108000L, 0x80000000L,
	0x80008000L, 0x00100000L, 0x00000020L, 0x80100020L,
	0x00108000L, 0x00100020L, 0x80008020L, 0x00000000L,
	0x80000000L, 0x00008000L, 0x00108020L, 0x80100000L,
	0x00100020L, 0x80000020L, 0x00000000L, 0x00108000L,
	0x00008020L, 0x80108000L, 0x80100000L, 0x00008020L,
	0x00000000L, 0x00108020L, 0x80100020L, 0x00100000L,
	0x80008020L, 0x80100000L, 0x80108000L, 0x00008000L,
	0x80100000L, 0x80008000L, 0x00000020L, 0x80108020L,
	0x00108020L, 0x00000020L, 0x00008000L, 0x80000000L,
	0x00008020L, 0x80108000L, 0x00100000L, 0x80000020L,
	0x00100020L, 0x80008020L, 0x80000020L, 0x00100020L,
	0x00108000L, 0x00000000L, 0x80008000L, 0x00008020L,
	0x80000000L, 0x80100020L, 0x80108020L, 0x00108000L };

static unsigned long SP3[64] = {
	0x00000208L, 0x08020200L, 0x00000000L, 0x08020008L,
	0x08000200L, 0x00000000L, 0x00020208L, 0x08000200L,
	0x00020008L, 0x08000008L, 0x08000008L, 0x00020000L,
	0x08020208L, 0x00020008L, 0x08020000L, 0x00000208L,
	0x08000000L, 0x00000008L, 0x08020200L, 0x00000200L,
	0x00020200L, 0x08020000L, 0x08020008L, 0x00020208L,
	0x08000208L, 0x00020200L, 0x00020000L, 0x08000208L,
	0x00000008L, 0x08020208L, 0x00000200L, 0x08000000L,
	0x08020200L, 0x08000000L, 0x00020008L, 0x00000208L,
	0x00020000L, 0x08020200L, 0x08000200L, 0x00000000L,
	0x00000200L, 0x00020008L, 0x08020208L, 0x08000200L,
	0x08000008L, 0x00000200L, 0x00000000L, 0x08020008L,
	0x08000208L, 0x00020000L, 0x08000000L, 0x08020208L,
	0x00000008L, 0x00020208L, 0x00020200L, 0x08000008L,
	0x08020000L, 0x08000208L, 0x00000208L, 0x08020000L,
	0x00020208L, 0x00000008L, 0x08020008L, 0x00020200L };

static unsigned long SP4[64] = {
	0x00802001L, 0x00002081L, 0x00002081L, 0x00000080L,
	0x00802080L, 0x00800081L, 0x00800001L, 0x00002001L,
	0x00000000L, 0x00802000L, 0x00802000L, 0x00802081L,
	0x00000081L, 0x00000000L, 0x00800080L, 0x00800001L,
	0x00000001L, 0x00002000L, 0x00800000L, 0x00802001L,
	0x00000080L, 0x00800000L, 0x00002001L, 0x00002080L,
	0x00800081L, 0x00000001L, 0x00002080L, 0x00800080L,
	0x00002000L, 0x00802080L, 0x00802081L, 0x00000081L,
	0x00800080L, 0x00800001L, 0x00802000L, 0x00802081L,
	0x00000081L, 0x00000000L, 0x00000000L, 0x00802000L,
	0x00002080L, 0x00800080L, 0x00800081L, 0x00000001L,
	0x00802001L, 0x00002081L, 0x00002081L, 0x00000080L,
	0x00802081L, 0x00000081L, 0x00000001L, 0x00002000L,
	0x00800001L, 0x00002001L, 0x00802080L, 0x00800081L,
	0x00002001L, 0x00002080L, 0x00800000L, 0x00802001L,
	0x00000080L, 0x00800000L, 0x00002000L, 0x00802080L };

static unsigned long SP5[64] = {
	0x00000100L, 0x02080100L, 0x02080000L, 0x42000100L,
	0x00080000L, 0x00000100L, 0x40000000L, 0x02080000L,
	0x40080100L, 0x00080000L, 0x02000100L, 0x40080100L,
	0x42000100L, 0x42080000L, 0x00080100L, 0x40000000L,
	0x02000000L, 0x40080000L, 0x40080000L, 0x00000000L,
	0x40000100L, 0x42080100L, 0x42080100L, 0x02000100L,
	0x42080000L, 0x40000100L, 0x00000000L, 0x42000000L,
	0x02080100L, 0x02000000L, 0x42000000L, 0x00080100L,
	0x00080000L, 0x42000100L, 0x00000100L, 0x02000000L,
	0x40000000L, 0x02080000L, 0x42000100L, 0x40080100L,
	0x02000100L, 0x40000000L, 0x42080000L, 0x02080100L,
	0x40080100L, 0x00000100L, 0x02000000L, 0x42080000L,
	0x42080100L, 0x00080100L, 0x42000000L, 0x42080100L,
	0x02080000L, 0x00000000L, 0x40080000L, 0x42000000L,
	0x00080100L, 0x02000100L, 0x40000100L, 0x00080000L,
	0x00000000L, 0x40080000L, 0x02080100L, 0x40000100L };

static unsigned long SP6[64] = {
	0x20000010L, 0x20400000L, 0x00004000L, 0x20404010L,
	0x20400000L, 0x00000010L, 0x20404010L, 0x00400000L,
	0x20004000L, 0x00404010L, 0x00400000L, 0x20000010L,
	0x00400010L, 0x20004000L, 0x20000000L, 0x00004010L,
	0x00000000L, 0x00400010L, 0x20004010L, 0x00004000L,
	0x00404000L, 0x20004010L, 0x00000010L, 0x20400010L,
	0x20400010L, 0x00000000L, 0x00404010L, 0x20404000L,
	0x00004010L, 0x00404000L, 0x20404000L, 0x20000000L,
	0x20004000L, 0x00000010L, 0x20400010L, 0x00404000L,
	0x20404010L, 0x00400000L, 0x00004010L, 0x20000010L,
	0x00400000L, 0x20004000L, 0x20000000L, 0x00004010L,
	0x20000010L, 0x20404010L, 0x00404000L, 0x20400000L,
	0x00404010L, 0x20404000L, 0x00000000L, 0x20400010L,
	0x00000010L, 0x00004000L, 0x20400000L, 0x00404010L,
	0x00004000L, 0x00400010L, 0x20004010L, 0x00000000L,
	0x20404000L, 0x20000000L, 0x00400010L, 0x20004010L };

static unsigned long SP7[64] = {
	0x00200000L, 0x04200002L, 0x04000802L, 0x00000000L,
	0x00000800L, 0x04000802L, 0x00200802L, 0x04200800L,
	0x04200802L, 0x00200000L, 0x00000000L, 0x04000002L,
	0x00000002L, 0x04000000L, 0x04200002L, 0x00000802L,
	0x04000800L, 0x00200802L, 0x00200002L, 0x04000800L,
	0x04000002L, 0x04200000L, 0x04200800L, 0x00200002L,
	0x04200000L, 0x00000800L, 0x00000802L, 0x04200802L,
	0x00200800L, 0x00000002L, 0x04000000L, 0x00200800L,
	0x04000000L, 0x00200800L, 0x00200000L, 0x04000802L,
	0x04000802L, 0x04200002L, 0x04200002L, 0x00000002L,
	0x00200002L, 0x04000000L, 0x04000800L, 0x00200000L,
	0x04200800L, 0x00000802L, 0x00200802L, 0x04200800L,
	0x00000802L, 0x04000002L, 0x04200802L, 0x04200000L,
	0x00200800L, 0x00000000L, 0x00000002L, 0x04200802L,
	0x00000000L, 0x00200802L, 0x04200000L, 0x00000800L,
	0x04000002L, 0x04000800L, 0x00000800L, 0x00200002L };

static unsigned long SP8[64] = {
	0x10001040L, 0x00001000L, 0x00040000L, 0x10041040L,
	0x10000000L, 0x10001040L, 0x00000040L, 0x10000000L,
	0x00040040L, 0x10040000L, 0x10041040L, 0x00041000L,
	0x10041000L, 0x00041040L, 0x00001000L, 0x00000040L,
	0x10040000L, 0x10000040L, 0x10001000L, 0x00001040L,
	0x00041000L, 0x00040040L, 0x10040040L, 0x10041000L,
	0x00001040L, 0x00000000L, 0x00000000L, 0x10040040L,
	0x10000040L, 0x10001000L, 0x00041040L, 0x00040000L,
	0x00041040L, 0x00040000L, 0x10041000L, 0x00001000L,
	0x00000040L, 0x10040040L, 0x00001000L, 0x00041040L,
	0x10001000L, 0x00000040L, 0x10000040L, 0x10040000L,
	0x10040040L, 0x10000000L, 0x00040000L, 0x10001040L,
	0x00000000L, 0x10041040L, 0x00040040L, 0x10000040L,
	0x10040000L, 0x10001000L, 0x10001040L, 0x00000000L,
	0x10041040L, 0x00041000L, 0x00041000L, 0x00001040L,
	0x00001040L, 0x00040040L, 0x10000000L, 0x10041000L };


/********************************************************************************/
/*	函數(shù)名:		Get_Subkey() 													*/
/* 	功能:		根據(jù)Mode所指方式,將輸入的8字節(jié)Key排列重組						*/
/*				生成16個48Bits的加/解密子密鑰,子密鑰存入KnL中					*/
/*	參數(shù): 																		*/		
/*				Key-----指向輸入的8字節(jié)Key										*/
/*				Mode----工作模式,指明操作是加密還是解密							*/
/********************************************************************************/
void Get_Subkey(unsigned short int * Key,short Mode)
{
	register short int i, j, k, m, n;
	unsigned short int pc1m[56], pcr[56];
	unsigned long kn[32];

	// 實現(xiàn)密鑰的初始排列,得到置換后56bits密鑰
	for ( j = 0; j < 56; j++ ) 
	{
		k = PC1[j];
		m = k & 07;
		pc1m[j] = (Key[k >> 3] & ByteBit[m]) ? 1 : 0;
	}
	
	// 由置換后的56bits密鑰來獲取16個48bits字密鑰
	for( i = 0; i < 16; i++ ) 
	{
		if( Mode == DE1 )
		m = (15 - i) << 1;
		
		else m = i << 1;
		n = m + 1;
		
		kn[m] = kn[n] = 0L;
		for( j = 0; j < 28; j++ ) 
		{
			k = j + Totrot[i];
			if( k < 28 ) 
			pcr[j] = pc1m[k];
			else 
			pcr[j] = pc1m[k - 28];
		}
		for( j = 28; j < 56; j++ ) 
		{
		    k = j + Totrot[i];
		    if( k < 56 ) 
		    pcr[j] = pc1m[k];
		    else 
		    pcr[j] = pc1m[k - 28];
		}
		for( j = 0; j < 24; j++ ) 
		{
			if( pcr[PC2[j]] ) 
			kn[m] |= BigByte[j];
			if( pcr[PC2[j+24]] ) 
			kn[n] |= BigByte[j];
		}
	}
	Cookey(kn);
	return;
}

/****************************************************************/
/*	函數(shù)名:		Usekey() 										*/
/* 	功能:		實現(xiàn)密鑰的拷貝,將存放在源地址中的密鑰拷貝到KnL	*/
/*	參數(shù):														*/
/*				From-----指向密鑰拷貝的源地址					*/
/****************************************************************/
void Usekey(register unsigned long *From)
{
	register unsigned long *To, *EndPtr;

	To = KnL, EndPtr = &KnL[32];
	while( To < EndPtr ) 
	*To++ = *From++;
	return;
}

/****************************************************************/
/*	函數(shù)名:		Cookey() 										*/
/* 	功能:		實現(xiàn)密鑰的拷貝,將存放在源地址中的密鑰拷貝到KnL	*/
/*	參數(shù):														*/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品成人在线观看| 国产亚洲欧美日韩俺去了| 99视频国产精品| 国产成人小视频| 国产福利91精品| 春色校园综合激情亚洲| 成人激情文学综合网| 成+人+亚洲+综合天堂| 成人免费毛片app| 色综合一区二区三区| 色视频欧美一区二区三区| av电影一区二区| 91日韩一区二区三区| 91国产免费观看| 欧美人xxxx| 欧美videos大乳护士334| 久久综合色天天久久综合图片| 精品三级在线看| 国产欧美在线观看一区| 中文一区二区在线观看| 综合激情成人伊人| 午夜伦欧美伦电影理论片| 国产午夜精品久久久久久免费视| 欧美日韩免费观看一区二区三区 | 色香蕉成人二区免费| 色偷偷一区二区三区| 欧美日韩在线播放| 精品福利一二区| 亚洲欧洲av一区二区三区久久| 亚洲激情在线播放| 日韩电影免费在线观看网站| 激情另类小说区图片区视频区| 国产不卡视频在线观看| 91福利小视频| 精品欧美一区二区久久 | 亚洲国产欧美日韩另类综合| 日本欧美一区二区在线观看| 国产成人亚洲精品狼色在线| 色狠狠一区二区| 日韩欧美美女一区二区三区| 中文字幕精品—区二区四季| 亚洲国产欧美日韩另类综合| 国产一区二区h| 欧美三级蜜桃2在线观看| 欧美精品一区二区三区蜜桃视频| 中文字幕永久在线不卡| 日韩国产欧美视频| 97精品久久久午夜一区二区三区 | 亚洲午夜三级在线| 黑人巨大精品欧美一区| 97久久人人超碰| 精品国产露脸精彩对白| 亚洲人精品午夜| 久久99精品久久久| 色诱亚洲精品久久久久久| 日韩欧美一区电影| 一区二区不卡在线视频 午夜欧美不卡在| 日本不卡的三区四区五区| 99久久er热在这里只有精品15| 制服丝袜中文字幕一区| 国产精品灌醉下药二区| 精品一区二区三区不卡| 欧美视频在线观看一区| 国产欧美日韩精品一区| 日韩精品每日更新| 99精品视频免费在线观看| 精品美女一区二区| 亚洲综合一区在线| 国产成人啪免费观看软件| 五月天亚洲精品| 国产精品一品二品| 国产精品你懂的在线| 久久精品在线免费观看| 亚洲444eee在线观看| 成人免费毛片高清视频| 精品国精品国产尤物美女| 午夜在线成人av| 亚洲激情一二三区| 成人国产精品免费网站| 精品国产一二三区| 日韩av在线播放中文字幕| 欧美中文字幕不卡| 亚洲视频一区二区在线观看| 国产黄人亚洲片| 精品欧美一区二区三区精品久久| 亚洲国产一区在线观看| 91高清在线观看| 成人免费视频在线观看| 成人永久看片免费视频天堂| 精品成人私密视频| 麻豆91在线看| 日韩丝袜情趣美女图片| 视频一区在线视频| 欧美男女性生活在线直播观看| 一区二区视频在线| 色婷婷综合久久久久中文一区二区| 日本一区二区三区四区在线视频 | 日韩高清国产一区在线| 一本一道久久a久久精品| 国产视频911| 国产精品一区二区无线| 精品国产91亚洲一区二区三区婷婷| 首页欧美精品中文字幕| 欧美精品久久一区二区三区| 亚洲成人综合在线| 欧美精品自拍偷拍| 青青草91视频| 欧美成人精品1314www| 免费人成黄页网站在线一区二区| 在线播放国产精品二区一二区四区| 亚州成人在线电影| 欧美日韩精品高清| 日本欧美一区二区在线观看| 日韩美女视频一区二区在线观看| 久草热8精品视频在线观看| 欧美sm极限捆绑bd| 国产精品88888| 中国av一区二区三区| 97精品国产露脸对白| 一区二区久久久久| 欧美一区二区三区色| 精品一区二区三区蜜桃| 国产午夜精品在线观看| 不卡一区二区三区四区| 亚洲免费在线视频一区 二区| 欧美在线观看禁18| 日韩二区三区在线观看| 国产成人aaaa| 国产亚洲综合av| 国产精品久久午夜| 99re这里都是精品| 亚洲高清在线精品| 欧美刺激午夜性久久久久久久| 激情都市一区二区| 亚洲国产高清不卡| 91老司机福利 在线| 日日摸夜夜添夜夜添精品视频| 日韩欧美一级二级三级| 国产高清精品久久久久| 综合欧美亚洲日本| 欧美伊人精品成人久久综合97| 亚洲国产精品精华液ab| 色国产精品一区在线观看| 婷婷开心久久网| 国产亚洲一二三区| 欧美自拍偷拍一区| 国内成人精品2018免费看| 中文字幕一区不卡| 欧美美女喷水视频| 国产精品69久久久久水密桃| 亚洲国产综合人成综合网站| 精品久久久影院| 日本久久精品电影| 久久97超碰国产精品超碰| 亚洲人成人一区二区在线观看| 91麻豆精品国产91| 波多野结衣中文字幕一区 | 国产精品美女久久久久久久久久久| 中文字幕av不卡| 日本v片在线高清不卡在线观看| 欧美亚洲一区二区三区四区| 久久91精品国产91久久小草| 亚洲免费av在线| 26uuu国产日韩综合| 91福利视频在线| 国产不卡免费视频| 日韩不卡一区二区| 亚洲色图另类专区| 精品国产乱码久久久久久闺蜜| 欧美性色欧美a在线播放| 国产福利精品一区二区| 日韩电影一区二区三区| 亚洲精品欧美专区| 国产拍欧美日韩视频二区| 欧美一区二区三级| 在线观看欧美黄色| 99久久国产综合色|国产精品| 精品一二三四区| 日本欧美韩国一区三区| 亚洲综合色成人| 国产精品久久久久久户外露出 | 欧美日韩精品一区二区三区| av一区二区三区| 国产美女精品在线| 日本免费在线视频不卡一不卡二| 一区二区三区中文字幕精品精品 | 国产精品久久毛片| 久久99精品久久只有精品| 一区二区三区日韩精品视频| 国产欧美日韩另类一区| 精品国产乱码久久久久久闺蜜 | 中文字幕一区二区不卡| 久久综合视频网| 日韩女同互慰一区二区| 欧美片在线播放| 欧美丝袜丝交足nylons图片| 在线中文字幕不卡| 91在线精品一区二区三区| 成人免费黄色大片| 懂色中文一区二区在线播放|