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

📄 test.cpp

📁 一种的著名的加解密算法ssf43. 国家密码管理委员会办公室批准的用于WLAN的SSF43对称分组加密算法.
💻 CPP
字号:
#include "ssf43.h"
#include "SymmCrypt.h"

void printMsg(char *title,bit8 *content,bit32 size)
{
	bit32 i;
	printf("%s[ ",title);
	for(i=0;i<size;i++)
	{
		printf("%02x ",content[i]);
	}
	printf("]\n");	
}

int WriteFile( char *name, bit8 *buf, int size )
{
	FILE* p = fopen(name, "wb");
	if( p!= NULL){
		fwrite( buf, 1, size, p);
	}else
		return -1;
	
	fclose(p);
	
	return 0;
}

//读取文件函数
int ReadFile( char* fileName, bit8* hbFileBuf, int* size )
{
	FILE *fp;	
	int i = 0;	

	if((fp = fopen(fileName,"rb"))==NULL)
	{		
		return -1;
	}

	while(!feof(fp))
	{			
		hbFileBuf[i] = (bit8)fgetc(fp);
		i++;
	}
	
	*size = i-1;
	fclose(fp);
	return 0;
}

int main()
{

	signed char asd=0x8f;
	unsigned char asdf=0x8f;
	char t1=0,t2,t3,t4,t5,t6;
	signed int tt1=0,tt2;
	t1=asd>>5;
	t2=asd>>8;
	t3=asd>>9;
	t4=asdf>>5;
	t5=asdf>>8;
	t6=asdf>>9;
	
	asd=0x8c;
	//t1=(asd<<8)|0x5a;
	//t2=((asd&0xffff)<<8)|0x5a;
        //t1=0x34;
	//t2=0x56;
	//t3=t2=t1;
	tt1=((signed int)asd)<<8;
	t1=asd<<8;


	int ret = 0;
/*	bit8 key[16] = {0x79,0x0c,0xcf,0x80,
					0x36,0x11,0x4c,0x95,
					0x6b,0x6c,0x64,0x43,
					0x99,0x6f,0x40,0xb8};
	bit8 plain[16] = {0xa4,0xa4,0x44,0x0a,
					  0x89,0x9e,0xa4,0xb3,
					  0x5a,0x18,0x48,0x29,
					  0x74,0x45,0x01,0x8c};*/
	bit8 key[16] = {0x00,0x00,0x00,0x00,
					0x00,0x00,0x00,0x00,
					0x00,0x00,0x00,0x00,
					0x00,0x00,0x00,0x01
					};
	bit8 plain[16] = {0x00,0x00,0x00,0x00,
					  0x00,0x00,0x00,0x00,
					  0x00,0x00,0x00,0x00,
					  0x00,0x00,0x00,0x00
					};
	
/*	bit8 cipher[16] = {0x44,0x90,0xf2,0xa7,
					   0x6f,0x4c,0x05,0xa3,
					   0x17,0x42,0xed,0xa5,
					   0x35,0xe4,0xb0,0xec
					};*/

	/*bit8 key[16] = {0x00,0x01,0x02,0x03,0x04,
					0x05,0x06,0x07,0x08,0x09,
					0x0a,0x0b,0x0c,0x0d,0x0e,
					0x0f};
	bit8 plain[16] = {0x00,0x01,0x02,0x03,0x04,
					0x05,0x06,0x07,0x08,0x09,
					0x0a,0x0b,0x0c,0x0d,0x0e,
					0x0f};*/
	bit8 cipher[16];
	bit8 de_cipher[16];

	bit32 g_enKey[40];
	bit32 g_deKey[40];

	printMsg("密钥为:", key, 16);

	printMsg("输入明文为:", plain, 16);

//	en_key_ssf43(key, g_enKey);
	printf("层密钥为:");
//	for(int i=0; i<40; i++)
//	{
//		printf("%08x ",g_enKey[i]);
//	}
	printf("\n");

//	cipher_ssf43(g_enKey, plain, cipher);	

//	de_key_ssf43(g_enKey,g_deKey);
	
//	cipher_ssf43(g_deKey, cipher, de_cipher);

	printMsg("密文为:", cipher, 16);
	printMsg("明文为:", de_cipher, 16);
	
	return ret;
}

⌨️ 快捷键说明

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