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

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

?? mddriver.c

?? 屬于加密解密領域的
?? C
字號:
/* MDDRIVER.C - test driver for MD2, MD4 and MD5
 */

/* Copyright (C) 1990-2, RSA Data Security, Inc. Created 1990. All
rights reserved.

RSA Data Security, Inc. makes no representations concerning either
the merchantability of this software or the suitability of this
software for any particular purpose. It is provided "as is"
without express or implied warranty of any kind.

These notices must be retained in any copies of any part of this
documentation and/or software.
 */

/* The following makes MD default to MD5 if it has not already been
  defined with C compiler flags.
 */
#ifndef MD
#define MD 5
#endif

#include <stdio.h>
#include <time.h>
#include <string.h>
#include "global.h"
#if MD == 2
#include "md2.h"
#endif
#if MD == 4
#include "md4.h"
#endif
#if MD == 5
#include "md5.h"
#endif

/* Length of test block, number of test blocks.
 */
#define TEST_BLOCK_LEN 1000
#define TEST_BLOCK_COUNT 1000

static void MDString PROTO_LIST ((char *));
static void MDTimeTrial PROTO_LIST ((void));
static void MDTestSuite PROTO_LIST ((void));
static void MDFile PROTO_LIST ((char *));
static void MDFilter PROTO_LIST ((void));
static void MDPrint PROTO_LIST ((unsigned char [16]));

#if MD == 2
#define MD_CTX MD2_CTX
#define MDInit MD2Init
#define MDUpdate MD2Update
#define MDFinal MD2Final
#endif
#if MD == 4
#define MD_CTX MD4_CTX
#define MDInit MD4Init
#define MDUpdate MD4Update
#define MDFinal MD4Final
#endif
#if MD == 5
#define MD_CTX MD5_CTX
#define MDInit MD5Init
#define MDUpdate MD5Update
#define MDFinal MD5Final
#endif

/* Main driver.

Arguments (may be any combination):
  -sstring - digests string
  -t       - runs time trial
  -x       - runs test script
  filename - digests file
  (none)   - digests standard input
 */
int main (argc, argv)
int argc;
char *argv[];
{
	int i;

	if (argc > 1)
		for (i = 1; i < argc; i++)
			if (argv[i][0] == '-' && argv[i][1] == 's')
				MDString (argv[i] + 2);
			else if (strcmp (argv[i], "-t") == 0)
				MDTimeTrial ();
			else if (strcmp (argv[i], "-x") == 0)
				MDTestSuite ();
			else
				MDFile (argv[i]);
	else
		MDFilter ();

	return (0);
}

/* Digests a string and prints the result.
 */
static void MDString (string)
char *string;
{
  MD_CTX context;
  unsigned char digest[16];
  unsigned int len = strlen (string);

  MDInit (&context);
  MDUpdate (&context, string, len);
  MDFinal (digest, &context);

  printf ("MD%d (\"%s\") = ", MD, string);
  MDPrint (digest);
  printf ("\n");
}

/* Measures the time to digest TEST_BLOCK_COUNT TEST_BLOCK_LEN-byte
  blocks.
 */
static void MDTimeTrial ()
{
  MD_CTX context;
  time_t endTime, startTime;
  unsigned char block[TEST_BLOCK_LEN], digest[16];
  unsigned int i;
  printf
 ("MD%d time trial. Digesting %d %d-byte blocks ...", MD,
  TEST_BLOCK_LEN, TEST_BLOCK_COUNT);

  /* Initialize block */
  for (i = 0; i < TEST_BLOCK_LEN; i++)
 block[i] = (unsigned char)(i & 0xff);

  /* Start timer */
  time (&startTime);

  /* Digest blocks */
  MDInit (&context);
  for (i = 0; i < TEST_BLOCK_COUNT; i++)
 MDUpdate (&context, block, TEST_BLOCK_LEN);
  MDFinal (digest, &context);

  /* Stop timer */
  time (&endTime);

  printf (" done\n");
  printf ("Digest = ");
  MDPrint (digest);
  printf ("\nTime = %ld seconds\n", (long)(endTime-startTime));
  printf
 ("Speed = %ld bytes/second\n",
  (long)TEST_BLOCK_LEN * (long)TEST_BLOCK_COUNT/(endTime-startTime));
}

/* Digests a reference suite of strings and prints the results.
 */
static void MDTestSuite ()
{
	printf ("MD%d test suite:\n", MD);

	MDString ("");
	MDString ("a");
	MDString ("abc");
	MDString ("message digest");
	MDString ("abcdefghijklmnopqrstuvwxyz");
	MDString ("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
	MDString ("12345678901234567890123456789012345678901234567890123456789012345678901234567890");
}

/* Digests a file and prints the result.*/
static void MDFile (filename)
char *filename;
{
	FILE *file;
	MD_CTX context;
	int len;
	unsigned char buffer[1024], digest[16];

	if ((file = fopen (filename, "rb")) == NULL)
		printf ("%s can't be opened\n", filename);
	else {
		MDInit (&context);
		while (len = fread (buffer, 1, 1024, file))
		MDUpdate (&context, buffer, len);
		MDFinal (digest, &context);

		fclose (file);

		printf ("MD%d (%s) = ", MD, filename);
		MDPrint (digest);
		printf ("\n");
	}
}

/* Digests the standard input and prints the result.
 */
static void MDFilter ()
{
	MD_CTX context;
	int len;
	unsigned char buffer[16], digest[16];

	MDInit (&context);
	while (len = fread (buffer, 1, 16, stdin))
		MDUpdate (&context, buffer, len);
	MDFinal (digest, &context);

	MDPrint (digest);
	printf ("\n");
}

/* Prints a message digest in hexadecimal.
 */
static void MDPrint (digest)
unsigned char digest[16];
{
	unsigned int i;

	for (i = 0; i < 16; i++)
	printf ("%02x", digest[i]);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91久久免费观看| 91精品在线一区二区| 天天综合网 天天综合色| 久久伊人蜜桃av一区二区| 日本乱人伦aⅴ精品| 精品一区二区三区视频在线观看 | 一区二区三区四区不卡在线| 欧美一个色资源| 色综合夜色一区| 国产精品原创巨作av| 亚洲最新在线观看| 亚洲国产精品ⅴa在线观看| 555夜色666亚洲国产免| 91免费版pro下载短视频| 国产一区二区三区四| 天堂成人国产精品一区| 亚洲三级在线观看| 国产视频一区在线观看| 日韩视频免费观看高清在线视频| 色狠狠色噜噜噜综合网| 懂色av一区二区在线播放| 日本不卡视频一二三区| 亚洲最大的成人av| 国产精品久久久久aaaa樱花 | 亚洲日韩欧美一区二区在线| 亚洲精品一区二区三区四区高清 | 欧美变态tickling挠脚心| 91久久精品一区二区二区| www.欧美色图| 成人免费视频网站在线观看| 国产一区二区三区免费| 美女视频黄 久久| 日韩精品亚洲一区| 亚洲成人在线观看视频| 伊人开心综合网| 亚洲免费在线视频| 亚洲欧洲av在线| 国产精品毛片久久久久久久| 国产人成亚洲第一网站在线播放| 精品欧美一区二区久久| 欧美电影免费观看高清完整版| 91精品欧美久久久久久动漫 | 欧美亚洲一区三区| 日本韩国欧美一区| 色婷婷国产精品| 色天使色偷偷av一区二区| 一本高清dvd不卡在线观看| av激情亚洲男人天堂| k8久久久一区二区三区| 91香蕉视频mp4| 一本大道久久精品懂色aⅴ| 一本久久综合亚洲鲁鲁五月天| 色妹子一区二区| 在线欧美日韩精品| 欧美另类z0zxhd电影| 4438x成人网最大色成网站| 91精品国产全国免费观看| 日韩一区二区三区在线| 精品国产一区二区三区久久影院| 久久蜜桃一区二区| 国产精品福利一区二区| 亚洲午夜在线视频| 青青青伊人色综合久久| 日本不卡免费在线视频| 国产成人免费视| 91视视频在线直接观看在线看网页在线看 | 亚洲精品国产一区二区精华液 | 欧美放荡的少妇| 欧美成人精品1314www| 国产网红主播福利一区二区| 日韩一区日韩二区| 亚洲成a人片综合在线| 老司机精品视频一区二区三区| 国产一区二区调教| 色婷婷综合久久久中文一区二区| 91麻豆精品国产91久久久 | 成人白浆超碰人人人人| 在线看国产日韩| 欧美tickling挠脚心丨vk| 国产精品理伦片| 日韩福利电影在线| 国产宾馆实践打屁股91| 欧洲国内综合视频| 26uuu久久天堂性欧美| 国产精品激情偷乱一区二区∴| 亚洲午夜电影在线观看| 久久电影网电视剧免费观看| av一区二区三区在线| 7777精品伊人久久久大香线蕉的| 久久精品夜色噜噜亚洲a∨| 一级精品视频在线观看宜春院| 蜜桃精品视频在线观看| 99精品久久久久久| 欧美videossexotv100| 亚洲男同性视频| 国产精品一区二区不卡| 欧美精品九九99久久| 国产精品福利在线播放| 另类中文字幕网| 欧美色网站导航| 国产精品免费视频一区| 另类综合日韩欧美亚洲| 在线观看欧美黄色| 国产精品国产三级国产三级人妇| 日韩高清中文字幕一区| 97超碰欧美中文字幕| 精品少妇一区二区三区视频免付费| 亚洲欧美日韩国产成人精品影院| 久久精品999| 欧美日韩大陆在线| 最新日韩av在线| 国产精品自在在线| 欧美一二三区在线观看| 亚洲国产毛片aaaaa无费看 | 精品一区二区三区视频在线观看 | 国产91精品一区二区麻豆网站 | 国产99一区视频免费| 欧美一级高清片| 亚洲一区二区三区中文字幕在线| 国产成人综合在线观看| 日韩欧美国产小视频| 亚洲成人动漫av| 在线亚洲精品福利网址导航| 亚洲国产激情av| 国产一区美女在线| 2欧美一区二区三区在线观看视频| 亚洲不卡一区二区三区| 在线中文字幕不卡| 一区二区日韩av| 99re成人精品视频| 欧美国产欧美亚州国产日韩mv天天看完整 | 欧美不卡一区二区三区| 蜜桃视频在线观看一区二区| 5858s免费视频成人| 日本在线不卡视频一二三区| 欧美丰满嫩嫩电影| 免费人成网站在线观看欧美高清| 欧美日韩国产综合久久| 亚洲妇熟xx妇色黄| 欧美日韩中文字幕一区二区| 亚洲影院理伦片| 亚洲男同1069视频| 欧美在线啊v一区| 一区二区三区日本| 91成人网在线| 丝袜脚交一区二区| 欧美一区二区三区思思人| 日本不卡高清视频| 精品国产一区二区三区忘忧草 | 日本国产一区二区| 亚洲一区二区三区视频在线| 欧美性视频一区二区三区| 一区二区三区在线观看国产 | 91蜜桃婷婷狠狠久久综合9色| 中文字幕日韩精品一区| 91麻豆免费观看| 亚洲成av人影院| 日韩你懂的电影在线观看| 韩国精品主播一区二区在线观看 | 综合色中文字幕| 色播五月激情综合网| 亚洲午夜私人影院| 日韩欧美一区二区三区在线| 国产一区二区三区视频在线播放| 中文字幕欧美激情| 一本大道久久a久久综合婷婷| 亚洲一区二区三区影院| 欧美一区二区在线视频| 国产一区二区三区免费看| 欧美国产激情一区二区三区蜜月| 97超碰欧美中文字幕| 午夜精品福利一区二区蜜股av | 一区二区三区在线不卡| 欧美日本一区二区三区| 国产原创一区二区| 亚洲精品免费看| 欧美成人video| 99riav久久精品riav| 青娱乐精品视频| 亚洲色图制服诱惑| 精品国产自在久精品国产| 99久久国产综合精品女不卡| 天天综合色天天| 国产精品久久夜| 欧美精品电影在线播放| 国产不卡在线播放| 天天射综合影视| 中文字幕一区二区三中文字幕| 欧美日韩一区国产| 成人一级黄色片| 久久激情综合网| 亚洲一区二区三区四区的| 国产日本欧洲亚洲| 欧美一卡二卡在线| 一本一本久久a久久精品综合麻豆| 另类小说图片综合网| 一区二区三区四区高清精品免费观看 | 欧美videos中文字幕| 在线观看三级视频欧美| 国产激情一区二区三区四区 |