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

📄 message2.c

📁 这篇是写的关于最基础的加密和解密的流程。 这只是一个最基本的模型。
💻 C
字号:
#include"message.h"
#include"string.h"

void main()
{
	int i,j;

	char str1[8]={'K','Z','R','e','p','o','r','t'};
	char str2[8];
	char str3[8];

	//明文


	//密钥
	int k1[8];

	//储存明文的二进制码
	int m[8][8];

	//储存密钥的二进制码
	int k[8][8];

	//储存密文的二进制码
	int c1[8][8];
	int c2[8][8];

	//储存由密文转换过来的明文二进制码
	int mm[8][8];

	int m1[8];
	int m11[8];
	int mm1[8];
	int mm11[8];

	for(i=0;i<8;i++)
	{
		m1[i]=0;
		m11[i]=0;
		mm1[i]=0;
		mm11[i]=0;
	}

	printf("\n\n");
/******************************************** Translate the message to crypto message ******************************************************************/

	printf("******************* Translate the message to crypto message ******************\n\n");

	printf("The message(string):	");	
	for(i=0;i<8;i++)
		printf("%c",str1[i]);
	printf("\n\n");


	for(i=0;i<8;i++)
		m1[i]=chartfmint(str1[i]);


	printf("The message(10):\n");
	for(i=0;i<8;i++)
		printf("%d	",m1[i]);
	printf("\n\n");


	getkey(k1,8);
	printf("The key(10):\n");
	for(i=0;i<8;i++)
		printf("%d	",k1[i]);
	printf("\n\n");


	//将ASCLL码装换成二进制码

	inttfmbyte(m,m1,8);

	printf("The message(2):\n");
	for(i=0;i<8;i++)
	{
		printf("		");
		for(j=0;j<8;j++)
			printf("%d  ",m[i][j]);
		printf("\n");
	}

		

	inttfmbyte(k,k1,8);

	printf("The key(2):\n");
	for(i=0;i<8;i++)
	{
		printf("		");
		for(j=0;j<8;j++)
			printf("%d  ",k[i][j]);
		printf("\n");
	}



	mtoc(m,k,c1,8);

	printf("The crypto message(2):\n");
	for(i=0;i<8;i++)
	{
		printf("		");
		for(j=0;j<8;j++)
			printf("%d  ",c1[i][j]);
		printf("\n");
	}

	bytetfmint(c1,mm1,8);

	printf("The crypto message(10):\n");
	for(i=0;i<8;i++)
		printf("%d	",mm1[i]);
	printf("\n\n");


	
	for(i=0;i<8;i++)
		str2[i]=inttfmchar(mm1[i]);

	printf("The crypto message(string):	");
	for(i=0;i<8;i++)
		printf("%c",str2[i]);
	printf("\n\n\n");

	

	
/******************************************** Translate the crypto message to  message ******************************************************************/


	printf("******************* Translate the crypto message to  message ******************\n\n");

	printf("The crypto message(string):	");
	for(i=0;i<8;i++)
		printf("%c",str2[i]);
	printf("\n\n");

	for(i=0;i<8;i++)
		m11[i]=chartfmint(str2[i]);

	printf("The crypto message(10):\n");
	for(i=0;i<8;i++)
		printf("%d	",m11[i]);
	printf("\n");


	printf("The crypto message(2):\n");
	for(i=0;i<8;i++)
	{
		printf("		");
		for(j=0;j<8;j++)
			printf("%d  ",c1[i][j]);
		printf("\n");
	}


	inttfmbyte(c2,m11,8);


	printf("The key(2):\n");
	for(i=0;i<8;i++)
	{
		printf("		");
		for(j=0;j<8;j++)
			printf("%d  ",k[i][j]);
		printf("\n");
	}



	ctom(c2,k,mm,8);

	printf("Translate crypto message to message(2):\n");
	for(i=0;i<8;i++)
	{
		printf("		");
		for(j=0;j<8;j++)
			printf("%d  ",mm[i][j]);
		printf("\n");
	}


	bytetfmint(mm,m11,8);

	printf("Thranslate crypto message to message(10):\n");
	for(i=0;i<8;i++)
		printf("%d	",m11[i]);
	printf("\n\n");



	for(i=0;i<8;i++)
		str3[i]=inttfmchar(m11[i]);

	printf("Thranslate crypto message to message(string):	");
	for(i=0;i<8;i++)
		printf("%c",str3[i]);
	printf("\n\n");


	printf("whether the input and translate string is the same (YES or NO):	");

	for(i=0;i<8;i++)
		if (str1[i]!=str3[i])
			break;
	if(i==8)	
		printf("YES");
	else
		printf("N0");
		
	printf("\n\n");


}

⌨️ 快捷键说明

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