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

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

?? md5c.c

?? CryptoExtensions1.0 for Java源代碼
?? C
字號:
/* MD5C.C - RSA Data Security, Inc., MD5 message-digest algorithm *//* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. Allrights reserved.License to copy and use this software is granted provided that itis identified as the "RSA Data Security, Inc. MD5 Message-DigestAlgorithm" in all material mentioning or referencing this softwareor this function.License is also granted to make and use derivative works providedthat such works are identified as "derived from the RSA DataSecurity, Inc. MD5 Message-Digest Algorithm" in all materialmentioning or referencing the derived work.RSA Data Security, Inc. makes no representations concerning eitherthe merchantability of this software or the suitability of thissoftware 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 thisdocumentation and/or software. */#include "md5.h"/* Constants for MD5Transform routine. */#define S11 7#define S12 12#define S13 17#define S14 22#define S21 5#define S22 9#define S23 14#define S24 20#define S31 4#define S32 11#define S33 16#define S34 23#define S41 6#define S42 10#define S43 15#define S44 21static void native_MD5Transform(unsigned long [4], unsigned char [64]);static void Encode(unsigned char *, unsigned long *, unsigned int);static void Decode(unsigned long *, unsigned char *, unsigned int);static unsigned char PADDING[64] = {  0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};/* F, G, H and I are basic MD5 functions. */#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))#define H(x, y, z) ((x) ^ (y) ^ (z))#define I(x, y, z) ((y) ^ ((x) | (~z)))/* ROTATE_LEFT rotates x left n bits. */#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))/* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4.Rotation is separate from addition to prevent recomputation. */#define FF(a, b, c, d, x, s, ac) { \ (a) += F ((b), (c), (d)) + (x) + (unsigned long)(ac); \ (a) = ROTATE_LEFT ((a), (s)); \ (a) += (b); \  }#define GG(a, b, c, d, x, s, ac) { \ (a) += G ((b), (c), (d)) + (x) + (unsigned long)(ac); \ (a) = ROTATE_LEFT ((a), (s)); \ (a) += (b); \  }#define HH(a, b, c, d, x, s, ac) { \ (a) += H ((b), (c), (d)) + (x) + (unsigned long)(ac); \ (a) = ROTATE_LEFT ((a), (s)); \ (a) += (b); \  }#define II(a, b, c, d, x, s, ac) { \ (a) += I ((b), (c), (d)) + (x) + (unsigned long)(ac); \ (a) = ROTATE_LEFT ((a), (s)); \ (a) += (b); \  }/* MD5 initialization. Begins an MD5 operation, writing a new context. */void native_MD5Init(MD5_CTX * context){  context->count[0] = context->count[1] = 0;  /* Load magic initialization constants. */  context->state[0] = 0x67452301;  context->state[1] = 0xefcdab89;  context->state[2] = 0x98badcfe;  context->state[3] = 0x10325476;}/* MD5 block update operation. Continues an MD5 message-digest  operation, processing another message block, and updating the  context. */void native_MD5Update (MD5_CTX *context, unsigned char * input, unsigned int inputLen){	unsigned int i, index, partLen;	/* Compute number of bytes mod 64 */	index = (unsigned int)((context->count[0] >> 3) & 0x3F);	/* Update number of bits */	if ((context->count[0] += ((unsigned long)inputLen << 3))	 	< ((unsigned long)inputLen << 3))		context->count[1]++;		context->count[1] += ((unsigned long)inputLen >> 29);	partLen = 64 - index;	/* Transform as many times as possible. */	if (inputLen >= partLen)	{		memcpy(&context->buffer[index], input, partLen);		native_MD5Transform (context->state, context->buffer);		for (i = partLen; i + 63 < inputLen; i += 64)			native_MD5Transform (context->state, &input[i]);		index = 0;	}	else		i = 0;	/* Buffer remaining input */	memcpy(&context->buffer[index], &input[i], inputLen-i);}/* MD5 finalization. Ends an MD5 message-digest operation, writing the  the message digest and zeroizing the context. */void native_MD5Final (unsigned char digest[16], MD5_CTX *context){	unsigned char bits[8];	unsigned int index, padLen;	/* Save number of bits */	Encode (bits, context->count, 8);	/* Pad out to 56 mod 64. */	index = (unsigned int)((context->count[0] >> 3) & 0x3f);	padLen = (index < 56) ? (56 - index) : (120 - index);	native_MD5Update (context, PADDING, padLen);	/* Append length (before padding) */	native_MD5Update (context, bits, 8);	/* Store state in digest */	Encode (digest, context->state, 16);	/* Zeroize sensitive information. */	memset (context, 0, sizeof(MD5_CTX));}/* MD5 basic transformation. Transforms state based on block. */static void native_MD5Transform (unsigned long state[4], unsigned char block[64]){  unsigned long a = state[0], b = state[1], c = state[2], d = state[3], x[16];  Decode (x, block, 64);  /* Round 1 */  FF (a, b, c, d, x[ 0], S11, 0xd76aa478); /* 1 */  FF (d, a, b, c, x[ 1], S12, 0xe8c7b756); /* 2 */  FF (c, d, a, b, x[ 2], S13, 0x242070db); /* 3 */  FF (b, c, d, a, x[ 3], S14, 0xc1bdceee); /* 4 */  FF (a, b, c, d, x[ 4], S11, 0xf57c0faf); /* 5 */  FF (d, a, b, c, x[ 5], S12, 0x4787c62a); /* 6 */  FF (c, d, a, b, x[ 6], S13, 0xa8304613); /* 7 */  FF (b, c, d, a, x[ 7], S14, 0xfd469501); /* 8 */  FF (a, b, c, d, x[ 8], S11, 0x698098d8); /* 9 */  FF (d, a, b, c, x[ 9], S12, 0x8b44f7af); /* 10 */  FF (c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */  FF (b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */  FF (a, b, c, d, x[12], S11, 0x6b901122); /* 13 */  FF (d, a, b, c, x[13], S12, 0xfd987193); /* 14 */  FF (c, d, a, b, x[14], S13, 0xa679438e); /* 15 */  FF (b, c, d, a, x[15], S14, 0x49b40821); /* 16 */ /* Round 2 */  GG (a, b, c, d, x[ 1], S21, 0xf61e2562); /* 17 */  GG (d, a, b, c, x[ 6], S22, 0xc040b340); /* 18 */  GG (c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */  GG (b, c, d, a, x[ 0], S24, 0xe9b6c7aa); /* 20 */  GG (a, b, c, d, x[ 5], S21, 0xd62f105d); /* 21 */  GG (d, a, b, c, x[10], S22,  0x2441453); /* 22 */  GG (c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */  GG (b, c, d, a, x[ 4], S24, 0xe7d3fbc8); /* 24 */  GG (a, b, c, d, x[ 9], S21, 0x21e1cde6); /* 25 */  GG (d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */  GG (c, d, a, b, x[ 3], S23, 0xf4d50d87); /* 27 */  GG (b, c, d, a, x[ 8], S24, 0x455a14ed); /* 28 */  GG (a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */  GG (d, a, b, c, x[ 2], S22, 0xfcefa3f8); /* 30 */  GG (c, d, a, b, x[ 7], S23, 0x676f02d9); /* 31 */  GG (b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */  /* Round 3 */  HH (a, b, c, d, x[ 5], S31, 0xfffa3942); /* 33 */  HH (d, a, b, c, x[ 8], S32, 0x8771f681); /* 34 */  HH (c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */  HH (b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */  HH (a, b, c, d, x[ 1], S31, 0xa4beea44); /* 37 */  HH (d, a, b, c, x[ 4], S32, 0x4bdecfa9); /* 38 */  HH (c, d, a, b, x[ 7], S33, 0xf6bb4b60); /* 39 */  HH (b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */  HH (a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */  HH (d, a, b, c, x[ 0], S32, 0xeaa127fa); /* 42 */  HH (c, d, a, b, x[ 3], S33, 0xd4ef3085); /* 43 */  HH (b, c, d, a, x[ 6], S34,  0x4881d05); /* 44 */  HH (a, b, c, d, x[ 9], S31, 0xd9d4d039); /* 45 */  HH (d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */  HH (c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */  HH (b, c, d, a, x[ 2], S34, 0xc4ac5665); /* 48 */  /* Round 4 */  II (a, b, c, d, x[ 0], S41, 0xf4292244); /* 49 */  II (d, a, b, c, x[ 7], S42, 0x432aff97); /* 50 */  II (c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */  II (b, c, d, a, x[ 5], S44, 0xfc93a039); /* 52 */  II (a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */  II (d, a, b, c, x[ 3], S42, 0x8f0ccc92); /* 54 */  II (c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */  II (b, c, d, a, x[ 1], S44, 0x85845dd1); /* 56 */  II (a, b, c, d, x[ 8], S41, 0x6fa87e4f); /* 57 */  II (d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */  II (c, d, a, b, x[ 6], S43, 0xa3014314); /* 59 */  II (b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */  II (a, b, c, d, x[ 4], S41, 0xf7537e82); /* 61 */  II (d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */  II (c, d, a, b, x[ 2], S43, 0x2ad7d2bb); /* 63 */  II (b, c, d, a, x[ 9], S44, 0xeb86d391); /* 64 */  state[0] += a;  state[1] += b;  state[2] += c;  state[3] += d;  /* Zeroize sensitive information. */	memset (x, 0, sizeof (x));}/* Encodes input (unsigned long) into output (unsigned char). Assumes len is  a multiple of 4. */  static void Encode (unsigned char * output, unsigned long * input, unsigned int len){	unsigned int i, j;	for (i = 0, j = 0; j < len; i++, j += 4)	{		output[j] = (unsigned char)(input[i] & 0xff);		output[j+1] = (unsigned char)((input[i] >> 8) & 0xff);		output[j+2] = (unsigned char)((input[i] >> 16) & 0xff);		output[j+3] = (unsigned char)((input[i] >> 24) & 0xff);	}}/* Decodes input (unsigned char) into output (unsigned long). Assumes len is  a multiple of 4. */  static void Decode (unsigned long * output, unsigned char * input, unsigned int len){	unsigned int i, j;	for (i = 0, j = 0; j < len; i++, j += 4)		output[i] = ((unsigned long)input[j]) | (((unsigned long)input[j+1]) << 8) |		(((unsigned long)input[j+2]) << 16) | (((unsigned long)input[j+3]) << 24);}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产伦精品一区二区三区免费| 日韩电影在线观看一区| 欧美日韩国产电影| 成人免费视频播放| 午夜欧美电影在线观看| 国产精品三级av在线播放| 4hu四虎永久在线影院成人| 成人黄色软件下载| 精品一区二区免费看| 亚洲一区二区三区精品在线| 国产拍欧美日韩视频二区| 这里只有精品电影| 日本精品一区二区三区高清 | 久久综合久久综合久久综合| 91福利国产精品| 国产成人av一区二区三区在线 | 国产麻豆午夜三级精品| 亚洲一区av在线| 国产精品视频麻豆| 精品免费国产一区二区三区四区| 欧美午夜不卡视频| 99riav久久精品riav| 国产suv一区二区三区88区| 日韩高清一区二区| 亚欧色一区w666天堂| 亚洲综合一区在线| 亚洲永久精品国产| 亚洲乱码一区二区三区在线观看| 国产精品三级av| 国产精品热久久久久夜色精品三区| 精品日韩一区二区| 精品久久久久香蕉网| 日韩精品一区二区三区在线观看| 欧美蜜桃一区二区三区| 欧美在线观看视频在线| 91成人在线精品| 色8久久人人97超碰香蕉987| 色综合网色综合| 99re热这里只有精品免费视频| av中文字幕不卡| 99久久99久久精品免费观看| caoporn国产精品| 99re这里只有精品6| 色呦呦日韩精品| 91福利视频久久久久| 欧美日韩免费观看一区三区| 制服丝袜国产精品| 欧美不卡一区二区三区四区| 欧美精品一区二区三区视频| 久久一日本道色综合| 欧美国产综合色视频| 国产精品三级视频| 一区二区三区成人| 亚洲成av人影院| 精品一区二区三区久久| 国产高清不卡一区二区| aa级大片欧美| 欧美裸体一区二区三区| 欧美大片在线观看一区二区| 久久色视频免费观看| 日本一区二区高清| 亚洲精品中文字幕在线观看| 午夜久久久影院| 国产综合色在线视频区| 国产99久久久国产精品| 色哟哟精品一区| 宅男在线国产精品| 久久综合精品国产一区二区三区 | 亚洲国产欧美在线| 免费久久99精品国产| 国产精品一区二区你懂的| 91麻豆国产香蕉久久精品| 欧美日韩国产高清一区二区三区| 欧美va在线播放| ●精品国产综合乱码久久久久| 亚洲国产日韩一区二区| 激情国产一区二区| 91亚洲大成网污www| 欧美一级高清片| 国产精品福利一区二区| 青草av.久久免费一区| 成人性视频网站| 欧美顶级少妇做爰| 欧美国产欧美综合| 日韩精品一二区| 成人教育av在线| 欧美一区二区日韩| 中文字幕中文字幕一区二区| 日本欧美在线看| 91小视频在线观看| 精品少妇一区二区| 亚洲狠狠爱一区二区三区| 国产成人免费视频网站高清观看视频 | 99久久国产综合精品色伊| 日韩欧美色电影| 亚洲午夜av在线| 成人精品鲁一区一区二区| 在线电影院国产精品| 国产精品色婷婷| 国产一区二区导航在线播放| 欧美三级欧美一级| 国产精品国产馆在线真实露脸| 九九久久精品视频| 精品视频在线视频| 亚洲卡通动漫在线| 成人毛片老司机大片| 日韩一区二区三区在线视频| 亚洲午夜成aⅴ人片| 91日韩在线专区| 欧美高清在线精品一区| 国产一区免费电影| 日韩一区二区免费在线观看| 亚洲国产精品久久久久秋霞影院| 成人av网站在线观看免费| 精品国产凹凸成av人导航| 日韩精品国产欧美| 欧美日韩成人一区| 亚洲在线成人精品| 色偷偷久久一区二区三区| 中文字幕亚洲精品在线观看| 国产1区2区3区精品美女| 久久亚洲一区二区三区四区| 美美哒免费高清在线观看视频一区二区| 欧美特级限制片免费在线观看| 自拍av一区二区三区| www.视频一区| 国产精品视频一二三区 | 欧美一区二区三区视频在线 | 综合在线观看色| 成人av免费在线| 国产精品理伦片| 91色porny蝌蚪| 亚洲精品国久久99热| 色欧美片视频在线观看| 一区二区三区高清在线| 欧美午夜精品久久久久久超碰 | 九九九精品视频| 欧美成人一区二区| 国精产品一区一区三区mba视频| 欧美精品一区二区三区四区| 国产精品66部| 国产精品久久久久久久第一福利 | 日韩主播视频在线| 欧美一区二区观看视频| 久久不见久久见免费视频1| 欧美精品一区二区三区高清aⅴ| 久久91精品国产91久久小草| 精品国产伦一区二区三区观看体验| 久久99精品久久久久久| 国产丝袜在线精品| www.爱久久.com| 亚洲午夜久久久久久久久电影网| 欧美挠脚心视频网站| 九九九精品视频| 国产精品免费人成网站| 色婷婷综合激情| 亚洲国产va精品久久久不卡综合| 日韩三级中文字幕| 高清不卡一二三区| 亚洲精品视频一区二区| 欧美久久免费观看| 国产美女主播视频一区| 最新国产精品久久精品| 欧美三级欧美一级| 国产综合色在线视频区| 亚洲免费观看高清完整版在线观看| 欧美图区在线视频| 国产一区不卡在线| 亚洲精品亚洲人成人网| 欧美一级电影网站| 99免费精品在线| 免费欧美在线视频| 一区视频在线播放| 制服丝袜亚洲网站| 成人av网站免费观看| 日韩二区三区四区| 国产精品电影一区二区三区| 7777精品伊人久久久大香线蕉的 | 884aa四虎影成人精品一区| 国产精品99久久久久久似苏梦涵| 亚洲精品美国一| 亚洲精品一区二区三区四区高清| 99re66热这里只有精品3直播| 日韩二区三区四区| 亚洲日本一区二区| 精品国产网站在线观看| 欧美性极品少妇| 国产成人综合在线观看| 午夜精品一区二区三区三上悠亚| 日本一区二区三区国色天香| 欧美日本在线一区| 成人av网站大全| 韩日av一区二区| 亚洲超碰精品一区二区| 国产精品久久久久三级| 精品久久久久久最新网址| 欧美日韩中文精品| 99国产精品99久久久久久| 韩国欧美国产一区| 日本va欧美va精品发布|