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

📄 casttest.c

📁 采用CAST-256位加密的Back Orifice 2000(BO2000)插件
💻 C
字号:
/* *	CAST-128 in C *	Written by Steve Reid <sreid@sea-to-sky.net> *	100% Public Domain - no warranty *	Released 1997.10.11 */#include <stdio.h>#include "cast.h"int main(int argc, char** argv){int i;cast_key key;u8 a[16] = {	0x01, 0x23, 0x45, 0x67, 0x12, 0x34, 0x56, 0x78,	0x23, 0x45, 0x67, 0x89, 0x34, 0x56, 0x78, 0x9A};u8 b[16] = {	0x01, 0x23, 0x45, 0x67, 0x12, 0x34, 0x56, 0x78,	0x23, 0x45, 0x67, 0x89, 0x34, 0x56, 0x78, 0x9A};	printf("Running maintenance test...\n");	for (i = 0; i < 1000000; i++) {		/* aL = encrypt(aL,b); aR = encrypt(aR,b); */		cast_setkey(&key, b, 16);		cast_encrypt(&key, &a[0], &a[0]);		cast_encrypt(&key, &a[8], &a[8]);		/* bL = encrypt(bL,a); bR = encrypt(bR,a); */		cast_setkey(&key, a, 16);		cast_encrypt(&key, &b[0], &b[0]);		cast_encrypt(&key, &b[8], &b[8]);	}	printf("a = ");	for (i = 0; i < 16; i++) {		printf("%02X ", a[i]);	}	printf("\nb = ");	for (i = 0; i < 16; i++) {		printf("%02X ", b[i]);	}	printf("\nReversing test...\n");	for (i = 0; i < 1000000; i++) {		/* bL = decrypt(bL,a); bR = decrypt(bR,a); */		cast_setkey(&key, a, 16);		cast_decrypt(&key, &b[0], &b[0]);		cast_decrypt(&key, &b[8], &b[8]);		/* aL = decrypt(aL,b); aR = decrypt(aR,b); */		cast_setkey(&key, b, 16);		cast_decrypt(&key, &a[0], &a[0]);		cast_decrypt(&key, &a[8], &a[8]);	}	printf("a = ");	for (i = 0; i < 16; i++) {		printf("%02X ", a[i]);	}	printf("\nb = ");	for (i = 0; i < 16; i++) {		printf("%02X ", b[i]);	}	printf("\n");	return(0);}

⌨️ 快捷键说明

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