test_main.c

来自「FREESWAN VPN源代码包」· C语言 代码 · 共 35 行

C
35
字号
#include <stdio.h>#include <string.h>#include "twofish_cbc.h"#define BLOCK_SIZE	16#define KEY_SIZE 	128	/* bits */#define KEY 		"1234567890123456"#define STR 		"hola guaso como estaisss ... 012"#define STRSZ		(sizeof(STR)-1)#define BLKLEN 		BLOCK_SIZE#define CONTEXT_T  	twofish_contextstatic int pretty_print(const unsigned char *buf, int count) {	int i=0;	for (;i<count;i++) printf ("%02hhx ", buf[i]);	putchar('\n');	return i;}//#define SIZE STRSZ/2#define SIZE STRSZint main() {	int ret;	char buf0[SIZE+1], buf1[SIZE+1];	char IV[BLOCK_SIZE];	CONTEXT_T ac;		twofish_set_key(&ac, (void *)KEY, KEY_SIZE);	memset(buf0, 0, sizeof (buf0));	memset(buf1, 0, sizeof (buf1));	twofish_cbc_encrypt(&ac, STR, buf0, SIZE, IV, 1);	pretty_print(buf0, SIZE);	printf("size=%d ret=%d\n%s\n", SIZE, ret, buf0);	ret=twofish_cbc_encrypt(&ac, buf0, buf1, SIZE, IV, 0);	printf("size=%d ret=%d\n%s\n", SIZE, ret, buf1);	return 0;}

⌨️ 快捷键说明

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