⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dec5502_des.h

📁 DSP开发可以用来看外设情况的程序
💻 H
字号:

/************************************************************************/
/* FileName:	DEC5502_DES.h											*/
/* Function: 	Declare DES algorithm functions							*/
/************************************************************************/

#ifndef DEC5502_DES_h
#define DEC5502_DES_h

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

typedef union {
	unsigned long blok[2];
	unsigned short word[4];
	unsigned int byte[8];
	} M68K;

/********************************************************************************/
/*	函数名:		Des8() 															*/
/* 	功能:		实现Single-DES 算法,根据Mode生成16个48位的加/解密子密钥,		*/
/*				把待加/解密的数据分割成64位的块,逐块完成16次迭代加/解密,		*/
/*				加/解密后的结果存放在OutData所指向的内存中.						*/
/*				8字节待加/解密数据输入,8字节密钥、8字节加/解密后数据输出		*/
/*	参数:																		*/
/*				InData----存放待加/解密的内存指针(长度为Readlen,可能经过填充)	*/
/*				Key-------存放用户输入的密钥内存的指针							*/
/*              OutData---存放加/解密后的输出结果								*/
/*				Mode------加/解密选择(加密=EN0,解密=DE1)						*/
/*            	Readlen---待加/解密的长度(8字节的倍数,如:8字节数据readlen=1		*/
/*						  16字节数据readlen=2等等)								*/
/********************************************************************************/
void Des8(unsigned short int *InData,unsigned short int *Key,unsigned short int *OutData,short Mode,int Readlen);

/********************************************************************************/
/*	函数名:		Des16() 														*/
/* 	功能:		实现Triple-DES 算法,根据Mode生成三组各16个48位的加/解密子密钥,	*/
/*				把待加/解密的数据分割成64位的块,逐块由key左右各半部分进行三遍	*/
/*				16次迭代加/解密,加/解密后的结果存放在OutData所指向的内存中.8字	*/
/*				节待加/解密数据输入,16字节密钥、8字节加/解密后数据输出.			*/
/*	参数:																		*/
/*				InData----存放待加/解密的内存指针(长度为Readlen,可能经过填充)	*/
/*				Key-------存放用户输入的密钥内存的指针							*/
/*              OutData---存放加/解密后的输出结果								*/
/*				Mode------加/解密选择(加密=EN0,解密=DE1)						*/
/*            	Readlen---待加/解密的长度(8字节的倍数,如:8字节数据Readlen=1,	*/
/*						  16字节数据Readlen=2等等)								*/
/********************************************************************************/
void Des16(unsigned short int *InData,unsigned short int *Key,unsigned short int *OutData,short Mode,int Readlen);

#endif

/******************************************************************************/
/*	No more																	  */
/******************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -