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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rijndael-test-fst.c

?? AES最新加密解密算法
?? C
?? 第 1 頁 / 共 2 頁
字號:
	BYTE inBlock[256/8], outBlock[256/8], binKey[256/8], cv[256/8];	BYTE keyMaterial[320];	keyInstance keyInst;	cipherInstance cipherInst;#ifdef TRACE_KAT_MCT	int width = 0;	clock_t elapsed = -clock();	printf("Executing CBC MCT (%s, key %d): ",		direction == DIR_ENCRYPT ? "ENCRYPT" : "DECRYPT", keyLength);	fflush (stdout);#endif /* ?TRACE_KAT_MCT */	fprintf (fp,		"\n"		"==========\n"		"\n"		"KEYSIZE=%d\n", keyLength);	fflush(fp);	memset(cv, 0, 16);	memset(inBlock, 0, 16);	memset(binKey, 0, keyLength/8);	for (i = 0; i < 400; i++) {#ifdef TRACE_KAT_MCT                         while (width-- > 0) {        	putchar('\b');        }        width = printf("%d", i);        fflush(stdout);    #endif /* ?TRACE_KAT_MCT */		fprintf (fp, "\nI=%d\n", i);		/* prepare key: */		for (j = 0; j < keyLength/8; j++) {			sprintf (&keyMaterial[2*j], "%02X", binKey[j]);		}		keyMaterial[keyLength/4] = 0;		fprintf(fp, "KEY=%s\n", keyMaterial);		r = makeKey(&keyInst, direction, keyLength, keyMaterial);		if (TRUE != r) {			fprintf(stderr,"makeKey error %d\n",r);			exit(-1);		}		r = cipherInit(&cipherInst, MODE_ECB, NULL);		if (TRUE != r) {			fprintf(stderr,"cipherInit error %d\n",r);			exit(-1);		}		/* do encryption/decryption: */		blockPrint(fp, cv, "IV");		blockPrint(fp, inBlock, direction == DIR_ENCRYPT ? "PT" : "CT");		if (direction == DIR_ENCRYPT) {			for (j = 0; j < 10000; j++) {				for (t = 0; t < 16; t++) {					inBlock[t] ^= cv[t];				}				r = blockEncrypt(&cipherInst, &keyInst, inBlock, 128, outBlock);				if (128 != r) {					fprintf(stderr,"blockEncrypt error %d\n",r);					exit(-1);				}				memcpy(inBlock, cv, 16);				memcpy(cv, outBlock, 16);			}		} else {			for (j = 0; j < 10000; j++) {				blockDecrypt(&cipherInst, &keyInst, inBlock, 128, outBlock);				for (t = 0; t < 16; t++) {					outBlock[t] ^= cv[t];				}				memcpy(cv, inBlock, 16);				memcpy(inBlock, outBlock, 16);			}		}		blockPrint(fp, outBlock, direction == DIR_ENCRYPT ? "CT" : "PT");		/* prepare new key: */		switch (keyLength) {		case 128:			for (j = 0; j < 128/8; j++) {				binKey[j] ^= outBlock[j];			}			break;		case 192:			for (j = 0; j < 64/8; j++) {				if (direction == DIR_ENCRYPT) {					binKey[j] ^= inBlock[j + 64/8];				} else {					binKey[j] ^= cv[j + 64/8];				}			}			for (j = 0; j < 128/8; j++) {				binKey[j + 64/8] ^= outBlock[j];			}			break;		case 256:			for (j = 0; j < 128/8; j++) {				if (direction == DIR_ENCRYPT) {					binKey[j] ^= inBlock[j];				} else {					binKey[j] ^= cv[j];				}			}			for (j = 0; j < 128/8; j++) {				binKey[j + 128/8] ^= outBlock[j];			}			break;		}	}#ifdef TRACE_KAT_MCT	elapsed += clock();    while (width-- > 0) {    	putchar('\b');    }	printf("%d done (%.1f s).\n", i, (float)elapsed/CLOCKS_PER_SEC);#endif /* ?TRACE_KAT_MCT */} /* rijndaelCBC_MCT */static void makeMCTs(const char *ecbEncryptionFile, const char *ecbDecryptionFile,		const char *cbcEncryptionFile, const char *cbcDecryptionFile) {	FILE *fp;	/* prepare ECB Encryption Monte Carlo Tests: */	fp = fopen(ecbEncryptionFile, "w");	fprintf(fp,		"\n"		"=========================\n"		"\n"		"FILENAME:  \"%s\"\n"		"\n"		"Electronic Codebook (ECB) Mode - ENCRYPTION\n"		"Monte Carlo Test\n"		"\n"		"Algorithm Name: Rijndael\n"		"Principal Submitter: %s\n",		ecbEncryptionFile, SUBMITTER);	fflush(fp);	rijndaelECB_MCT(fp, 128, DIR_ENCRYPT);	rijndaelECB_MCT(fp, 192, DIR_ENCRYPT);	rijndaelECB_MCT(fp, 256, DIR_ENCRYPT);	fprintf(fp,		"\n"		"===========");	fclose(fp);	/* prepare ECB Decryption Monte Carlo Tests: */	fp = fopen(ecbDecryptionFile, "w");	fprintf(fp,		"\n"		"=========================\n"		"\n"		"FILENAME:  \"%s\"\n"		"\n"		"Electronic Codebook (ECB) Mode - DECRYPTION\n"		"Monte Carlo Test\n"		"\n"		"Algorithm Name: Rijndael\n"		"Principal Submitter: %s\n",		ecbDecryptionFile, SUBMITTER);	fflush(fp);	rijndaelECB_MCT(fp, 128, DIR_DECRYPT);	rijndaelECB_MCT(fp, 192, DIR_DECRYPT);	rijndaelECB_MCT(fp, 256, DIR_DECRYPT);	fprintf(fp,		"\n"		"===========");	fclose(fp);	/* prepare CBC Encryption Monte Carlo Tests: */	fp = fopen (cbcEncryptionFile, "w");	fprintf(fp,		"\n"		"=========================\n"		"\n"		"FILENAME:  \"%s\"\n"		"\n"		"Cipher Block Chaining (CBC) Mode - ENCRYPTION\n"		"Monte Carlo Test\n"		"\n"		"Algorithm Name: Rijndael\n"		"Principal Submitter: %s\n",		cbcEncryptionFile, SUBMITTER);	fflush(fp);	rijndaelCBC_MCT(fp, 128, DIR_ENCRYPT);	rijndaelCBC_MCT(fp, 192, DIR_ENCRYPT);	rijndaelCBC_MCT(fp, 256, DIR_ENCRYPT);	fprintf(fp,		"\n"		"===========");	fclose(fp);	/* prepare CBC Decryption Monte Carlo Tests: */	fp = fopen(cbcDecryptionFile, "w");	fprintf(fp,		"\n"		"=========================\n"		"\n"		"FILENAME:  \"%s\"\n"		"\n"		"Cipher Block Chaining (CBC) Mode - DECRYPTION\n"		"Monte Carlo Test\n"		"\n"		"Algorithm Name: Rijndael\n"		"Principal Submitter: %s\n",		cbcDecryptionFile, SUBMITTER);	fflush(fp);	rijndaelCBC_MCT(fp, 128, DIR_DECRYPT);	rijndaelCBC_MCT(fp, 192, DIR_DECRYPT);	rijndaelCBC_MCT(fp, 256, DIR_DECRYPT);	fprintf(fp,		"\n"		"===========");	fclose(fp);} /* makeMCTs */static void makeFIPSTestVectors(const char *fipsFile) {	int i, keyLength, r;	keyInstance keyInst;	cipherInstance cipherInst;	BYTE keyMaterial[320];	u8 pt[16], ct[16];	char format[64];	FILE *fp;#ifdef TRACE_KAT_MCT	printf("Generating FIPS test vectors...");#endif /* ?TRACE_KAT_MCT */		fp = fopen(fipsFile, "w");	fprintf(fp,		"\n"		"================================\n\n"		"FILENAME:  \"%s\"\n\n"		"FIPS Test Vectors\n",		fipsFile);	/* 128-bit key: 00010103...0e0f: */	keyLength = 128;	memset(keyMaterial, 0, sizeof (keyMaterial));	for (i = 0; i < keyLength/8; i++) {		sprintf(&keyMaterial[2*i], "%02X", i);	}		fprintf(fp, "\n================================\n\n");	fprintf(fp, "KEYSIZE=128\n\n");    fprintf(fp, "KEY=%s\n\n", keyMaterial);	/* plaintext is always 00112233...eeff: */	for (i = 0; i < 16; i++) {		pt[i] = (i << 4) | i;	}    /* encryption: */		makeKey(&keyInst, DIR_ENCRYPT, keyLength, keyMaterial);	cipherInit(&cipherInst, MODE_ECB, NULL);	fprintf(fp, "Round Subkey Values (Encryption)\n\n");    for (r = 0; r <= keyInst.Nr; r++) {        fprintf(fp, "RK%d=", r);        for (i = 0; i < 4; i++) {            u32 w = keyInst.rk[4*r + i];            fprintf(fp, "%02X%02X%02X%02X", w >> 24, (w >> 16) & 0xff, (w >> 8) & 0xff, w & 0xff);        }        fprintf(fp, "\n");    }	fprintf(fp, "\nIntermediate Ciphertext Values (Encryption)\n\n");	blockPrint(fp, pt, "PT");	for (i = 1; i < keyInst.Nr; i++) {		cipherUpdateRounds(&cipherInst, &keyInst, pt, 16, ct, i);		sprintf(format, "CT%d", i);		blockPrint(fp, ct, format);	}	cipherUpdateRounds(&cipherInst, &keyInst, pt, 16, ct, keyInst.Nr);	blockPrint(fp, ct, "CT");	    /* decryption: */		makeKey(&keyInst, DIR_DECRYPT, keyLength, keyMaterial);	cipherInit(&cipherInst, MODE_ECB, NULL);	fprintf(fp, "\nRound Subkey Values (Decryption)\n\n");    for (r = 0; r <= keyInst.Nr; r++) {        fprintf(fp, "RK%d=", r);        for (i = 0; i < 4; i++) {            u32 w = keyInst.rk[4*r + i];            fprintf(fp, "%02X%02X%02X%02X", w >> 24, (w >> 16) & 0xff, (w >> 8) & 0xff, w & 0xff);        }        fprintf(fp, "\n");    }	fprintf(fp, "\nIntermediate Ciphertext Values (Decryption)\n\n");	blockPrint(fp, ct, "CT");	for (i = 1; i < keyInst.Nr; i++) {		cipherUpdateRounds(&cipherInst, &keyInst, ct, 16, pt, i);		sprintf(format, "PT%d", i);		blockPrint(fp, pt, format);	}	cipherUpdateRounds(&cipherInst, &keyInst, ct, 16, pt, keyInst.Nr);	blockPrint(fp, pt, "PT");	/* 192-bit key: 00010103...1617: */	keyLength = 192;	memset(keyMaterial, 0, sizeof (keyMaterial));	for (i = 0; i < keyLength/8; i++) {		sprintf(&keyMaterial[2*i], "%02X", i);	}		fprintf(fp, "\n================================\n\n");	fprintf(fp, "KEYSIZE=192\n\n");    fprintf(fp, "KEY=%s\n\n", keyMaterial);	/* plaintext is always 00112233...eeff: */	for (i = 0; i < 16; i++) {		pt[i] = (i << 4) | i;	}    /* encryption: */		makeKey(&keyInst, DIR_ENCRYPT, keyLength, keyMaterial);	cipherInit(&cipherInst, MODE_ECB, NULL);	fprintf(fp, "\nRound Subkey Values (Encryption)\n\n");    for (r = 0; r <= keyInst.Nr; r++) {        fprintf(fp, "RK%d=", r);        for (i = 0; i < 4; i++) {            u32 w = keyInst.rk[4*r + i];            fprintf(fp, "%02X%02X%02X%02X", w >> 24, (w >> 16) & 0xff, (w >> 8) & 0xff, w & 0xff);        }        fprintf(fp, "\n");    }	fprintf(fp, "\nIntermediate Ciphertext Values (Encryption)\n\n");	blockPrint(fp, pt, "PT");	for (i = 1; i < keyInst.Nr; i++) {		cipherUpdateRounds(&cipherInst, &keyInst, pt, 16, ct, i);		sprintf(format, "CT%d", i);		blockPrint(fp, ct, format);	}	cipherUpdateRounds(&cipherInst, &keyInst, pt, 16, ct, keyInst.Nr);	blockPrint(fp, ct, "CT");	    /* decryption: */		makeKey(&keyInst, DIR_DECRYPT, keyLength, keyMaterial);	cipherInit(&cipherInst, MODE_ECB, NULL);	fprintf(fp, "\nRound Subkey Values (Decryption)\n\n");    for (r = 0; r <= keyInst.Nr; r++) {        fprintf(fp, "RK%d=", r);        for (i = 0; i < 4; i++) {            u32 w = keyInst.rk[4*r + i];            fprintf(fp, "%02X%02X%02X%02X", w >> 24, (w >> 16) & 0xff, (w >> 8) & 0xff, w & 0xff);        }        fprintf(fp, "\n");    }	fprintf(fp, "\nIntermediate Ciphertext Values (Decryption)\n\n");	blockPrint(fp, ct, "CT");	for(i = 1; i < keyInst.Nr; i++) {		cipherUpdateRounds(&cipherInst, &keyInst, ct, 16, pt, i);		sprintf(format, "PT%d", i);		blockPrint(fp, pt, format);	}	cipherUpdateRounds(&cipherInst, &keyInst, ct, 16, pt, keyInst.Nr);	blockPrint(fp, pt, "PT");	/* 256-bit key: 00010103...1e1f: */	keyLength = 256;	memset(keyMaterial, 0, sizeof (keyMaterial));	for (i = 0; i < keyLength/8; i++) {		sprintf(&keyMaterial[2*i], "%02X", i);	}		fprintf(fp, "\n================================\n\n");	fprintf(fp, "KEYSIZE=256\n\n");    fprintf(fp, "KEY=%s\n\n", keyMaterial);	/* plaintext is always 00112233...eeff: */	for (i = 0; i < 16; i++) {		pt[i] = (i << 4) | i;	}    /* encryption: */		makeKey(&keyInst, DIR_ENCRYPT, keyLength, keyMaterial);	cipherInit(&cipherInst, MODE_ECB, NULL);	fprintf(fp, "\nRound Subkey Values (Encryption)\n\n");    for (r = 0; r <= keyInst.Nr; r++) {        fprintf(fp, "RK%d=", r);        for (i = 0; i < 4; i++) {            u32 w = keyInst.rk[4*r + i];            fprintf(fp, "%02X%02X%02X%02X", w >> 24, (w >> 16) & 0xff, (w >> 8) & 0xff, w & 0xff);        }        fprintf(fp, "\n");    }	fprintf(fp, "\nIntermediate Ciphertext Values (Encryption)\n\n");	blockPrint(fp, pt, "PT");	for(i = 1; i < keyInst.Nr; i++) {		cipherUpdateRounds(&cipherInst, &keyInst, pt, 16, ct, i);		sprintf(format, "CT%d", i);		blockPrint(fp, ct, format);	}	cipherUpdateRounds(&cipherInst, &keyInst, pt, 16, ct, keyInst.Nr);	blockPrint(fp, ct, "CT");	    /* decryption: */		makeKey(&keyInst, DIR_DECRYPT, keyLength, keyMaterial);	cipherInit(&cipherInst, MODE_ECB, NULL);	fprintf(fp, "\nRound Subkey Values (Decryption)\n\n");    for (r = 0; r <= keyInst.Nr; r++) {        fprintf(fp, "RK%d=", r);        for (i = 0; i < 4; i++) {            u32 w = keyInst.rk[4*r + i];            fprintf(fp, "%02X%02X%02X%02X", w >> 24, (w >> 16) & 0xff, (w >> 8) & 0xff, w & 0xff);        }        fprintf(fp, "\n");    }	fprintf(fp, "\nIntermediate Ciphertext Values (Decryption)\n\n");	blockPrint(fp, ct, "CT");	for(i = 1; i < keyInst.Nr; i++) {		cipherUpdateRounds(&cipherInst, &keyInst, ct, 16, pt, i);		sprintf(format, "PT%d", i);		blockPrint(fp, pt, format);	}	cipherUpdateRounds(&cipherInst, &keyInst, ct, 16, pt, keyInst.Nr);	blockPrint(fp, pt, "PT");    fprintf(fp, "\n");	fclose(fp);#ifdef TRACE_KAT_MCT	printf(" done.\n");#endif /* ?TRACE_KAT_MCT */}#define ITERATIONS 10000000void rijndaelSpeed(int keyBits) {	int Nr, i;	u32 rk[4*(MAXNR + 1)];	u8 cipherKey[256/8], pt[16], ct[16];	clock_t elapsed;	float sec;	memset(cipherKey, 0, sizeof(cipherKey));	printf("================================\n");	printf("Speed measurement for %d-bit keys:\n", keyBits);	/*	 * Encryption key setup timing:	 */	elapsed = -clock();	for (i = 0; i < ITERATIONS; i++) {		Nr = rijndaelKeySetupEnc(rk, cipherKey, keyBits);	}	elapsed += clock();	sec = (float)elapsed/CLOCKS_PER_SEC;	printf("Encryption key schedule: %.1f s, %.0f Mbit/s\n",		sec, (float)ITERATIONS*128/sec/1000000);	/*	 * Encryption timing:	 */	elapsed = -clock();	for (i = 0; i < ITERATIONS; i++) {		rijndaelEncrypt(rk, Nr, pt, ct);	}	elapsed += clock();	sec = (float)elapsed/CLOCKS_PER_SEC;	printf("Encryption: %.1f s, %.0f Mbit/s\n",		sec, (float)ITERATIONS*128/sec/1000000);	/*	 * Decryption key setup timing:	 */	elapsed = -clock();	for (i = 0; i < ITERATIONS; i++) {		Nr = rijndaelKeySetupDec(rk, cipherKey, keyBits);	}	elapsed += clock();	sec = (float)elapsed/CLOCKS_PER_SEC;	printf("Decryption key schedule: %.1f s, %.0f Mbit/s\n",		sec, (float)ITERATIONS*128/sec/1000000);	/*	 * Decryption timing:	 */	elapsed = -clock();	for (i = 0; i < ITERATIONS; i++) {		rijndaelDecrypt(rk, Nr, pt, ct);	}	elapsed += clock();	sec = (float)elapsed/CLOCKS_PER_SEC;	printf("Decryption: %.1f s, %.0f Mbit/s\n",		sec, (float)ITERATIONS*128/sec/1000000);}int main(void) {	makeFIPSTestVectors("fips-test-vectors.txt");	makeKATs("ecb_vk.txt", "ecb_vt.txt", "ecb_tbl.txt", "ecb_iv.txt");	makeMCTs("ecb_e_m.txt", "ecb_d_m.txt", "cbc_e_m.txt", "cbc_d_m.txt");
	/*
	rijndaelSpeed(128);
	rijndaelSpeed(192);
	rijndaelSpeed(256);
	*/
	return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
最新成人av在线| caoporm超碰国产精品| 福利一区二区在线| 欧美精品日韩一本| 亚洲天堂2016| 国产69精品久久久久777| 欧美一级在线视频| 亚洲图片一区二区| 色婷婷狠狠综合| 中文字幕的久久| 成人一区二区三区| 精品88久久久久88久久久| 日韩精品一区第一页| 91国偷自产一区二区三区观看 | 久久丁香综合五月国产三级网站| 99精品国产99久久久久久白柏| 精品国产亚洲一区二区三区在线观看| 亚洲一区二区三区激情| 91最新地址在线播放| 国产精品午夜免费| 成人激情校园春色| 欧美激情一区二区三区不卡 | 日韩成人dvd| 欧美视频中文一区二区三区在线观看| 亚洲欧美日韩一区二区三区在线观看| 不卡视频在线观看| 国产精品国产三级国产有无不卡| 国产成人av一区| 中文字幕欧美区| 成人精品视频一区二区三区| 国产亚洲成aⅴ人片在线观看| 国内精品国产成人国产三级粉色| 日韩欧美激情一区| 激情偷乱视频一区二区三区| 日韩精品一区国产麻豆| 久久97超碰国产精品超碰| 精品国内二区三区| 国产成人综合在线观看| 国产人伦精品一区二区| 成人永久免费视频| 亚洲精品视频在线看| 在线精品视频一区二区| 亚洲成av人片一区二区| 欧美日韩国产123区| 日韩高清不卡在线| 久久这里只有精品6| 99这里都是精品| 亚洲一区二区中文在线| 日韩欧美亚洲一区二区| 国产尤物一区二区在线| 亚洲色图欧美在线| 久久美女高清视频| 国产成人午夜精品影院观看视频 | 中文字幕久久午夜不卡| 91尤物视频在线观看| 亚洲午夜三级在线| 日韩一区二区影院| 国产乱码精品一品二品| 欧美在线999| 日韩av一区二区三区四区| 欧美精品一区二| www.亚洲色图.com| 日韩精品成人一区二区在线| 精品国产麻豆免费人成网站| 色网站国产精品| 麻豆一区二区三区| 中文字幕一区日韩精品欧美| 在线播放视频一区| 国产盗摄精品一区二区三区在线 | 91精品福利在线一区二区三区| 国内精品第一页| 亚洲一区二区三区四区五区黄| 日韩视频免费观看高清完整版在线观看 | 国产成人aaa| 天天av天天翘天天综合网| 国产清纯白嫩初高生在线观看91| 在线精品观看国产| 国产v日产∨综合v精品视频| 亚洲国产精品影院| 亚洲色图欧美在线| 亚洲午夜视频在线| 国产女人18水真多18精品一级做| 欧美高清性hdvideosex| 99国产一区二区三精品乱码| 捆绑调教美女网站视频一区| 亚洲综合在线观看视频| 国产精品网站导航| 2023国产精品| 日韩一级高清毛片| 欧美在线免费观看亚洲| 国产在线视频一区二区| 天堂一区二区在线| 亚洲一区国产视频| 伊人一区二区三区| 日韩毛片高清在线播放| 国产婷婷色一区二区三区四区| 91福利精品第一导航| 91在线视频在线| av电影在线观看不卡| 成人国产精品免费观看动漫| 国产成人啪免费观看软件| 极品销魂美女一区二区三区| 亚洲成人av一区二区| 一区二区三区在线播| 亚洲欧洲性图库| 中文字幕亚洲欧美在线不卡| 国产精品麻豆网站| 中文字幕中文字幕一区二区| 久久婷婷综合激情| 国产视频视频一区| 欧美国产日韩精品免费观看| 国产午夜精品一区二区三区四区| 26uuu国产一区二区三区| 26uuu成人网一区二区三区| 日韩欧美精品在线视频| 欧美成人精品二区三区99精品| 日韩欧美自拍偷拍| 日韩免费一区二区三区在线播放| 欧美一区午夜视频在线观看| 9191国产精品| 精品国产乱码久久久久久蜜臀| 久久久久久**毛片大全| 久久精品亚洲麻豆av一区二区| 国产欧美日韩综合| 国产精品国产三级国产普通话99| 亚洲欧美怡红院| 亚洲国产精品久久人人爱蜜臀| 婷婷久久综合九色综合绿巨人| 日韩福利视频网| 国产成人日日夜夜| 色天天综合色天天久久| 在线欧美一区二区| 日韩三级视频在线观看| 久久欧美一区二区| ㊣最新国产の精品bt伙计久久| 亚洲一级在线观看| 狠狠色丁香婷婷综合| 91丨九色丨尤物| 最新日韩av在线| 日韩精品一级中文字幕精品视频免费观看| 美日韩一级片在线观看| 成人久久视频在线观看| 欧美群妇大交群中文字幕| 欧美成人精品1314www| 中文字幕日本不卡| 免费在线观看一区二区三区| 成人午夜又粗又硬又大| 欧美性感一类影片在线播放| 日韩精品一区二区三区视频| 国产精品久久久久久福利一牛影视| 一区二区三区免费观看| 久久成人av少妇免费| 色噜噜狠狠成人网p站| 精品国产一区二区亚洲人成毛片| 国产精品久久久久久亚洲毛片| 视频一区二区不卡| av在线不卡观看免费观看| 4438亚洲最大| 亚洲精品视频一区二区| 精品系列免费在线观看| 欧美色综合天天久久综合精品| 精品国产乱码久久久久久蜜臀 | 亚洲视频一区在线| 蜜乳av一区二区三区| 色综合久久99| 国产午夜久久久久| 蜜桃视频第一区免费观看| 99久久99久久综合| 久久久久国色av免费看影院| 三级亚洲高清视频| 欧美最新大片在线看 | 亚洲自拍偷拍综合| 不卡一区在线观看| 久久久蜜桃精品| 久久国产生活片100| 欧美日韩夫妻久久| 一区二区成人在线| 色综合久久中文综合久久牛| 中文字幕欧美激情| 从欧美一区二区三区| 欧美精品一区二| 九色|91porny| 日韩一级片在线观看| 亚洲成人资源网| 欧美日韩综合色| 亚洲成人免费影院| 欧美日韩免费观看一区三区| 美腿丝袜亚洲三区| 日韩欧美成人一区二区| 婷婷久久综合九色综合绿巨人| 欧美体内she精高潮| 夜夜揉揉日日人人青青一国产精品| 不卡的av中国片| 中文字幕一区二区三区在线观看| 国产91富婆露脸刺激对白| 国产欧美一区二区精品仙草咪| 国产在线看一区| 国产婷婷精品av在线| 丁香六月综合激情| 亚洲欧洲日韩综合一区二区|