亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? aestest.c

?? 學(xué)習(xí)LOKI97加密解密算法的代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* * aestest - program to run AES test data files on specified algorithm *         Customise the ALG name and include file below and link with *         any alg satisfying the AES C-API. * * written by Lawrie Brown <lawre.Brown@adfa.oz.au> / May 1998 */#define ALG "LOKI97"		/*** Customise - algorithm name ***/#include "loki97.h"		/*** Customise - algorithm header file ***/char *usage = "aestest [-K|-E|-D [-e|-c] file] [-v]\n\    \t\twith no options, runs all AES test files in current dir, OR\n\    -K file\t\trun KAT test on named file\n\    -E -e|-c file\trun encrypt MCT test in ECB|CBC mode on file\n\    -D -e|-c file\trun decrypt MCT test in ECB|CBC mode on file\n\    -v\t\t\tincrease verbosity";#define MAXLINE	512		/* max line length in input test file *//* define constants for the types of tests we recognise */#define KAT	1#define	EMCT	2#define	DMCT	3char *map_tests[] = {"None", "KAT", "Encrypt MCT", "Decrypt MCT"};/* global variables */char *fname = NULL;		/* name of custom test file */int test_type = KAT;		/* type of test for custom file */int test_mode = MODE_ECB;	/* mode of test for custom file */int verbose = 0;		/* verbose output flag *//* local func prototypes */int chk_kat(int keysize, char *key, BYTE plain[], BYTE cipher[]);int chk_e_ecb_mct(int keysize, char *key, char *iv, BYTE plain[], BYTE cipher[]);int chk_d_ecb_mct(int keysize, char *key, char *iv, BYTE plain[], BYTE cipher[]);int chk_e_cbc_mct(int keysize, char *key, char *iv, BYTE plain[], BYTE cipher[]);int chk_d_cbc_mct(int keysize, char *key, char *iv, BYTE plain[], BYTE cipher[]);int init(int argc, char **argv);int runtest(char *filename, int test, int mode);static BYTE *charToBYTE(BYTE *buf, char *hex, int len);static int fromHex (char ch);static int puthex(BYTE *out, int len, FILE *f);/* * aestest main program - process all AES test files for specified algorithm */int main(int argc, char **argv){    init(argc, argv);				/* Process command-line args */    if (fname) { 		/* run custom test file */	runtest(fname,test_type,test_mode);    } else {	/* Run all standard AES test files assumed to be in current dir */	runtest("ecb_vk.txt",KAT,MODE_ECB);	runtest("ecb_vt.txt",KAT,MODE_ECB);	runtest("ecb_tbl.txt",KAT,MODE_ECB);	runtest("ecb_int.txt",KAT,MODE_ECB);	runtest("ecb_e_m.txt",EMCT,MODE_ECB);	runtest("ecb_d_m.txt",DMCT,MODE_ECB);	runtest("cbc_e_m.txt",EMCT,MODE_CBC);	runtest("cbc_d_m.txt",DMCT,MODE_CBC);    }}/* * init - process command-line args, setting global flags as needed */int init(int argc, char **argv){    /* process options the old way so dont need getopt */    while (argc > 1 && argv[1][0] == '-') {        switch (argv[1][1]) {            case 'K':		/* -K : KAT test */                test_type = KAT;                break;            case 'E':		/* -E : Encrypt MCT test */                test_type = EMCT;                break;            case 'D':		/* -D : Decrypt MCT test */                test_type = DMCT;                break;            case 'e':		/* -e : in ECB mode */                test_mode = MODE_ECB;                break;            case 'c':		/* -c : in CBC mode */                test_mode = MODE_CBC;                break;            case 'v':		/* -v : increase verbosity */                verbose++;                break;            default:		fprintf(stderr, "Unknown arg %s\n", argv[1]);            case 'h':                fprintf(stderr,"%s\n",usage);                exit(1);        }	argc--;	argv++;    }    if (argc > 1)	fname = argv[1];		/* custom test file given */}/* * runtest(filename,test,mode) *   - read and verify test data from filename, *     using the specified test (KAT, EMCT, DMCT) and mode (ECB or CBC) */int runtest(char *filename, int test, int mode){    FILE	*inp;			/* input file descriptor */    char	s[MAXLINE];		/* buffer for next line read from inp */				/* These hold the data for the next test */    int		keysize = 0;		/* keysize in bits */    int		i;			/* input number of this test */    char	key[MAXLINE] = "";	/* key hex string */    char	iv[MAXLINE] = "";	/* IV hex string */    BYTE	pt[BLOCK_SIZE];		/* plaintext block */    BYTE	ct[BLOCK_SIZE];		/* ciphertext block */    int		total, good, bad;	/* counts of total, good & bad test */    int		gotone = FALSE;		/* flag saying if reading a test */    int		st;    total = good = bad = 0;		/* zero counts */    printf("### %s test %s for mode %s using file %s\n",            ALG, map_tests[test], (mode==MODE_ECB?"ECB":"CBC"), filename);    /* open test data file */    inp = fopen(filename, "r");    if (!inp) { printf("  failed: unable to open %s\n", filename); return 0; }    /* read and process all lines from test data file */    while ( fgets(s,sizeof(s),inp) ) {	/* read next line from test file */	if (s[0] == '\n') {		/* blank line - treat as test delim */	    if (gotone) {		/* have been collecting test data */		if (test == KAT)		    st = chk_kat(keysize, key, pt, ct);		else if ((test == EMCT) && (mode == MODE_ECB))		    st = chk_e_ecb_mct(keysize, key, iv, pt, ct);		else if ((test == DMCT) && (mode == MODE_ECB))		    st = chk_d_ecb_mct(keysize, key, iv, pt, ct);		else if ((test == EMCT) && (mode == MODE_CBC))		    st = chk_e_cbc_mct(keysize, key, iv, pt, ct);		else if ((test == DMCT) && (mode == MODE_CBC))		    st = chk_d_cbc_mct(keysize, key, iv, pt, ct);		else st = 0;		total++;		if (st) good++;		else	bad++;	        gotone = FALSE;	    }	    if (verbose) fprintf(stderr,"  %s", s);	} else if (strncmp("KEYSIZE=",s,8)==0) {	/* check wanted tags */	    sscanf(s,"KEYSIZE=%d",&keysize);	    if (verbose) fprintf(stderr,"KEYSIZE=%d\n", keysize);	} else if (strncmp("I=",s,2)==0) {	    sscanf(s,"I=%d",&i);	    gotone = TRUE;			/* found another test case */	    if (verbose) fprintf(stderr,"I=%d\n", i);	} else if (strncmp("KEY=",s,4)==0) {	    sscanf(s,"KEY=%s",key);	    if (verbose) fprintf(stderr,"KEY=%s\n", key);	} else if (strncmp("IV=",s,3)==0) {	    sscanf(s,"IV=%s",iv);	    if (verbose) fprintf(stderr,"IV=%s\n", iv);	} else if (strncmp("PT=",s,3)==0) {            charToBYTE(pt,s+3,sizeof(pt));	    if (verbose) {fprintf(stderr,"PT="); puthex(pt,16,stderr); fprintf(stderr,"\n");}	} else if (strncmp("CT=",s,3)==0) {            charToBYTE(ct,s+3,sizeof(ct));	    if (verbose) {fprintf(stderr,"CT="); puthex(ct,16,stderr); fprintf(stderr,"\n");}	} else { 					/* otherwise ignore */	    if (verbose) fprintf(stderr,"%s", s);	}    }    /* display overall results */    if (total == good)        printf("  all %d tests OK\n", good);    else        printf("  ran %d tests with %d OK and %d FAILURES!\n", total, good, bad);}/*  *  chk_kat(keysize, key, pt, ct) - check KAT test for given key, plain, cipher */int chk_kat(int keysize, char *key, BYTE plain[], BYTE cipher[]){    int			enok = TRUE, deok = TRUE;	/* success/fail flags */    BYTE		etemp[BLOCK_SIZE], dtemp[BLOCK_SIZE];	/* tmp blocks */    keyInstance		enc_key, dec_key;	/* AES keyInstances */    cipherInstance	aes_cipher;		/* AES cipherInstance */    int	i, st;    /* Init AES cipher in ECB mode */    st = cipherInit(&aes_cipher, MODE_ECB, NULL);    if (st != TRUE) { fprintf(stderr, "cipherInit failed with code %d\n", st); return FALSE; }    /* Create key structs for encrypt */    st = makeKey(&enc_key, DIR_ENCRYPT, keysize, key);    if (st != TRUE) { fprintf(stderr, "makeKey failed with code %d\n", st); return FALSE; }    /* test encrypt */    st = blockEncrypt(&aes_cipher, &enc_key, plain, BLOCK_SIZE*8, etemp);    if (st != TRUE) { fprintf(stderr, "blockEncrypt failed with code %d\n", st); return FALSE; }    if (memcmp(etemp, cipher, sizeof(etemp)) != 0) enok = FALSE;    if (verbose>1) {        fprintf(stderr,"PT: "); puthex(plain,16,stderr);        fprintf(stderr,"encrypt to: "); puthex(etemp,16,stderr);    }    if (verbose) fprintf(stderr,"  encrypt %s\t", (enok?"GOOD" : "FAILED"));

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲欧美色| 欧美成人r级一区二区三区| 国产一区二三区| 奇米综合一区二区三区精品视频| 亚洲综合久久av| 偷拍亚洲欧洲综合| 日日夜夜精品视频免费| 美腿丝袜亚洲一区| 国产精品亚洲午夜一区二区三区| 麻豆精品视频在线观看视频| 久久国产精品99久久人人澡| 激情综合网激情| 国产·精品毛片| 91丨九色丨国产丨porny| 99re66热这里只有精品3直播| aaa欧美色吧激情视频| 在线国产电影不卡| 777a∨成人精品桃花网| 久久综合狠狠综合久久激情 | 亚洲一区二区美女| 一区二区三区四区精品在线视频 | 欧美一区2区视频在线观看| 555www色欧美视频| 久久综合狠狠综合| 国产精品福利在线播放| 亚洲一区二区三区国产| 精品在线观看视频| av激情成人网| 欧美一区二区三区日韩视频| 久久午夜色播影院免费高清 | 日韩亚洲电影在线| 久久久久99精品国产片| 亚洲精品菠萝久久久久久久| 另类人妖一区二区av| 国产精品一二三四五| 91久久久免费一区二区| 欧美电影免费提供在线观看| 国产精品成人一区二区三区夜夜夜| 一区二区免费在线播放| 国产一区欧美二区| 欧美精品99久久久**| 国产精品免费aⅴ片在线观看| 亚洲国产另类av| 国产成人av电影免费在线观看| 欧美日韩一本到| 国产精品你懂的在线| 日韩成人av影视| 成人一区二区三区在线观看| 3atv一区二区三区| 亚洲日本欧美天堂| 国产电影精品久久禁18| 欧美日韩国产综合一区二区三区| 国产三级久久久| 日产国产高清一区二区三区 | 91麻豆精品91久久久久同性| 国产精品天干天干在线综合| 久久精品免费观看| 欧美色窝79yyyycom| 17c精品麻豆一区二区免费| 激情图片小说一区| 91麻豆精品国产综合久久久久久| 亚洲欧美区自拍先锋| 高清在线不卡av| 精品国产乱码久久久久久久久| 亚洲国产美国国产综合一区二区| 成人av先锋影音| 日本一区二区三区在线观看| 久久精品国产免费| 日韩一级大片在线| 美女在线一区二区| 6080午夜不卡| 天堂久久久久va久久久久| 91电影在线观看| 亚洲一本大道在线| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 制服.丝袜.亚洲.另类.中文| 亚洲精品国产一区二区精华液 | 久久综合久色欧美综合狠狠| 日韩中文字幕亚洲一区二区va在线| 欧洲日韩一区二区三区| 亚洲日本青草视频在线怡红院| 9l国产精品久久久久麻豆| 亚洲欧洲成人精品av97| 99精品久久99久久久久| 国产精品成人一区二区三区夜夜夜 | 日韩视频免费直播| 国产美女视频91| 国产精品久久午夜| 97久久久精品综合88久久| 亚洲自拍偷拍图区| 日韩亚洲国产中文字幕欧美| 国产一区二区三区在线看麻豆| 久久综合九色综合97婷婷| 成人app软件下载大全免费| 亚洲欧洲日产国产综合网| 色88888久久久久久影院按摩| 亚洲人午夜精品天堂一二香蕉| 欧美午夜精品一区二区三区| 五月开心婷婷久久| 久久精品视频一区二区三区| 成人sese在线| 性欧美疯狂xxxxbbbb| 精品国产一二三| 91香蕉视频污| 日本aⅴ免费视频一区二区三区 | 国产一区视频导航| 亚洲欧美视频一区| 欧美一区二区视频在线观看2020| 精品一区二区三区在线观看国产| 欧美激情在线看| 欧美精品自拍偷拍| 国产东北露脸精品视频| 亚洲成人手机在线| 国产精品久久久久久久第一福利| 欧美日韩综合色| 国产精品99久久久久久宅男| 伊人一区二区三区| 久久先锋资源网| 欧美久久一二区| 成人aa视频在线观看| 久久99这里只有精品| 亚洲精品乱码久久久久久久久 | 成人18视频日本| 喷水一区二区三区| 亚洲乱码中文字幕| 国产午夜一区二区三区| 欧美精品xxxxbbbb| 91色porny| 成人视屏免费看| 激情综合一区二区三区| 夜夜夜精品看看| 欧美国产一区二区| 精品sm捆绑视频| 欧美一区三区四区| 欧美三级乱人伦电影| 99久久婷婷国产综合精品电影| 蜜桃一区二区三区在线| 亚洲在线免费播放| 亚洲另类春色国产| 国产精品大尺度| 国产精品乱人伦| 中文字幕国产一区| 久久精品这里都是精品| 久久综合狠狠综合久久综合88 | 久久综合久久综合久久综合| 欧美一级片免费看| 91精品国产综合久久精品app| 日本高清视频一区二区| 99久久精品国产导航| 成人h动漫精品一区二| 岛国av在线一区| 成人激情综合网站| 99久久精品99国产精品| 99视频一区二区| 色综合久久中文综合久久97| 92精品国产成人观看免费| 99久久精品国产导航| 色94色欧美sute亚洲线路二| 91浏览器在线视频| 91精品福利在线| 欧美男人的天堂一二区| 538在线一区二区精品国产| 欧美一区二区三区日韩| 欧美mv日韩mv国产| 久久久久亚洲蜜桃| 中文字幕亚洲一区二区av在线| 日韩美女精品在线| 亚洲国产精品久久人人爱| 午夜a成v人精品| 狠狠色丁香久久婷婷综合_中| 国产成人精品三级麻豆| www.欧美精品一二区| 日本高清不卡一区| 91精品一区二区三区久久久久久| 欧美一区二区三区四区久久| 久久久久久久电影| 1区2区3区国产精品| 偷偷要91色婷婷| 国产麻豆视频精品| 色琪琪一区二区三区亚洲区| 欧美日韩国产电影| 久久精品视频一区二区三区| 亚洲天天做日日做天天谢日日欢| 午夜私人影院久久久久| 国产麻豆精品一区二区| 91高清在线观看| 久久久国产精品麻豆| 一区二区三区四区激情| 久久精品国产亚洲一区二区三区| 成人激情av网| 国产乱码字幕精品高清av | 伦理电影国产精品| 国产裸体歌舞团一区二区| 波多野结衣在线aⅴ中文字幕不卡| 欧美天天综合网| 国产欧美日韩久久| 蜜臀a∨国产成人精品| voyeur盗摄精品| 欧美成人一区二区三区片免费 | 久久一留热品黄|