日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC++取MD5算法记录下以后用得到(转)

發布時間:2024/4/17 c/c++ 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++取MD5算法记录下以后用得到(转) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個是網上扒下來的 作者已經無法知道是誰了?

MD5.h

1 #ifndef MD5_H 2 #define MD5_H 3 4 #include <string> 5 #include <fstream> 6 7 /* Type define */ 8 typedef unsigned char byte; 9 typedef unsigned int uint32; 10 typedef unsigned int uint4; 11 12 using std::string; 13 using std::ifstream; 14 15 /* MD5 declaration. */ 16 class MD5 { 17 public: 18 MD5(); 19 MD5(const void *input, size_t length); 20 MD5(const string &str); 21 MD5(ifstream &in); 22 void update(const void *input, size_t length); 23 void update(const string &str); 24 void update(ifstream &in); 25 const byte* digest(); 26 string toString(); 27 void reset(); 28 29 inline uint4 rotate_left(uint4 x, int n); 30 inline void FF(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac); 31 inline void GG(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac); 32 inline void HH(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac); 33 inline void II(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac); 34 35 private: 36 void update(const byte *input, size_t length); 37 void final(); 38 void transform(const byte block[64]); 39 void encode(const uint32 *input, byte *output, size_t length); 40 void decode(const byte *input, uint32 *output, size_t length); 41 string bytesToHexString(const byte *input, size_t length); 42 43 /* class uncopyable */ 44 MD5(const MD5&); 45 MD5& operator=(const MD5&); 46 private: 47 uint32 _state[4]; /* state (ABCD) */ 48 uint32 _count[2]; /* number of bits, modulo 2^64 (low-order word first) */ 49 byte _buffer[64]; /* input buffer */ 50 byte _digest[16]; /* message digest */ 51 bool _finished; /* calculate finished ? */ 52 53 static const byte PADDING[64]; /* padding for calculate */ 54 static const char HEX[16]; 55 static const size_t BUFFER_SIZE = 1024; 56 }; 57 58 string FileDigest(const string &file); 59 60 #endif/*MD5_H*/

MD5.cpp

1 #include "md5.h" 2 3 using namespace std; 4 5 /* Constants for MD5Transform routine. */ 6 #define S11 7 7 #define S12 12 8 #define S13 17 9 #define S14 22 10 #define S21 5 11 #define S22 9 12 #define S23 14 13 #define S24 20 14 #define S31 4 15 #define S32 11 16 #define S33 16 17 #define S34 23 18 #define S41 6 19 #define S42 10 20 #define S43 15 21 #define S44 21 22 23 24 /* F, G, H and I are basic MD5 functions. 25 */ 26 #define F(x, y, z) (((x) & (y)) | ((~x) & (z))) 27 #define G(x, y, z) (((x) & (z)) | ((y) & (~z))) 28 #define H(x, y, z) ((x) ^ (y) ^ (z)) 29 #define I(x, y, z) ((y) ^ ((x) | (~z))) 30 31 /* ROTATE_LEFT rotates x left n bits. 32 */ 33 #define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) 34 35 /* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4. 36 Rotation is separate from addition to prevent recomputation. 37 */ 38 //#define FF(a, b, c, d, x, s, ac) { \ 39 //(a) += F((b), (c), (d)) + (x)+ac; \ 40 //(a) = ROTATE_LEFT((a), (s)); \ 41 //(a) += (b); \ 42 //} 43 //#define GG(a, b, c, d, x, s, ac) { \ 44 //(a) += G((b), (c), (d)) + (x)+ac; \ 45 //(a) = ROTATE_LEFT((a), (s)); \ 46 //(a) += (b); \ 47 //} 48 //#define HH(a, b, c, d, x, s, ac) { \ 49 //(a) += H((b), (c), (d)) + (x)+ac; \ 50 //(a) = ROTATE_LEFT((a), (s)); \ 51 //(a) += (b); \ 52 //} 53 //#define II(a, b, c, d, x, s, ac) { \ 54 //(a) += I((b), (c), (d)) + (x)+ac; \ 55 //(a) = ROTATE_LEFT((a), (s)); \ 56 //(a) += (b); \ 57 //} 58 59 inline uint4 MD5::rotate_left(uint4 x, int n) { 60 return (x << n) | (x >> (32 - n)); 61 } 62 63 inline void MD5::FF(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac) { 64 a = rotate_left(a + F(b, c, d) + x + ac, s) + b; 65 } 66 67 inline void MD5::GG(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac) { 68 a = rotate_left(a + G(b, c, d) + x + ac, s) + b; 69 } 70 71 inline void MD5::HH(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac) { 72 a = rotate_left(a + H(b, c, d) + x + ac, s) + b; 73 } 74 75 inline void MD5::II(uint4 &a, uint4 b, uint4 c, uint4 d, uint4 x, uint4 s, uint4 ac) { 76 a = rotate_left(a + I(b, c, d) + x + ac, s) + b; 77 } 78 79 const byte MD5::PADDING[64] = { 0x80 }; 80 const char MD5::HEX[16] = { 81 '0', '1', '2', '3', 82 '4', '5', '6', '7', 83 '8', '9', 'a', 'b', 84 'c', 'd', 'e', 'f' 85 }; 86 87 /* Default construct. */ 88 MD5::MD5() { 89 reset(); 90 } 91 92 /* Construct a MD5 object with a input buffer. */ 93 MD5::MD5(const void *input, size_t length) { 94 reset(); 95 update(input, length); 96 } 97 98 /* Construct a MD5 object with a string. */ 99 MD5::MD5(const string &str) { 100 reset(); 101 update(str); 102 } 103 104 /* Construct a MD5 object with a file. */ 105 MD5::MD5(ifstream &in) { 106 reset(); 107 update(in); 108 } 109 110 /* Return the message-digest */ 111 const byte* MD5::digest() { 112 if (!_finished) { 113 _finished = true; 114 final(); 115 } 116 return _digest; 117 } 118 119 /* Reset the calculate state */ 120 void MD5::reset() { 121 122 _finished = false; 123 /* reset number of bits. */ 124 _count[0] = _count[1] = 0; 125 /* Load magic initialization constants. */ 126 _state[0] = 0x67452301; 127 _state[1] = 0xefcdab89; 128 _state[2] = 0x98badcfe; 129 _state[3] = 0x10325476; 130 } 131 132 /* Updating the context with a input buffer. */ 133 void MD5::update(const void *input, size_t length) { 134 update((const byte*)input, length); 135 } 136 137 /* Updating the context with a string. */ 138 void MD5::update(const string &str) { 139 update((const byte*)str.c_str(), str.length()); 140 } 141 142 /* Updating the context with a file. */ 143 void MD5::update(ifstream &in) { 144 145 if (!in) 146 return; 147 148 std::streamsize length; 149 char buffer[BUFFER_SIZE]; 150 while (!in.eof()) { 151 in.read(buffer, BUFFER_SIZE); 152 length = in.gcount(); 153 if (length > 0) 154 update(buffer, length); 155 } 156 in.close(); 157 } 158 159 /* MD5 block update operation. Continues an MD5 message-digest 160 operation, processing another message block, and updating the 161 context. 162 */ 163 void MD5::update(const byte *input, size_t length) { 164 165 uint32 i, index, partLen; 166 167 _finished = false; 168 169 /* Compute number of bytes mod 64 */ 170 index = (uint32)((_count[0] >> 3) & 0x3f); 171 172 /* update number of bits */ 173 if ((_count[0] += ((uint32)length << 3)) < ((uint32)length << 3)) 174 _count[1]++; 175 _count[1] += ((uint32)length >> 29); 176 177 partLen = 64 - index; 178 179 /* transform as many times as possible. */ 180 if (length >= partLen) { 181 182 memcpy(&_buffer[index], input, partLen); 183 transform(_buffer); 184 185 for (i = partLen; i + 63 < length; i += 64) 186 transform(&input[i]); 187 index = 0; 188 189 } 190 else { 191 i = 0; 192 } 193 194 /* Buffer remaining input */ 195 memcpy(&_buffer[index], &input[i], length - i); 196 } 197 198 /* MD5 finalization. Ends an MD5 message-_digest operation, writing the 199 the message _digest and zeroizing the context. 200 */ 201 void MD5::final() { 202 203 byte bits[8]; 204 uint32 oldState[4]; 205 uint32 oldCount[2]; 206 uint32 index, padLen; 207 208 /* Save current state and count. */ 209 memcpy(oldState, _state, 16); 210 memcpy(oldCount, _count, 8); 211 212 /* Save number of bits */ 213 encode(_count, bits, 8); 214 215 /* Pad out to 56 mod 64. */ 216 index = (uint32)((_count[0] >> 3) & 0x3f); 217 padLen = (index < 56) ? (56 - index) : (120 - index); 218 update(PADDING, padLen); 219 220 /* Append length (before padding) */ 221 update(bits, 8); 222 223 /* Store state in digest */ 224 encode(_state, _digest, 16); 225 226 /* Restore current state and count. */ 227 memcpy(_state, oldState, 16); 228 memcpy(_count, oldCount, 8); 229 } 230 231 /* MD5 basic transformation. Transforms _state based on block. */ 232 void MD5::transform(const byte block[64]) { 233 234 uint32 a = _state[0], b = _state[1], c = _state[2], d = _state[3], x[16]; 235 236 decode(block, x, 64); 237 238 /* Round 1 */ 239 FF(a, b, c, d, x[0], S11, 0xd76aa478); /* 1 */ 240 FF(d, a, b, c, x[1], S12, 0xe8c7b756); /* 2 */ 241 FF(c, d, a, b, x[2], S13, 0x242070db); /* 3 */ 242 FF(b, c, d, a, x[3], S14, 0xc1bdceee); /* 4 */ 243 FF(a, b, c, d, x[4], S11, 0xf57c0faf); /* 5 */ 244 FF(d, a, b, c, x[5], S12, 0x4787c62a); /* 6 */ 245 FF(c, d, a, b, x[6], S13, 0xa8304613); /* 7 */ 246 FF(b, c, d, a, x[7], S14, 0xfd469501); /* 8 */ 247 FF(a, b, c, d, x[8], S11, 0x698098d8); /* 9 */ 248 FF(d, a, b, c, x[9], S12, 0x8b44f7af); /* 10 */ 249 FF(c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */ 250 FF(b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */ 251 FF(a, b, c, d, x[12], S11, 0x6b901122); /* 13 */ 252 FF(d, a, b, c, x[13], S12, 0xfd987193); /* 14 */ 253 FF(c, d, a, b, x[14], S13, 0xa679438e); /* 15 */ 254 FF(b, c, d, a, x[15], S14, 0x49b40821); /* 16 */ 255 256 /* Round 2 */ 257 GG(a, b, c, d, x[1], S21, 0xf61e2562); /* 17 */ 258 GG(d, a, b, c, x[6], S22, 0xc040b340); /* 18 */ 259 GG(c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */ 260 GG(b, c, d, a, x[0], S24, 0xe9b6c7aa); /* 20 */ 261 GG(a, b, c, d, x[5], S21, 0xd62f105d); /* 21 */ 262 GG(d, a, b, c, x[10], S22, 0x2441453); /* 22 */ 263 GG(c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */ 264 GG(b, c, d, a, x[4], S24, 0xe7d3fbc8); /* 24 */ 265 GG(a, b, c, d, x[9], S21, 0x21e1cde6); /* 25 */ 266 GG(d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */ 267 GG(c, d, a, b, x[3], S23, 0xf4d50d87); /* 27 */ 268 GG(b, c, d, a, x[8], S24, 0x455a14ed); /* 28 */ 269 GG(a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */ 270 GG(d, a, b, c, x[2], S22, 0xfcefa3f8); /* 30 */ 271 GG(c, d, a, b, x[7], S23, 0x676f02d9); /* 31 */ 272 GG(b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */ 273 274 /* Round 3 */ 275 HH(a, b, c, d, x[5], S31, 0xfffa3942); /* 33 */ 276 HH(d, a, b, c, x[8], S32, 0x8771f681); /* 34 */ 277 HH(c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */ 278 HH(b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */ 279 HH(a, b, c, d, x[1], S31, 0xa4beea44); /* 37 */ 280 HH(d, a, b, c, x[4], S32, 0x4bdecfa9); /* 38 */ 281 HH(c, d, a, b, x[7], S33, 0xf6bb4b60); /* 39 */ 282 HH(b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */ 283 HH(a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */ 284 HH(d, a, b, c, x[0], S32, 0xeaa127fa); /* 42 */ 285 HH(c, d, a, b, x[3], S33, 0xd4ef3085); /* 43 */ 286 HH(b, c, d, a, x[6], S34, 0x4881d05); /* 44 */ 287 HH(a, b, c, d, x[9], S31, 0xd9d4d039); /* 45 */ 288 HH(d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */ 289 HH(c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */ 290 HH(b, c, d, a, x[2], S34, 0xc4ac5665); /* 48 */ 291 292 /* Round 4 */ 293 II(a, b, c, d, x[0], S41, 0xf4292244); /* 49 */ 294 II(d, a, b, c, x[7], S42, 0x432aff97); /* 50 */ 295 II(c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */ 296 II(b, c, d, a, x[5], S44, 0xfc93a039); /* 52 */ 297 II(a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */ 298 II(d, a, b, c, x[3], S42, 0x8f0ccc92); /* 54 */ 299 II(c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */ 300 II(b, c, d, a, x[1], S44, 0x85845dd1); /* 56 */ 301 II(a, b, c, d, x[8], S41, 0x6fa87e4f); /* 57 */ 302 II(d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */ 303 II(c, d, a, b, x[6], S43, 0xa3014314); /* 59 */ 304 II(b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */ 305 II(a, b, c, d, x[4], S41, 0xf7537e82); /* 61 */ 306 II(d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */ 307 II(c, d, a, b, x[2], S43, 0x2ad7d2bb); /* 63 */ 308 II(b, c, d, a, x[9], S44, 0xeb86d391); /* 64 */ 309 310 _state[0] += a; 311 _state[1] += b; 312 _state[2] += c; 313 _state[3] += d; 314 } 315 316 /* Encodes input (ulong) into output (byte). Assumes length is 317 a multiple of 4. 318 */ 319 void MD5::encode(const uint32 *input, byte *output, size_t length) { 320 321 for (size_t i = 0, j = 0; j<length; i++, j += 4) { 322 output[j] = (byte)(input[i] & 0xff); 323 output[j + 1] = (byte)((input[i] >> 8) & 0xff); 324 output[j + 2] = (byte)((input[i] >> 16) & 0xff); 325 output[j + 3] = (byte)((input[i] >> 24) & 0xff); 326 } 327 } 328 329 /* Decodes input (byte) into output (ulong). Assumes length is 330 a multiple of 4. 331 */ 332 void MD5::decode(const byte *input, uint32 *output, size_t length) { 333 334 for (size_t i = 0, j = 0; j<length; i++, j += 4) { 335 output[i] = ((uint32)input[j]) | (((uint32)input[j + 1]) << 8) | 336 (((uint32)input[j + 2]) << 16) | (((uint32)input[j + 3]) << 24); 337 } 338 } 339 340 /* Convert byte array to hex string. */ 341 string MD5::bytesToHexString(const byte *input, size_t length) { 342 string str; 343 str.reserve(length << 1); 344 for (size_t i = 0; i < length; i++) { 345 int t = input[i]; 346 int a = t / 16; 347 int b = t % 16; 348 str.append(1, HEX[a]); 349 str.append(1, HEX[b]); 350 } 351 return str; 352 } 353 354 /* Convert digest to string value */ 355 string MD5::toString() { 356 return bytesToHexString(digest(), 16); 357 } 358 359 360 //得到二進制文件的MD5碼 361 string FileDigest(const string &file) { 362 ifstream in(file.c_str(), ios::binary); 363 if (!in) 364 return ""; 365 366 MD5 md5; 367 md5.reset(); 368 std::streamsize length; 369 char buffer[1024]; 370 while (!in.eof()) { 371 in.read(buffer, 1024); 372 length = in.gcount(); 373 if (length > 0) 374 md5.update(buffer, length); 375 } 376 in.close(); 377 return md5.toString(); 378 }

調用main.cpp

1 // Md5Test.cpp : 定義控制臺應用程序的入口點。 2 // 3 4 #include "stdafx.h" 5 #include "MD5.h" 6 #include <fstream> 7 #include <process.h> 8 int main() 9 { 10 std::ifstream of("ReadMe.txt", std::ios::in | std::ios::binary); 11 if (!of.is_open())return 0; 12 MD5 fileMd5(of); 13 printf("%s\r\n", fileMd5.toString().c_str()); 14 MD5 strMd5("123456789"); 15 printf("%s\r\n", strMd5.toString().c_str()); 16 system("pause"); 17 return 0; 18 }

?

轉載于:https://www.cnblogs.com/guolongzheng/p/8746267.html

總結

以上是生活随笔為你收集整理的VC++取MD5算法记录下以后用得到(转)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

中文字幕精品一区 | 亚洲成人免费观看 | 久久精品国产99 | 日本美女xx | 99精品在线免费 | 日韩大片在线免费观看 | 欧美美女视频在线观看 | 亚洲精品456在线播放乱码 | 夜夜躁日日躁狠狠久久88av | av一级片在线观看 | 综合天天久久 | 国产黄色精品在线观看 | 黄色免费电影网站 | 亚洲午夜精品一区二区三区电影院 | 成片免费| 久久久久电影 | 久草香蕉在线 | 97在线观看 | 国产不卡视频在线播放 | 午夜视频一区二区三区 | 国产伦精品一区二区三区… | 久久久久五月 | 日本bbbb摸bbbb| 玖玖视频免费在线 | 亚洲91精品 | 欧美极度另类性三渗透 | 在线中文字幕观看 | 国产精品欧美久久久久天天影视 | 国产精品一区二区av | 五月天天天操 | 中文字幕黄色网 | 色婷婷激情电影 | 91精品爽啪蜜夜国产在线播放 | 亚洲精品资源 | 日韩av在线资源 | 国内外激情视频 | 一区二区免费不卡在线 | 天天av在线播放 | 丁香综合五月 | 美女视频黄在线观看 | 国内精品久久久久久久久久久久 | 超碰在线最新地址 | 久久有精品| 国产日韩亚洲 | 久久久久国产一区二区 | 欧美精品一区在线 | 天天爽天天搞 | 国偷自产中文字幕亚洲手机在线 | 国产成人av福利 | 亚洲欧美婷婷六月色综合 | 国产激情电影综合在线看 | 国产精品一区二区免费视频 | 夜夜操天天干, | 91在线视频免费观看 | 久久综合婷婷国产二区高清 | 国产呻吟在线 | 国产中文字幕一区 | 中文字幕亚洲综合久久五月天色无吗'' | 亚洲精品视频在线观看免费视频 | 国产探花视频在线播放 | 中文国产字幕 | 久久久五月婷婷 | 国产成人精品亚洲 | 久久69精品久久久久久久电影好 | 国产午夜精品免费一区二区三区视频 | 亚洲国产成人在线播放 | 俺要去色综合狠狠 | 99精品在线免费 | 欧美大片mv免费 | 精品国产免费久久 | 国产欧美中文字幕 | 精品av网站 | 精品99999 | 亚洲国产中文字幕在线视频综合 | 欧洲精品久久久久毛片完整版 | 在线观看日本高清mv视频 | 中文字幕在线播放一区二区 | 国产录像在线观看 | 97国产电影 | 免费观看v片在线观看 | 欧美一级欧美一级 | 久久国产精品一区二区三区四区 | 日本中文字幕电影在线免费观看 | 成人永久在线 | 精品亚洲国产视频 | 成人高清在线观看 | 国产另类av | 亚洲精品18日本一区app | 黄色资源在线观看 | 国产原创在线视频 | 国产韩国日本高清视频 | a级片久久久 | 操操操操网| 国产一区二区在线免费 | 91粉色视频| 欧美日韩二区在线 | 在线看日韩| 99热最新 | 狠狠操操网 | 国产精品久久久av久久久 | 免费观看全黄做爰大片国产 | 久久国产精品免费观看 | 97国产| 又黄又刺激的视频 | 99久久精品免费看国产四区 | 日本乱码在线 | 免费在线电影网址大全 | 国产婷婷一区二区 | 亚洲,播放 | 亚洲久久视频 | 久久黄色免费视频 | 麻豆传媒视频在线播放 | 国产一区欧美一区 | 国产v在线观看 | 黄色av电影一级片 | 高清有码中文字幕 | 久久九九影视 | 国内精品久久久久久久久久清纯 | 91人人澡人人爽人人精品 | 亚洲精品国产品国语在线 | 97精产国品一二三产区在线 | 日韩在线视频线视频免费网站 | 欧美日韩国产色综合一二三四 | 91在线视频在线观看 | 国产精品免费小视频 | 欧美激情视频在线免费观看 | 日本久热| 夜夜狠狠| 精品国产1区 | 中文字幕在线一区观看 | 久草精品电影 | 久久99精品波多结衣一区 | 欧美精品免费在线观看 | 一区二区三区视频 | 国产精品九九久久久久久久 | 午夜精品一二区 | 精品国内自产拍在线观看视频 | 97人人艹| 久久久久人人 | 综合色婷婷 | 久久精品久久精品久久精品 | 青青草久草在线 | 色婷婷国产在线 | 国产不卡一二三区 | 久久久天天操 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 国产欧美日韩精品一区二区免费 | 免费韩国av | 免费在线观看a v | 日日草夜夜操 | 有没有在线观看av | 99精品视频网站 | av大全免费在线观看 | 精品国产一区二区三区av性色 | 免费黄色激情视频 | 久久久久久97三级 | 九九热re | 婷婷色网视频在线播放 | 国产a国产a国产a | 91九色国产视频 | 欧美午夜精品久久久久久孕妇 | 免费看的黄色网 | 探花视频在线观看 | 精品乱码一区二区三四区 | 日韩精品视频网站 | 亚洲欧美日韩不卡 | 婷婷综合视频 | 亚洲婷婷网| 午夜精品电影一区二区在线 | free,性欧美 九九交易行官网 | 色伊人网 | 激情一区二区三区欧美 | 99免费在线视频观看 | 国产99区 | 永久免费视频国产 | 手机在线免费av | 亚洲 欧洲 国产 精品 | 国产精品 视频 | 久久精品在线 | 国产视频精选在线 | 久久精品视频在线 | 欧美精品久久久久久久久久 | 99免费在线视频观看 | 国产精品99久久久 | 国产精品美女久久久久久久网站 | 一本一本久久aa综合精品 | 精品国产一区二 | 349k.cc看片app | 中文字幕在线观看日本 | 夜夜看av | 一本色道久久综合亚洲二区三区 | 日韩欧美一区二区不卡 | 久久av免费观看 | 天天操人人要 | 日日日日| 一级黄色在线视频 | 91精选| 婷婷激情小说网 | 婷婷丁香国产 | 中文字幕精品一区二区精品 | 日韩在线免费高清视频 | 国产一区二区中文字幕 | www.99av | 午夜av在线免费 | 亚洲网久久 | 日韩成人免费在线 | 免费看的黄色 | 国产一级片直播 | 国产精品美女免费视频 | 亚洲成人精品国产 | 免费影视大全推荐 | 91传媒免费在线观看 | 国产伦精品一区二区三区免费 | 亚洲四虎| 国产精品久久久久国产精品日日 | 二区三区在线视频 | 免费看黄电影 | 日韩精品免费一区二区在线观看 | 操操操人人人 | 久久艹人人 | 国产一级免费片 | 国产一级免费片 | 亚洲精品自在在线观看 | 黄色av电影 | 中文字幕在线播放日韩 | 国产视频一级 | 在线免费黄色片 | 日韩av手机在线看 | 国产一二三区在线观看 | 久久精品久久国产 | 美腿丝袜一区二区三区 | 人人爽人人爽人人爽人人爽 | 91亚洲精品久久久蜜桃 | 色在线亚洲 | 一区电影| 成人国产精品入口 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 久久久久久国产精品999 | 伊人狠狠干 | 一区二区日韩av | 欧美视频在线观看免费网址 | 在线观看中文字幕 | 国产精品二区三区 | 在线不卡视频 | 久草在线电影网 | 国产精品99久久久久的智能播放 | 香蕉视频久久 | 中国一级片免费看 | 日韩二区在线播放 | 久久婷婷精品 | 国产精品九九视频 | 在线看国产精品 | 国产中文字幕视频 | 99视频偷窥在线精品国自产拍 | 亚洲精品玖玖玖av在线看 | 99精品偷拍视频一区二区三区 | 免费日韩视频 | 免费在线色电影 | 国产特级毛片aaaaaa毛片 | 色婷婷久久一区二区 | 国产一区二区久久久久 | 婷婷开心久久网 | 国产日韩精品在线 | 欧美精品久久久久久久久久丰满 | 久久久久99精品成人片三人毛片 | 香蕉国产91 | 国产日韩一区在线 | 91麻豆文化传媒在线观看 | 免费的成人av | 久久久久久久久久久久久久电影 | 久久草视频 | 在线免费观看视频一区二区三区 | 日本中文字幕在线观看 | 午夜三级在线 | 国产不卡免费 | 亚洲伦理一区二区 | 久久久久久蜜av免费网站 | 欧美aa在线 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 久草线 | 日韩成人黄色av | 天天综合成人 | 国产精品大片免费观看 | 91精品国产三级a在线观看 | 色噜噜日韩精品一区二区三区视频 | 国产伦理一区二区三区 | 国产老太婆免费交性大片 | 91av视频在线免费观看 | 中文字幕av电影下载 | 韩国一区二区三区在线观看 | 黄污在线观看 | 国内一级片在线观看 | 精品久久久久久久久久久久久久久久久久 | 在线观看一区 | 九九热精品视频在线播放 | 国产午夜精品久久 | 麻豆系列在线观看 | 精品国产精品一区二区夜夜嗨 | 国产久草在线观看 | 在线99视频 | 999视频在线播放 | 中文字幕一区二区在线观看 | av片免费播放 | 亚洲人久久久 | 色婷婷激情综合 | 五月婷婷综合在线观看 | 久久亚洲私人国产精品 | www.天天草 | av在观看| 国产精品人人做人人爽人人添 | 91高清一区| 久久一区91 | 波多野结衣视频一区二区 | 中文字幕中文字幕在线中文字幕三区 | 99在线观看精品 | 国产精久久久久久妇女av | 国产剧在线观看片 | 日韩精品欧美一区 | 成人毛片久久 | 免费中文字幕 | 色丁香综合 | 久久综合狠狠综合 | 天天干天天在线 | 波多野结衣视频一区 | www.五月天激情 | av电影一区 | 国产一区二区三区高清播放 | 久草在线观| 久久久久久高潮国产精品视 | 在线观看黄av | 国产福利一区二区三区在线观看 | 草久久久久 | 国产精品一区在线观看 | 色婷婷国产精品 | 最新三级在线 | 91视频a| 色综合色综合色综合 | 成人av在线电影 | a爱爱视频| 亚洲天堂网视频在线观看 | 欧美男同视频网站 | 人人操日日干 | 亚洲一区二区三区毛片 | 日韩精品视频在线免费观看 | 日韩免费观看视频 | 99视频国产精品 | 蜜臀av一区二区 | 精品视频www | 日韩视频一 | 日本少妇久久久 | 精品一区二三区 | 中日韩欧美精彩视频 | 亚洲三级黄| 激情五月***国产精品 | 欧美一级xxxx | 中文亚洲欧美日韩 | 成年人在线观看免费视频 | 精品在线视频一区 | 国产精品福利在线 | 久久久午夜精品理论片中文字幕 | 国产久视频 | 天天操夜夜叫 | 伊人资源视频在线 | 国产精品99久久免费黑人 | 久久人人爽爽人人爽人人片av | 婷婷丁香综合 | 国产一级在线播放 | 欧美精品一区二区在线播放 | 欧美日韩中文字幕视频 | 2022国产精品视频 | 97精品国产手机 | 在线电影日韩 | 亚洲国产精品影院 | 国产亚洲精品久久久久秋 | 国产在线播放一区二区三区 | 日本特黄一级片 | 久久精品成人热国产成 | 欧美日韩久久一区 | 伊人天堂网 | 欧美性生活一级片 | 久久婷婷国产色一区二区三区 | 最新精品视频在线 | 男女全黄一级一级高潮免费看 | 国产玖玖在线 | 色av男人的天堂免费在线 | 免费看国产曰批40分钟 | 日韩亚洲欧美中文字幕 | 亚洲视频网站在线观看 | 国色天香在线 | 91精品视频在线观看免费 | 亚洲综合成人在线 | 国产精品久久一区二区三区不卡 | 91在线你懂的 | 欧美性生活一级片 | 欧美成人高清 | 国产精品人人做人人爽人人添 | 天天综合久久 | 欧美日韩在线视频免费 | 国产精品久久电影网 | 中文区中文字幕免费看 | 久草在线在线精品观看 | 天天操天天射天天爽 | 人人干人人艹 | 国产在线p | 免费视频黄色 | 国产又黄又猛又粗 | 国产精品对白一区二区三区 | 中文字幕免费观看 | 永久免费毛片在线观看 | 久久综合九色综合久久久精品综合 | 欧美夫妻性生活电影 | 国产亚洲人成网站在线观看 | 久久99热这里只有精品 | 久久99久国产精品黄毛片入口 | 国产亚洲成人精品 | 成年人免费观看国产 | 精品国产亚洲在线 | 色综合久久88色综合天天 | 在线观看岛国av | 五月天六月丁香 | 人人爽人人爽人人爽人人爽 | 欧美男女爱爱视频 | 日韩高清免费在线 | 国产一级不卡毛片 | 91黄色在线看 | 日韩欧美在线免费观看 | 精品视频在线视频 | 国产丝袜美腿在线 | 国产小视频你懂的 | 99视频免费看| 美女视频黄频大全免费 | 成人在线观看影院 | 九九免费在线观看 | 国产成人a v电影 | 日韩中文字幕视频在线观看 | 免费在线观看的av网站 | 三级a毛片| 色综合久久88色综合天天人守婷 | 波多野结衣精品视频 | 日韩黄色免费电影 | 国产 一区二区三区 在线 | 国产成人久| 日韩素人在线观看 | 人人搞人人干 | 亚洲激情 在线 | 色www精品视频在线观看 | 99中文字幕在线观看 | 一级性av | 午夜精品久久久久久久爽 | 欧美污网站| 日韩大片在线免费观看 | 在线观看av片 | 在线观看成人福利 | 久久男女视频 | 天天干天天操天天爱 | 超碰在线最新 | 中文国产字幕 | 日韩网站一区 | 国产免费观看视频 | 国产中文字幕在线观看 | 一区二区三区四区五区在线视频 | 欧美精品一区在线 | 中国一级片在线 | 91麻豆网站 | 午夜精品视频一区 | 在线观看久久久久久 | 96视频免费在线观看 | 免费在线国产黄色 | 色婷婷亚洲综合 | 又黄又爽的视频在线观看网站 | 色网站在线免费观看 | 91人人人 | 国产一级视频免费看 | 日韩二三区 | 在线观看中文字幕第一页 | 在线日韩av | 美女免费电影 | 亚洲一级免费电影 | 国产精品不卡视频 | 女人18毛片90分钟 | 日韩免费二区 | 日韩av电影免费观看 | 9999毛片| 美女网站在线播放 | 91视频在线观看大全 | www在线免费观看 | 日韩在线第一区 | 亚洲电影院| 午夜少妇| 69精品在线观看 | 精品国产一区二区三区久久 | 久在线观看视频 | 毛片a级片 | 国产人成免费视频 | 色六月婷婷| 成人资源在线播放 | 国产亚洲成人网 | 久久成人18免费网站 | 丝袜一区在线 | 美女网站在线观看 | 日韩精品一区二区三区外面 | 十八岁以下禁止观看的1000个网站 | 91在线免费视频 | 国产一区二区精品91 | 色婷婷国产精品 | 亚洲三级视频 | 国产夫妻自拍av | 成人免费在线观看入口 | 一级a毛片高清视频 | 欧美做受xxx | 精品一区二区精品 | 日韩av女优视频 | 欧美激情精品久久久久久免费印度 | 色综合天 | 日韩av线观看 | 亚洲欧美日韩国产精品一区午夜 | 色综合天天视频在线观看 | 日韩在线高清视频 | 夜夜澡人模人人添人人看 | 麻豆视频在线观看免费 | 亚洲涩涩色 | 五月婷婷久久综合 | 亚洲激情在线观看 | 激情五月五月婷婷 | 高清免费在线视频 | 久久黄色美女 | 国产色视频123区 | 久久久久久激情 | 日韩欧美一区二区三区视频 | 亚洲国产偷 | 国产精品毛片网 | 国产h片在线观看 | 成人精品国产 | 欧美一级视频在线观看 | 亚洲精品男女 | 日韩区欧美久久久无人区 | 夜夜操天天 | 久久影视网 | av片中文| 精品久久五月天 | 久草在线久 | 精品国产理论片 | 一级黄毛片| 久久久精品99 | 人成免费网站 | 久久综合色天天久久综合图片 | 97免费视频在线播放 | 中国一级片在线播放 | 99久高清在线观看视频99精品热在线观看视频 | 欧美一区二区三区在线视频观看 | 7777xxxx| 超级碰碰碰碰 | 香蕉免费在线 | 亚洲激情视频在线 | 91福利区一区二区三区 | 人人看人人艹 | 国内精品亚洲 | 激情综合婷婷 | 日韩网站一区 | 欧美日韩在线免费观看视频 | 亚洲人成精品久久久久 | 国产精品视频免费看 | 国产69熟 | 国产美女精品视频免费观看 | 五月天婷婷在线观看视频 | 能在线观看的日韩av | 欧美亚洲三级 | 韩国三级av在线 | 97精品超碰一区二区三区 | 久久婷婷综合激情 | 久久乐九色婷婷综合色狠狠182 | 91九色在线播放 | 精品国产一区二区三区久久久久久 | 色成人亚洲 | 免费男女羞羞的视频网站中文字幕 | 日韩经典一区二区三区 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 亚洲成a人片77777kkkk1在线观看 | 婷婷伊人综合亚洲综合网 | 免费福利在线播放 | 天天操天天能 | 国产一区视频在线播放 | 成人蜜桃视频 | 日韩在线小视频 | 精品国产激情 | 成人黄色小视频 | 中文字幕 91 | 一区二区亚洲精品 | 国产精品久久久久高潮 | www.天天色.com | 热久久免费视频精品 | 国产免费视频一区二区裸体 | 99精品视频精品精品视频 | 欧美午夜久久 | 国产亚洲成av人片在线观看桃 | 人人干人人干人人干 | 视频在线日韩 | 色噜噜狠狠狠狠色综合久不 | 日韩欧美在线不卡 | 91av在线不卡 | 丁香综合激情 | 国产资源网| 国产精品高潮呻吟久久av无 | 综合五月 | 三级在线视频观看 | 日韩精品久久一区二区 | 久久久久久99精品 | 国产白浆在线观看 | 在线视频麻豆 | 婷婷色中文字幕 | 日日天天av| 国产精品久久久久久久午夜 | 91热这里只有精品 | 在线观看视频黄色 | 免费日韩 精品中文字幕视频在线 | 国产裸体视频bbbbb | 狠狠操天天干 | 涩涩色亚洲一区 | 亚洲精品日韩一区二区电影 | av亚洲产国偷v产偷v自拍小说 | 尤物九九久久国产精品的分类 | 亚洲精品在线一区二区 | 精品福利片 | 日韩二区三区 | 在线观看成人福利 | 九九在线播放 | 国产1级毛片 | 国产在线a免费观看 | 在线91视频 | 怡春院av| 国产精品日韩久久久久 | 波多野结衣在线视频一区 | 国产精品久久久久久久久久 | 91麻豆传媒 | 亚洲国内精品在线 | 在线精品视频在线观看高清 | 亚洲免费在线看 | 色国产在线 | 成人 亚洲 欧美 | 亚洲黄色免费在线看 | 夜夜狠狠 | 欧美va天堂va视频va在线 | 成人影音在线 | 亚洲午夜电影网 | 人人草人 | aⅴ视频在线 | 视频在线观看入口黄最新永久免费国产 | 97理论电影 | 日日夜夜免费精品视频 | 人人干人人搞 | 精品人人人 | 97久久久免费福利网址 | 91精品小视频 | 久久精品电影网 | 午夜视频在线观看一区二区三区 | 中文字幕 婷婷 | 国产精品免费一区二区三区 | 亚洲欧美在线综合 | 91久色蝌蚪 | 天天综合区 | 涩五月婷婷 | 成人中文字幕av | 91在线免费看片 | 久久精品人人做人人综合老师 | 九九热久久久 | 中文字幕在线视频一区 | 日韩a级黄色 | 色天堂在线视频 | 三级在线播放视频 | 亚洲欧美国产精品18p | 在线免费高清一区二区三区 | 国产成人在线综合 | 亚洲国产中文在线观看 | 色中射| 黄色免费电影网站 | 亚洲精品大全 | 久热国产视频 | 中文字幕视频一区 | 成人午夜在线电影 | 日韩网站免费观看 | 超碰公开97| 国产日韩精品在线观看 | 亚洲人人精品 | 成人久久久久久久久久 | 美女视频国产 | 五月婷婷激情综合网 | 色综合色综合色综合 | 精品国偷自产在线 | 久久精品国产精品亚洲 | 亚洲精选99 | 草久久影院 | 久草线| 国产免费av一区二区三区 | 97在线观看免费观看高清 | 中文字幕在线观看国产 | 欧美日韩一级视频 | 91aaa在线观看| 久久久国产精华液 | 九九热只有这里有精品 | 亚洲波多野结衣 | 久久视频一区 | 国产美女精品久久久 | 国产1区2区3区在线 亚洲自拍偷拍色图 | 黄色网址中文字幕 | av天天在线观看 | 久久久久国产精品免费网站 | japanesexxxhd奶水 国产一区二区在线免费观看 | 色婷婷精品大在线视频 | 97视频在线观看成人 | 丰满少妇在线观看资源站 | 射九九 | 久久综合婷婷 | 国产精品久久久久一区二区三区 | 免费观看久久 | 国产精品美女999 | 日韩最新在线 | 日日干日日操 | 激情五月五月婷婷 | 亚洲国产成人在线播放 | 欧美一级视频一区 | 在线色视频小说 | 精品视频99 | 国产免费叼嘿网站免费 | www.狠狠色| 97超视频| 国偷自产中文字幕亚洲手机在线 | 天天操天天色天天射 | 91热这里只有精品 | 97在线视频免费播放 | 婷婷亚洲综合五月天小说 | 韩日精品在线 | 91精品入口 | 欧美网址在线观看 | 国内精品久久久久久中文字幕 | 久久精品一区二区三区四区 | 亚洲欧美国内爽妇网 | 婷香五月 | 国产一区二区日本 | 97超碰超碰久久福利超碰 | 少妇性bbb搡bbb爽爽爽欧美 | 国产精品99久久99久久久二8 | 国产一级二级三级视频 | 国产日韩精品一区二区 | 久久艹国产视频 | 国产麻豆精品在线观看 | 99精品在线视频观看 | 国产又粗又硬又爽视频 | 国产日韩中文字幕在线 | 国产在线高清视频 | 国产日韩欧美在线观看 | 97超碰人人爱 | 婷婷av在线 | av中文资源在线 | 激情综合色图 | 精品国自产在线观看 | 高清中文字幕av | 黄色精品一区二区 | 成人免费观看电影 | 亚洲视频免费在线观看 | 成人av一级片 | 久久综合色影院 | 亚洲国产中文字幕在线观看 | 日本公妇在线观看高清 | 国产在线毛片 | 国产午夜激情视频 | h网站免费在线观看 | 国产福利在线免费观看 | 免费看片亚洲 | 亚洲女同videos | 日韩精品播放 | 国产国产人免费人成免费视频 | 国产品久精国精产拍 | 在线观看成年人 | 久久手机免费视频 | 三日本三级少妇三级99 | 激情网在线视频 | 久久久久免费精品国产小说色大师 | 日韩视频一 | 日批在线看 | 久久成人国产精品 | 国产高清在线a视频大全 | 日韩三级视频在线看 | av不卡中文字幕 | 丁香六月激情婷婷 | 久久调教视频 | 日韩免费三区 | 成人免费精品 | 热精品| 国产日产精品一区二区三区四区的观看方式 | 最近2019好看的中文字幕免费 | 人人爽人人爽人人片av免 | 久久成人国产精品入口 | 狠狠地日 | 精品一区二区av | 99爱视频在线观看 | 黄色亚洲精品 | 二区三区中文字幕 | 免费看国产视频 | 色婷婷综合视频在线观看 | 日韩激情小视频 | 色婷婷av国产精品 | 久久99精品久久久久蜜臀 | 欧洲高潮三级做爰 | 国产中文字幕大全 | 日韩视频在线观看免费 | 欧美乱淫视频 | 成人午夜免费福利 | 亚洲国产精品va在线看 | 98久久| 成人影音在线 | 中文字幕在线视频一区二区 | 亚洲男模gay裸体gay | 国产午夜精品视频 | 中国精品一区二区 | 成人一区二区三区在线观看 | 成人在线视频论坛 | 九色精品在线 | 久久精品第一页 | 天天操天天干天天爱 | 中文字幕日韩国产 | 在线看免费 | 国产精品高清在线观看 | 人人澡人摸人人添学生av | 日韩欧美一区二区不卡 | 狠狠的日| 亚洲高清视频在线 | 欧美激情精品久久久久久 | 国产69精品久久久久久久久久 | 国产自在线 | 视频在线观看一区 | 人人插人人插 | 中文字幕丝袜美腿 | 在线观看视频中文字幕 | 日本视频久久久 | 国产这里只有精品 | 精品欧美乱码久久久久久 | www.色爱| 在线成人一区 | 狠狠色噜噜狠狠狠狠2022 | 国产在线色视频 | 九九热在线视频 | 激情婷婷av | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 在线观看日韩中文字幕 | 久久久久久久久电影 | 片黄色毛片黄色毛片 | 欧美黑人性爽 | 日韩69av | av免费在线网站 | 激情综合国产 | 久久综合影视 | 精品1区2区3区 | 最新影院 | 韩国av免费 | 韩国一区二区三区在线观看 | 欧美99精品 | 国产高清精 | 黄色片视频在线观看 | 免费观看国产视频 | 午夜av影院 | 婷色在线| 亚洲激情校园春色 | 91香蕉国产在线观看软件 | 99国内精品久久久久久久 | 日本少妇高清做爰视频 | 性日韩欧美在线视频 | 在线亚洲人成电影网站色www | 国产三级在线播放 | 国产美女精品视频免费观看 | 亚州av网站大全 | 亚洲电影第一页av | 黄网站大全 | 黄色一级在线免费观看 | 久国产在线播放 | 911香蕉视频 | 欧美日韩在线精品一区二区 | 国产精品亚州 | 国产一级一级国产 | 黄色av电影免费观看 | 亚洲精品视频网站在线观看 | 2021国产在线 | 97综合在线 | 久久美女高清视频 | 99久久久国产免费 | 久久爽久久爽久久av东京爽 | 国产一区二区综合 | 国产精品麻豆91 | 五月天视频网站 | 久久国产免费 | 精品国产一区二区三区蜜臀 | 欧美色图p | 五月天网站在线 | 美女视频又黄又免费 | 成人免费在线播放视频 | av日韩精品| 黄色午夜网站 | 久久久免费观看 | 日韩在线高清 | 日韩电影黄色 | 国外调教视频网站 | 国偷自产视频一区二区久 | 午夜 在线 | 黄色小说在线观看视频 | 欧洲一区二区三区精品 | 一级黄色免费网站 | 99久热精品 | 亚洲午夜精品一区 | 色婷婷激情五月 | 亚洲综合欧美日韩狠狠色 | 国产视频观看 | 日韩一级成人av | 日韩色视频在线观看 | 天天摸夜夜添 | 亚洲综合在线观看视频 | 国产69精品久久久久99 | 人人网人人爽 | 国产一级在线观看 | 午夜体验区 | 99精品国产99久久久久久福利 | 欧美日韩免费在线观看视频 | 亚洲黄在线观看 | 欧美一级视频在线观看 | 欧美va天堂va视频va在线 | 日日色综合 | 亚洲黄色免费在线 | 国产精品嫩草影院9 | 亚洲视频久久久久 | 日韩欧美国产激情在线播放 | 香蕉影院在线 | 涩涩在线 | av线上看 | 成人av网址大全 | 亚洲伊人av | 国产高清免费av | 婷婷久久一区 | 91av免费在线观看 | 日韩69视频 | 999男人的天堂 | 免费看高清毛片 | 亚洲一区精品二人人爽久久 | 91成人网在线观看 | 亚洲国产精品一区二区尤物区 | 国产免费又粗又猛又爽 | 日韩视频1| 国产精品午夜在线观看 | 色综合天天色综合 | 久久精视频 | 中文字幕在 | 久久激情网站 | 亚洲天堂网视频在线观看 | 蜜臀久久99静品久久久久久 | 在线黄色观看 | 国产福利一区二区三区视频 | 色偷偷av男人天堂 | 色婷婷狠狠五月综合天色拍 | 国产精品国产三级国产aⅴ入口 | 日韩欧美一区二区在线观看 | 色网站在线免费 | 美女免费黄视频网站 | sesese图片| 国内精品久久久久久久影视麻豆 | 欧美日韩免费视频 | 婷婷射五月 | 久久精品一区二区三区中文字幕 | 日韩成人黄色av | 国产伦精品一区二区三区无广告 | 一区二区三区av在线 | 天天操天天摸天天射 | 丁香激情五月 | 人人天天夜夜 | 97精品超碰一区二区三区 | 欧美成人按摩 | 毛片网站在线看 | 狠狠色2019综合网 | 日日夜夜天天久久 | 精品人妖videos欧美人妖 | 国产精品久久久 | 日韩免费在线观看视频 | 欧美日韩性视频 | 狠狠色丁香婷婷综合久小说久 | 日韩av电影免费观看 | 精品国产伦一区二区三区免费 | 视频91 | 亚洲国产精品500在线观看 | 激情综合啪 | 特级片免费看 | 色婷婷激婷婷情综天天 | 日韩久久精品一区二区三区下载 | 久久国产精品一区二区三区 | 日本中文字幕在线看 | 99999精品视频 | 99国产精品久久久久久久久久 | 国产精品日韩欧美 | 射射射av | 国产精品免费一区二区 | 国产高清一区二区 | 色丁香婷婷 | 国产传媒中文字幕 |