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

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

?? aeskey.c

?? EJB,business logic 處理程序。 主要想找一點關于加密方面的程序。
?? C
字號:
/*
 ---------------------------------------------------------------------------
 Copyright (c) 2003, Dr Brian Gladman <brg@gladman.me.uk>, Worcester, UK.
 All rights reserved.

 LICENSE TERMS

 The free distribution and use of this software in both source and binary
 form is allowed (with or without changes) provided that:

   1. distributions of this source code include the above copyright
      notice, this list of conditions and the following disclaimer;

   2. distributions in binary form include the above copyright
      notice, this list of conditions and the following disclaimer
      in the documentation and/or other associated materials;

   3. the copyright holder's name is not used to endorse products
      built using this software without specific written permission.

 ALTERNATIVELY, provided that this notice is retained in full, this product
 may be distributed under the terms of the GNU General Public License (GPL),
 in which case the provisions of the GPL apply INSTEAD OF those given above.

 DISCLAIMER

 This software is provided 'as is' with no explicit or implied warranties
 in respect of its properties, including, but not limited to, correctness
 and/or fitness for purpose.
 ---------------------------------------------------------------------------
 Issue Date: 1/06/2003

 This file contains the code for implementing the key schedule for AES
 (Rijndael) for block and key sizes of 16, 24, and 32 bytes. See aesopt.h
 for further details including optimisation.
*/

#include "aesopt.h"

#if defined(__cplusplus)
extern "C"
{
#endif

/* Initialise the key schedule from the user supplied key. The key
   length can be specified in bytes, with legal values of 16, 24
   and 32, or in bits, with legal values of 128, 192 and 256. These
   values correspond with Nk values of 4, 6 and 8 respectively.

   The following macros implement a single cycle in the key
   schedule generation process. The number of cycles needed
   for each cx->n_col and nk value is:

    nk =             4  5  6  7  8
    ------------------------------
    cx->n_col = 4   10  9  8  7  7
    cx->n_col = 5   14 11 10  9  9
    cx->n_col = 6   19 15 12 11 11
    cx->n_col = 7   21 19 16 13 14
    cx->n_col = 8   29 23 19 17 14
*/

#define ke4(k,i) \
{   k[4*(i)+4] = ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[4*(i)+5] = ss[1] ^= ss[0]; \
    k[4*(i)+6] = ss[2] ^= ss[1]; k[4*(i)+7] = ss[3] ^= ss[2]; \
}
#define kel4(k,i) \
{   k[4*(i)+4] = ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[4*(i)+5] = ss[1] ^= ss[0]; \
    k[4*(i)+6] = ss[2] ^= ss[1]; k[4*(i)+7] = ss[3] ^= ss[2]; \
}

#define ke6(k,i) \
{   k[6*(i)+ 6] = ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[6*(i)+ 7] = ss[1] ^= ss[0]; \
    k[6*(i)+ 8] = ss[2] ^= ss[1]; k[6*(i)+ 9] = ss[3] ^= ss[2]; \
    k[6*(i)+10] = ss[4] ^= ss[3]; k[6*(i)+11] = ss[5] ^= ss[4]; \
}
#define kel6(k,i) \
{   k[6*(i)+ 6] = ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[6*(i)+ 7] = ss[1] ^= ss[0]; \
    k[6*(i)+ 8] = ss[2] ^= ss[1]; k[6*(i)+ 9] = ss[3] ^= ss[2]; \
}

#define ke8(k,i) \
{   k[8*(i)+ 8] = ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[8*(i)+ 9] = ss[1] ^= ss[0]; \
    k[8*(i)+10] = ss[2] ^= ss[1]; k[8*(i)+11] = ss[3] ^= ss[2]; \
    k[8*(i)+12] = ss[4] ^= ls_box(ss[3],0); k[8*(i)+13] = ss[5] ^= ss[4]; \
    k[8*(i)+14] = ss[6] ^= ss[5]; k[8*(i)+15] = ss[7] ^= ss[6]; \
}
#define kel8(k,i) \
{   k[8*(i)+ 8] = ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[8*(i)+ 9] = ss[1] ^= ss[0]; \
    k[8*(i)+10] = ss[2] ^= ss[1]; k[8*(i)+11] = ss[3] ^= ss[2]; \
}

#if defined(ENCRYPTION_KEY_SCHEDULE)

#if defined(AES_128) || defined(AES_VAR)

aes_rval aes_encrypt_key128(const void *in_key, aes_encrypt_ctx cx[1])
{   aes_32t    ss[4];

    cx->ks[0] = ss[0] = word_in(in_key, 0);
    cx->ks[1] = ss[1] = word_in(in_key, 1);
    cx->ks[2] = ss[2] = word_in(in_key, 2);
    cx->ks[3] = ss[3] = word_in(in_key, 3);

#if ENC_UNROLL == NONE
    {   aes_32t i;

        for(i = 0; i < ((11 * N_COLS - 1) / 4); ++i)
            ke4(cx->ks, i);
    }
#else
    ke4(cx->ks, 0);  ke4(cx->ks, 1);
    ke4(cx->ks, 2);  ke4(cx->ks, 3);
    ke4(cx->ks, 4);  ke4(cx->ks, 5);
    ke4(cx->ks, 6);  ke4(cx->ks, 7);
    ke4(cx->ks, 8); kel4(cx->ks, 9);
#endif

    /* cx->ks[45] ^ cx->ks[52] ^ cx->ks[53] is zero for a 256 bit		*/
	/* key and must be non-zero for 128 and 192 bits keys	*/
    cx->ks[53] = cx->ks[45] = 0;
    cx->ks[52] = 10;
#ifdef AES_ERR_CHK
    return aes_good;
#endif
}

#endif

#if defined(AES_192) || defined(AES_VAR)

aes_rval aes_encrypt_key192(const void *in_key, aes_encrypt_ctx cx[1])
{   aes_32t    ss[6];

    cx->ks[0] = ss[0] = word_in(in_key, 0);
    cx->ks[1] = ss[1] = word_in(in_key, 1);
    cx->ks[2] = ss[2] = word_in(in_key, 2);
    cx->ks[3] = ss[3] = word_in(in_key, 3);
    cx->ks[4] = ss[4] = word_in(in_key, 4);
    cx->ks[5] = ss[5] = word_in(in_key, 5);

#if ENC_UNROLL == NONE
    {   aes_32t i;

        for(i = 0; i < (13 * N_COLS - 1) / 6; ++i)
            ke6(cx->ks, i);
    }
#else
    ke6(cx->ks, 0);  ke6(cx->ks, 1);
    ke6(cx->ks, 2);  ke6(cx->ks, 3);
    ke6(cx->ks, 4);  ke6(cx->ks, 5);
    ke6(cx->ks, 6); kel6(cx->ks, 7);
#endif

    /* cx->ks[45] ^ cx->ks[52] ^ cx->ks[53] is zero for a 256 bit		*/
	/* key and must be non-zero for 128 and 192 bits keys	*/
    cx->ks[53] = cx->ks[45];
    cx->ks[52] = 12;
#ifdef AES_ERR_CHK
    return aes_good;
#endif
}

#endif

#if defined(AES_256) || defined(AES_VAR)

aes_rval aes_encrypt_key256(const void *in_key, aes_encrypt_ctx cx[1])
{   aes_32t    ss[8];

    cx->ks[0] = ss[0] = word_in(in_key, 0);
    cx->ks[1] = ss[1] = word_in(in_key, 1);
    cx->ks[2] = ss[2] = word_in(in_key, 2);
    cx->ks[3] = ss[3] = word_in(in_key, 3);
    cx->ks[4] = ss[4] = word_in(in_key, 4);
    cx->ks[5] = ss[5] = word_in(in_key, 5);
    cx->ks[6] = ss[6] = word_in(in_key, 6);
    cx->ks[7] = ss[7] = word_in(in_key, 7);

#if ENC_UNROLL == NONE
    {   aes_32t i;

        for(i = 0; i < (15 * N_COLS - 1) / 8; ++i)
            ke8(cx->ks,  i);
    }
#else
    ke8(cx->ks, 0); ke8(cx->ks, 1);
    ke8(cx->ks, 2); ke8(cx->ks, 3);
    ke8(cx->ks, 4); ke8(cx->ks, 5);
    kel8(cx->ks, 6);
#endif
#ifdef AES_ERR_CHK
    return aes_good;
#endif
}

#endif

#if defined(AES_VAR)

aes_rval aes_encrypt_key(const void *in_key, int key_len, aes_encrypt_ctx cx[1])
{
    switch(key_len)
    {
#ifdef AES_ERR_CHK
    case 16: case 128: return aes_encrypt_key128(in_key, cx);
    case 24: case 192: return aes_encrypt_key192(in_key, cx);
    case 32: case 256: return aes_encrypt_key256(in_key, cx);
	default: return aes_error;
#else
    case 16: case 128: aes_encrypt_key128(in_key, cx); return;
    case 24: case 192: aes_encrypt_key192(in_key, cx); return;
    case 32: case 256: aes_encrypt_key256(in_key, cx); return;
#endif
    }
}

#endif

#endif

#if defined(DECRYPTION_KEY_SCHEDULE)

#if DEC_ROUND == NO_TABLES
#define ff(x)   (x)
#else
#define ff(x)   inv_mcol(x)
#ifdef  dec_imvars
#define d_vars  dec_imvars
#endif
#endif

#if 1
#define kdf4(k,i) \
{   ss[0] = ss[0] ^ ss[2] ^ ss[1] ^ ss[3]; ss[1] = ss[1] ^ ss[3]; ss[2] = ss[2] ^ ss[3]; ss[3] = ss[3]; \
    ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; ss[i % 4] ^= ss[4]; \
    ss[4] ^= k[4*(i)];   k[4*(i)+4] = ff(ss[4]); ss[4] ^= k[4*(i)+1]; k[4*(i)+5] = ff(ss[4]); \
    ss[4] ^= k[4*(i)+2]; k[4*(i)+6] = ff(ss[4]); ss[4] ^= k[4*(i)+3]; k[4*(i)+7] = ff(ss[4]); \
}
#define kd4(k,i) \
{   ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; ss[i % 4] ^= ss[4]; ss[4] = ff(ss[4]); \
    k[4*(i)+4] = ss[4] ^= k[4*(i)]; k[4*(i)+5] = ss[4] ^= k[4*(i)+1]; \
    k[4*(i)+6] = ss[4] ^= k[4*(i)+2]; k[4*(i)+7] = ss[4] ^= k[4*(i)+3]; \
}
#define kdl4(k,i) \
{   ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; ss[i % 4] ^= ss[4]; \
    k[4*(i)+4] = (ss[0] ^= ss[1]) ^ ss[2] ^ ss[3]; k[4*(i)+5] = ss[1] ^ ss[3]; \
    k[4*(i)+6] = ss[0]; k[4*(i)+7] = ss[1]; \
}
#else
#define kdf4(k,i) \
{   ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[4*(i)+ 4] = ff(ss[0]); ss[1] ^= ss[0]; k[4*(i)+ 5] = ff(ss[1]); \
    ss[2] ^= ss[1]; k[4*(i)+ 6] = ff(ss[2]); ss[3] ^= ss[2]; k[4*(i)+ 7] = ff(ss[3]); \
}
#define kd4(k,i) \
{   ss[4] = ls_box(ss[3],3) ^ t_use(r,c)[i]; \
    ss[0] ^= ss[4]; ss[4] = ff(ss[4]); k[4*(i)+ 4] = ss[4] ^= k[4*(i)]; \
    ss[1] ^= ss[0]; k[4*(i)+ 5] = ss[4] ^= k[4*(i)+ 1]; \
    ss[2] ^= ss[1]; k[4*(i)+ 6] = ss[4] ^= k[4*(i)+ 2]; \
    ss[3] ^= ss[2]; k[4*(i)+ 7] = ss[4] ^= k[4*(i)+ 3]; \
}
#define kdl4(k,i) \
{   ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[4*(i)+ 4] = ss[0]; ss[1] ^= ss[0]; k[4*(i)+ 5] = ss[1]; \
    ss[2] ^= ss[1]; k[4*(i)+ 6] = ss[2]; ss[3] ^= ss[2]; k[4*(i)+ 7] = ss[3]; \
}
#endif

#define kdf6(k,i) \
{   ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[6*(i)+ 6] = ff(ss[0]); ss[1] ^= ss[0]; k[6*(i)+ 7] = ff(ss[1]); \
    ss[2] ^= ss[1]; k[6*(i)+ 8] = ff(ss[2]); ss[3] ^= ss[2]; k[6*(i)+ 9] = ff(ss[3]); \
    ss[4] ^= ss[3]; k[6*(i)+10] = ff(ss[4]); ss[5] ^= ss[4]; k[6*(i)+11] = ff(ss[5]); \
}
#define kd6(k,i) \
{   ss[6] = ls_box(ss[5],3) ^ t_use(r,c)[i]; \
    ss[0] ^= ss[6]; ss[6] = ff(ss[6]); k[6*(i)+ 6] = ss[6] ^= k[6*(i)]; \
    ss[1] ^= ss[0]; k[6*(i)+ 7] = ss[6] ^= k[6*(i)+ 1]; \
    ss[2] ^= ss[1]; k[6*(i)+ 8] = ss[6] ^= k[6*(i)+ 2]; \
    ss[3] ^= ss[2]; k[6*(i)+ 9] = ss[6] ^= k[6*(i)+ 3]; \
    ss[4] ^= ss[3]; k[6*(i)+10] = ss[6] ^= k[6*(i)+ 4]; \
    ss[5] ^= ss[4]; k[6*(i)+11] = ss[6] ^= k[6*(i)+ 5]; \
}
#define kdl6(k,i) \
{   ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[6*(i)+ 6] = ss[0]; ss[1] ^= ss[0]; k[6*(i)+ 7] = ss[1]; \
    ss[2] ^= ss[1]; k[6*(i)+ 8] = ss[2]; ss[3] ^= ss[2]; k[6*(i)+ 9] = ss[3]; \
}

#define kdf8(k,i) \
{   ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[8*(i)+ 8] = ff(ss[0]); ss[1] ^= ss[0]; k[8*(i)+ 9] = ff(ss[1]); \
    ss[2] ^= ss[1]; k[8*(i)+10] = ff(ss[2]); ss[3] ^= ss[2]; k[8*(i)+11] = ff(ss[3]); \
    ss[4] ^= ls_box(ss[3],0); k[8*(i)+12] = ff(ss[4]); ss[5] ^= ss[4]; k[8*(i)+13] = ff(ss[5]); \
    ss[6] ^= ss[5]; k[8*(i)+14] = ff(ss[6]); ss[7] ^= ss[6]; k[8*(i)+15] = ff(ss[7]); \
}
#define kd8(k,i) \
{   aes_32t g = ls_box(ss[7],3) ^ t_use(r,c)[i]; \
    ss[0] ^= g; g = ff(g); k[8*(i)+ 8] = g ^= k[8*(i)]; \
    ss[1] ^= ss[0]; k[8*(i)+ 9] = g ^= k[8*(i)+ 1]; \
    ss[2] ^= ss[1]; k[8*(i)+10] = g ^= k[8*(i)+ 2]; \
    ss[3] ^= ss[2]; k[8*(i)+11] = g ^= k[8*(i)+ 3]; \
    g = ls_box(ss[3],0); \
    ss[4] ^= g; g = ff(g); k[8*(i)+12] = g ^= k[8*(i)+ 4]; \
    ss[5] ^= ss[4]; k[8*(i)+13] = g ^= k[8*(i)+ 5]; \
    ss[6] ^= ss[5]; k[8*(i)+14] = g ^= k[8*(i)+ 6]; \
    ss[7] ^= ss[6]; k[8*(i)+15] = g ^= k[8*(i)+ 7]; \
}
#define kdl8(k,i) \
{   ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[8*(i)+ 8] = ss[0]; ss[1] ^= ss[0]; k[8*(i)+ 9] = ss[1]; \
    ss[2] ^= ss[1]; k[8*(i)+10] = ss[2]; ss[3] ^= ss[2]; k[8*(i)+11] = ss[3]; \
}

#if defined(AES_128) || defined(AES_VAR)

aes_rval aes_decrypt_key128(const void *in_key, aes_decrypt_ctx cx[1])
{   aes_32t    ss[5];
#ifdef  d_vars
        d_vars;
#endif
    cx->ks[0] = ss[0] = word_in(in_key, 0);
    cx->ks[1] = ss[1] = word_in(in_key, 1);
    cx->ks[2] = ss[2] = word_in(in_key, 2);
    cx->ks[3] = ss[3] = word_in(in_key, 3);

#if DEC_UNROLL == NONE
    {   aes_32t i;

        for(i = 0; i < (11 * N_COLS - 1) / 4; ++i)
            ke4(cx->ks, i);
#if !(DEC_ROUND == NO_TABLES)
        for(i = N_COLS; i < 10 * N_COLS; ++i)
            cx->ks[i] = inv_mcol(cx->ks[i]);
#endif
    }
#else
    kdf4(cx->ks, 0);  kd4(cx->ks, 1);
     kd4(cx->ks, 2);  kd4(cx->ks, 3);
     kd4(cx->ks, 4);  kd4(cx->ks, 5);
     kd4(cx->ks, 6);  kd4(cx->ks, 7);
     kd4(cx->ks, 8); kdl4(cx->ks, 9);
#endif

    /* cx->ks[45] ^ cx->ks[52] ^ cx->ks[53] is zero for a 256 bit		*/
	/* key and must be non-zero for 128 and 192 bits keys	*/
    cx->ks[53] = cx->ks[45] = 0;
    cx->ks[52] = 10;
#ifdef AES_ERR_CHK
    return aes_good;
#endif
}

#endif

#if defined(AES_192) || defined(AES_VAR)

aes_rval aes_decrypt_key192(const void *in_key, aes_decrypt_ctx cx[1])
{   aes_32t    ss[7];
#ifdef  d_vars
        d_vars;
#endif
    cx->ks[0] = ss[0] = word_in(in_key, 0);
    cx->ks[1] = ss[1] = word_in(in_key, 1);
    cx->ks[2] = ss[2] = word_in(in_key, 2);
    cx->ks[3] = ss[3] = word_in(in_key, 3);

#if DEC_UNROLL == NONE
    cx->ks[4] = ss[4] = word_in(in_key, 4);
    cx->ks[5] = ss[5] = word_in(in_key, 5);
    {   aes_32t i;

        for(i = 0; i < (13 * N_COLS - 1) / 6; ++i)
            ke6(cx->ks, i);
#if !(DEC_ROUND == NO_TABLES)
        for(i = N_COLS; i < 12 * N_COLS; ++i)
            cx->ks[i] = inv_mcol(cx->ks[i]);
#endif
    }
#else
    cx->ks[4] = ff(ss[4] = word_in(in_key, 4));
    cx->ks[5] = ff(ss[5] = word_in(in_key, 5));
    kdf6(cx->ks, 0); kd6(cx->ks, 1);
    kd6(cx->ks, 2);  kd6(cx->ks, 3);
    kd6(cx->ks, 4);  kd6(cx->ks, 5);
    kd6(cx->ks, 6); kdl6(cx->ks, 7);
#endif

    /* cx->ks[45] ^ cx->ks[52] ^ cx->ks[53] is zero for a 256 bit		*/
	/* key and must be non-zero for 128 and 192 bits keys	*/
    cx->ks[53] = cx->ks[45];
    cx->ks[52] = 12;
#ifdef AES_ERR_CHK
    return aes_good;
#endif
}

#endif

#if defined(AES_256) || defined(AES_VAR)

aes_rval aes_decrypt_key256(const void *in_key, aes_decrypt_ctx cx[1])
{   aes_32t    ss[8];
#ifdef  d_vars
        d_vars;
#endif
    cx->ks[0] = ss[0] = word_in(in_key, 0);
    cx->ks[1] = ss[1] = word_in(in_key, 1);
    cx->ks[2] = ss[2] = word_in(in_key, 2);
    cx->ks[3] = ss[3] = word_in(in_key, 3);

#if DEC_UNROLL == NONE
    cx->ks[4] = ss[4] = word_in(in_key, 4);
    cx->ks[5] = ss[5] = word_in(in_key, 5);
    cx->ks[6] = ss[6] = word_in(in_key, 6);
    cx->ks[7] = ss[7] = word_in(in_key, 7);
    {   aes_32t i;

        for(i = 0; i < (15 * N_COLS - 1) / 8; ++i)
            ke8(cx->ks,  i);
#if !(DEC_ROUND == NO_TABLES)
        for(i = N_COLS; i < 14 * N_COLS; ++i)
            cx->ks[i] = inv_mcol(cx->ks[i]);
#endif
    }
#else
    cx->ks[4] = ff(ss[4] = word_in(in_key, 4));
    cx->ks[5] = ff(ss[5] = word_in(in_key, 5));
    cx->ks[6] = ff(ss[6] = word_in(in_key, 6));
    cx->ks[7] = ff(ss[7] = word_in(in_key, 7));
    kdf8(cx->ks, 0); kd8(cx->ks, 1);
    kd8(cx->ks, 2);  kd8(cx->ks, 3);
    kd8(cx->ks, 4);  kd8(cx->ks, 5);
    kdl8(cx->ks, 6);
#endif
#ifdef AES_ERR_CHK
    return aes_good;
#endif
}

#endif

#if defined(AES_VAR)

aes_rval aes_decrypt_key(const void *in_key, int key_len, aes_decrypt_ctx cx[1])
{
    switch(key_len)
    {
#ifdef AES_ERR_CHK
    case 16: case 128: return aes_decrypt_key128(in_key, cx);
    case 24: case 192: return aes_decrypt_key192(in_key, cx);
    case 32: case 256: return aes_decrypt_key256(in_key, cx);
	default: return aes_error;
#else
    case 16: case 128: aes_decrypt_key128(in_key, cx); return;
    case 24: case 192: aes_decrypt_key192(in_key, cx); return;
    case 32: case 256: aes_decrypt_key256(in_key, cx); return;
#endif
    }
}

#endif

#endif

#if defined(__cplusplus)}#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃精品视频在线| 一本到三区不卡视频| 波多野结衣欧美| 欧美日韩一区二区三区四区| 国产亚洲美州欧州综合国| 亚洲一区二区在线免费看| 国产成人午夜精品影院观看视频| 欧美综合在线视频| 国产精品美女久久久久久久久久久 | 一区在线观看免费| 久久国产精品99久久久久久老狼| 欧美三级韩国三级日本三斤| 国产精品久久久久久久久搜平片| 久久超碰97人人做人人爱| 在线视频欧美精品| 中文字幕亚洲精品在线观看| 国产精品综合一区二区三区| 精品国产一二三| 免费人成网站在线观看欧美高清| 在线观看欧美黄色| 亚洲综合激情网| 91精品91久久久中77777| 国产精品国产三级国产普通话三级| 国产在线不卡一区| 2023国产精华国产精品| 久久精品国产免费| 欧美一级黄色录像| 另类小说色综合网站| 日韩美一区二区三区| 日韩vs国产vs欧美| 91麻豆精品国产91| 免费亚洲电影在线| 精品少妇一区二区| 国产精品一区免费在线观看| 国产欧美日韩另类视频免费观看 | 亚洲精品在线三区| 精品一区二区三区在线观看 | 欧美精品丝袜中出| 日本vs亚洲vs韩国一区三区二区| 欧美日韩1区2区| 蜜桃视频一区二区| 精品成人一区二区三区| 国产激情91久久精品导航| 国产欧美日韩另类一区| 91麻豆国产福利在线观看| 亚洲一区二区偷拍精品| 欧美一区二区三区四区在线观看| 日本在线不卡一区| 久久久高清一区二区三区| 成人性视频网站| 亚洲小说欧美激情另类| 日韩欧美色综合网站| 国产成人午夜精品影院观看视频| 国产精品乱码人人做人人爱| 色婷婷久久久久swag精品 | 日韩欧美国产一区二区在线播放 | 日本午夜一本久久久综合| 精品久久久久久综合日本欧美| 国产99久久久久| 亚洲最大成人网4388xx| 日韩欧美国产午夜精品| a4yy欧美一区二区三区| 日韩国产在线观看一区| 国产日韩精品一区| 欧美优质美女网站| 激情丁香综合五月| 一区二区三区.www| 久久影院午夜论| 欧美日韩在线三区| 国产老女人精品毛片久久| 亚洲最色的网站| 久久久精品综合| 欧美日韩成人在线| 成人av网址在线观看| 免费观看30秒视频久久| 中文字幕综合网| 精品久久一区二区三区| 在线亚洲人成电影网站色www| 精品系列免费在线观看| 亚洲日本va午夜在线电影| 欧美大片一区二区| 欧美私模裸体表演在线观看| 国产成人亚洲综合a∨婷婷| 天使萌一区二区三区免费观看| 中文字幕免费一区| 欧美成人bangbros| 欧美午夜精品一区二区蜜桃| 成人美女视频在线观看| 久久精品国产成人一区二区三区| 亚洲一区日韩精品中文字幕| 国产精品伦一区| 久久精品欧美一区二区三区麻豆| 9191成人精品久久| 色8久久人人97超碰香蕉987| 成人免费毛片高清视频| 国产一区二区成人久久免费影院| 日韩精品免费视频人成| 亚洲国产综合视频在线观看| 亚洲精品免费看| 最新国产精品久久精品| 国产精品素人视频| 欧美激情综合五月色丁香| 欧美va亚洲va香蕉在线| 欧美大片在线观看| 日韩欧美一区二区视频| 欧美一区二区在线观看| 91.麻豆视频| 欧美日高清视频| 欧美日韩精品欧美日韩精品一综合| 色综合一个色综合| 色激情天天射综合网| 91亚洲精品久久久蜜桃| 99精品欧美一区二区三区综合在线| 丁香亚洲综合激情啪啪综合| 丰满岳乱妇一区二区三区| 国产99久久久国产精品免费看 | 国产精品国产三级国产专播品爱网| 国产校园另类小说区| 国产欧美日韩综合精品一区二区| 国产日产欧美一区| 国产精品污污网站在线观看| 国产精品短视频| 一区二区三区色| 亚洲18色成人| 免费三级欧美电影| 国产精品一区二区黑丝| 懂色av一区二区三区免费看| 不卡免费追剧大全电视剧网站| 99国产精品久久久久| 一本到一区二区三区| 欧美精品国产精品| 欧美sm美女调教| 欧美国产禁国产网站cc| 亚洲在线免费播放| 免费高清视频精品| 成人小视频在线| 欧美三级乱人伦电影| 欧美成人艳星乳罩| 亚洲欧洲av在线| 天天操天天色综合| 国产精品资源网| 色av综合在线| 精品国产3级a| 亚洲激情av在线| 久久99精品久久久久久久久久久久| 国产成人av福利| 欧美久久久久久蜜桃| 久久久国产午夜精品 | 国产欧美一区二区在线| 亚洲伦理在线免费看| 免费在线观看一区二区三区| 国产91综合网| 在线播放中文字幕一区| 国产色产综合色产在线视频| 亚洲一区自拍偷拍| 韩国欧美国产1区| 欧美色电影在线| 国产亚洲欧美日韩日本| 丝袜脚交一区二区| 99久久伊人精品| 精品国产电影一区二区| 一区二区成人在线观看| 久久aⅴ国产欧美74aaa| 色婷婷一区二区三区四区| 久久午夜国产精品| 日韩福利视频导航| 99久久精品国产观看| 久久久91精品国产一区二区精品| 亚洲亚洲精品在线观看| 成人激情视频网站| 欧美精品一区二区三区久久久| 亚洲你懂的在线视频| 国产电影一区在线| 91精品国产高清一区二区三区蜜臀 | 欧美日韩一二三| 国产精品超碰97尤物18| 国产一区啦啦啦在线观看| 欧美日韩国产高清一区二区| 中文字幕色av一区二区三区| 国产一区二区在线看| 在线成人免费观看| 亚洲主播在线播放| 91在线精品一区二区| 国产亚洲精品资源在线26u| 激情图片小说一区| 日韩免费视频线观看| 青青草97国产精品免费观看| 欧美日韩免费一区二区三区 | 美国三级日本三级久久99| 在线看日韩精品电影| 亚洲人成亚洲人成在线观看图片| 成人晚上爱看视频| 国产精品久久午夜| 风流少妇一区二区| 欧美国产1区2区| 成人免费视频网站在线观看| 国产午夜精品在线观看| 国产成人亚洲综合色影视| 国产欧美一区二区精品忘忧草 | 久久综合久久综合久久|