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

📄 des_main.c

📁 DES/3DES算法的C语言实现
💻 C
字号:

#include "stdio.h"
#include "des.h"
#include "pub.h"

void main()
{
	unsigned char key1[] = "12345678";
	unsigned char key2[] = "abcdefgh";
	unsigned char key3[] = "~!@#$%^&";	//如果只需要两组密钥,则本组密钥可以和密钥1一样。
	unsigned char en_data[] = "龙的子孙";
	unsigned char en_out_put[8];

	printf("\r\n++++++++3DES 加密示例++++++++");

	print_hex("3DES [输入]明文 ", en_data, 8);
	print_hex("3DES [输入]密钥1", key1, 8);
	print_hex("3DES [输入]密钥2", key2, 8);
	print_hex("3DES [输入]密钥3", key3, 8);

	//3DES 加密
	des(en_data, key1, en_out_put, DES_ENCRYPT);
	des(en_out_put, key2, en_data, DES_DECRYPT);
	des(en_data, key3, en_out_put, DES_ENCRYPT);

	print_hex("3DES [输出]密文 ", en_out_put, 8);

	printf("\r\n");
	printf("\r\n++++++++3DES 解密示例++++++++");

	print_hex("3DES [输入]密文 ", en_out_put, 8);
	print_hex("3DES [输入]密钥1", key1, 8);
	print_hex("3DES [输入]密钥2", key2, 8);
	print_hex("3DES [输入]密钥3", key3, 8);
	//3DES 加密
	des(en_out_put, key3, en_data, DES_DECRYPT);
	des(en_data, key2, en_out_put, DES_ENCRYPT);
	des(en_out_put, key1, en_data, DES_DECRYPT);

	print_hex("3DES [输出]明文 ", en_data, 8);

	printf("\r\n");
	
	return;
}

⌨️ 快捷键说明

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