在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當(dāng)前位置:雨林木風(fēng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

PHP數(shù)據(jù)加密

PHP數(shù)據(jù)加密

更新時(shí)間:2022-04-29 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

數(shù)據(jù)加密在我們生活中的地位已經(jīng)越來越重要了,尤其是考慮到在網(wǎng)絡(luò)上發(fā)生的大量 交易和傳輸?shù)拇罅繑?shù)據(jù)。如果對于采用安全措施有興趣的話,也一定會有興趣了解PHP提供的一系列安全功能。在本篇文章中,我們將介紹這些 功能,提供一些基本的用法,以便你能夠?yàn)樽约旱膽?yīng)用軟件中增加安全功能。


預(yù)備知識

在詳細(xì)介紹PHP的安全功能之 前,我們需要花點(diǎn)時(shí)間來向沒有接觸過這方面內(nèi)容的讀者介紹一些有關(guān)密碼學(xué)的基本知識,如果對密碼學(xué)的基本概念已經(jīng)非常熟悉,就可以跳 過去這一部分。

密碼學(xué)可以通俗地被描述為對加/解密的研究和實(shí)驗(yàn),加密是將易懂的資料轉(zhuǎn)換為不易懂資料的過程,解密 則是將不易懂的資料轉(zhuǎn)換為原來易懂資料的過程。不易懂的資料被稱作密碼,易懂的資料被稱作明碼。

數(shù)據(jù)的加/解密都需 要一定的算法,這些算法可以非常地簡單,如著名的凱撒碼,但當(dāng)前的加密算法要相對復(fù)雜得多,其中一些利用現(xiàn)有的方法甚至是無法破譯的 。


PHP的加密功能

只要有一點(diǎn)使用非Windows平臺經(jīng)驗(yàn)的人可能對crypt()也相當(dāng)熟悉,這一函數(shù)完成被稱作單向加密 的功能,它可以加密一些明碼,但不能夠?qū)⒚艽a轉(zhuǎn)換為原來的明碼。盡管從表面上來看這似乎是一個(gè)沒有什么用處的功能,但它的確被廣泛用 來保證系統(tǒng)密碼的完整性。因?yàn)椋瑔蜗蚣用艿目诹钜坏┞淙氲谌饺说氖掷铮捎诓荒鼙贿原為明文,因此也沒有什么大用處。在驗(yàn)證用戶輸 入的口令時(shí),用戶的輸入采用的也是單向算法,如果輸入與存儲的經(jīng)加密后的口令相匹配,則輸入的口信一定是正確的。

PHP同樣提供了使用其crypt()函數(shù)完成單向加密功能的可能性。我將在這里簡要地介紹該函數(shù):

string crypt (string input_string [, string salt])

其中的input_string參數(shù)是需要加密的字符串,第二個(gè)可選的salt是一個(gè)位字串,它能夠影響 加密的暗碼,進(jìn)一步地排除被稱作預(yù)計(jì)算攻擊的可能性。缺省情況下,PHP使用一個(gè)2個(gè)字符的DES干擾串,如果你的系統(tǒng)使用的是MD5(我將在 以后介紹MD5算法),它會使用一個(gè)12個(gè)字符的干擾串。順便說一下,可以通過執(zhí)行下面的命令發(fā)現(xiàn)系統(tǒng)將要使用的干擾串的長度:

print "My system salt size is: ". CRYPT_SALT_LENGTH;
系統(tǒng)也可能支持其他的加密算法。crypt()支持四 種算法,下面是它支持的算法和相應(yīng)的salt參數(shù)的長度:

算法      Salt長度
CRYPT_STD_DES 2-character (Default)
CRYPT_EXT_DES 9-character
CRYPT_MD5   12-character beginning with $1$
CRYPT_BLOWFISH 16-character beginning with $2$


用crypt()實(shí)現(xiàn)用戶身份驗(yàn)證

作為crypt()函數(shù)的一個(gè)例子,考慮這樣一種情況,你希望創(chuàng)建一段PHP腳本程序限 制對一個(gè)目錄的訪問,只允許能夠提供正確的用戶名和口令的用戶訪問這一目錄。我將把資料存儲在我喜歡的數(shù)據(jù)庫MySQL的一個(gè)表中。下面我 們以創(chuàng)建這個(gè)被稱作members的表開始我們的例子:

mysql>CREATE TABLE members (
->username CHAR(14) NOT NULL,
->password CHAR(32) NOT NULL,
->PRIMARY KEY(username)
->);

然后,我們假定下面的數(shù)據(jù)已經(jīng)存儲在該表中:

用戶名 密碼
clark keloD1C377lKE
bruce ba1T7vnz9AWgk
peter paLUvRWsRLZ4U

這些加密的口令對應(yīng)的明碼分別是kent、banner和parker。注意一下每個(gè)口令的前二個(gè)字母, 這是因?yàn)槲沂褂昧讼旅娴拇a,根據(jù)口令的前二個(gè)字母創(chuàng)建干擾串的:

$enteredPassword.
$salt = substr($enteredPassword, 0, 2);
$userPswd = crypt($enteredPassword, $salt);
// $userPswd然后就和用戶名一起存儲在MySQL 中

我將使用Apache的口令-應(yīng)答認(rèn)證配置提示用戶輸入用戶名和口令,一個(gè)鮮為人知的有關(guān)PHP的信息是,它可以把Apache 的口令-應(yīng)答系統(tǒng)輸入的用戶名和口令識別為$PHP_AUTH_USER和$PHP_AUTH_PW,我將在身份驗(yàn)證腳本中用到這二個(gè)變量。花一些時(shí)間仔細(xì)閱讀下 面的腳本,多注意一下其中的解釋,以便更好地理解下面的代碼:

crypt()和Apache的口令-應(yīng)答驗(yàn)證系統(tǒng)的應(yīng)用

$host = "localhost";
$user = "zorro";
$pswd = "hell odolly";
$db = "users";

// Set authorization to False

$authorization = 0;

// Verify that user has entered username and password

if (isset($PHP_AUTH_USER) && isset($PHP_AUTH_PW)) :

mysql_pconnect($host, $user, $pswd) or die("Can\'t connect to MySQL
server!");

mysql_select_db($db) or die("Can\'t select database!");

// Perform the encryption
$salt = substr($PHP_AUTH_PW, 0, 2);
$encrypted_pswd = crypt($PHP_AUTH_PW, $salt);

// Build the query

$query = "SELECT username FROM members WHERE
username = \'$PHP_AUTH_USER\' AND
password = \'$encrypted_pswd\'";

// Execute the query

if (mysql_numrows(mysql_query($query)) == 1) :
$authorization = 1;
endif;

endif;

// confirm authorization

if (! $authorization) :

header(\'WWW-Authenticate: Basic realm="Private"\');
header(\'HTTP/1.0 401 Unauthorized\');
print "You are unauthorized to enter this area.";
exit;

else :

print "This is the secret data!";

endif;

?>

上面就是一個(gè)核實(shí)用戶訪問權(quán)限的簡單身份驗(yàn)證系統(tǒng)。在使用crypt()保護(hù)重要的機(jī)密資料時(shí),記住在缺省狀態(tài)下使用的 crypt()并不是最安全的,只能用在對安全性要求較低的系統(tǒng)中,如果需要較高的安全性能,就需要我在本篇文章的后面介紹的算法。

下面我將介紹另一個(gè)PHP支持的函數(shù)━━md5(),這一函數(shù)使用MD5散列算法,它有幾種很有趣的用法值得一提:


混編

一個(gè)混編函數(shù)可以將一個(gè)可變長度的信息變換為具有固定長度被混編過的輸出,也被稱作“信息文摘”。這是十分有用的,因?yàn)?一個(gè)固定長度的字符串可以用來檢查文件的完整性和驗(yàn)證數(shù)字簽名以及用戶身份驗(yàn)證。由于它適合于PHP,PHP內(nèi)置的md5()混編函數(shù)將把一個(gè)可 變長度的信息轉(zhuǎn)換為128位(32個(gè)字符)的信息文摘。混編的一個(gè)有趣的特點(diǎn)是不能通過分析混編后的信息得到原來的明碼,因?yàn)榛炀幒蟮慕Y(jié)果 與原來的明碼內(nèi)容沒有依賴關(guān)系。 即便只改變一個(gè)字符串中的一個(gè)字符,也將使得MD5混編算法計(jì)算出二個(gè)截然不同的結(jié)果。我們首先來看下 表的內(nèi)容及其相應(yīng)的結(jié)果:

 
使用md5()混編字符串

$msg = "This is some message that I just wrote";
$enc_msg = md5($msg);
print "hash: $enc_msg ";
?>

結(jié)果:

hash: 81ea092649ca32b5ba375e81d8f4972c
注意,結(jié)果的長度為32個(gè)字符。再來看一下下面的表,其中的$msg的值有了一點(diǎn) 微小的變化:

使用md5()對一個(gè)稍微變化的字符串進(jìn)行混編

//注意,message中少了一個(gè)s
$msg = "This is some mesage that I just wrote";
$enc_msg = md5($msg);
print "hash2: $enc_msg

";
?>

結(jié)果:

hash2: e86cf511bd5490d46d5cd61738c82c0c
可以 發(fā)現(xiàn),盡管二個(gè)結(jié)果的長度都是32個(gè)字符,但明文中一點(diǎn)微小的變化使得結(jié)果發(fā)生了很大的變化,因此,混編和md5()函數(shù)是檢查數(shù)據(jù)中微小變 化的一個(gè)很好的工具。

盡管crypt()和md5()各有用處,但二者在功能上都受到一定的限制。在下面的部分中,我們將介紹 二個(gè)非常有用的被稱作Mcrypt和Mhash的PHP擴(kuò)展,將大大拓展PHP用戶在加密方面的選擇。

盡管我們在上面的小節(jié)中說明了 單向加密的重要性,但有時(shí)我們可能需要在加密后,再把密碼數(shù)據(jù)還原成原來的數(shù)據(jù),幸運(yùn)的是,PHP通過Mcrypt擴(kuò)展庫的形式提供了這種可能 性。

Mcrypt
Mcrypt 2.5.7 Unix | Win32
Mcrypt 2.4.7是一個(gè)功能強(qiáng)大的加密算法擴(kuò)展庫,它包括有22種算法 ,其中就包括下面的幾種算法:

Blowfish RC2 Safer-sk64 xtea
Cast-256 RC4 Safer-sk128
DES RC4-iv Serpent
Enigma Rijndael-128 Threeway
Gost Rijndael-192 TripleDES
LOKI97 Rijndael-256 Twofish
PanamaSaferplus Wake

安裝:

在標(biāo)準(zhǔn)的PHP軟件包中不包括Mcrypt,因此需要下載它,下載的地址為:ftp://argeas.cs-net.gr/pub/unix/mcrypt/ 。下載后,按照下面的方法進(jìn)行編譯,并把它擴(kuò)充在PHP中:

下載Mcrypt軟件包。
gunzipmcrypt-x.x.x.tar.gz
tar -xvfmcrypt-x.x.x.tar
./configure --disable-posix-threads
make
make install
cd to your PHP directory.
./configure -with-mcrypt=[dir] [--other-configuration-directives]
make
make install

當(dāng)然了,根據(jù)你的 要求和PHP安裝時(shí)與互聯(lián)網(wǎng)服務(wù)器軟件的關(guān)系,上面的過程可能需要作適當(dāng)?shù)男薷摹?


使用Mcrypt

Mcrypt的優(yōu)點(diǎn)不僅僅 在于其提供的加密算法較多,還在于它可以對數(shù)據(jù)進(jìn)行加/解密處理,此外,它還提供了35種處理數(shù)據(jù)用的函數(shù)。盡管對這些函數(shù)進(jìn)行詳細(xì)介紹 已經(jīng)超出了這篇文章的范圍,我還是要就幾個(gè)典型的函數(shù)作一下簡要的介紹。

首先,我將介紹如何使用Mcrypt擴(kuò)展庫對數(shù) 據(jù)進(jìn)行加密,然后再介紹如何使用它進(jìn)行解密。下面的代碼對這一過程進(jìn)行了演示,首先是對數(shù)據(jù)進(jìn)行加密,然后在瀏覽器上顯示加密后的數(shù) 據(jù),并將加密后的數(shù)據(jù)還原為原來的字符串,將它顯示在瀏覽器上。

使用Mcrypt對數(shù)據(jù)進(jìn)行加、解密


// Designate string to be encrypted
$string = "Applied Cryptography, by Bruce Schneier, is
a wonderful cryptography reference.";

// Encryption/decryption key
$key = "Four score and twenty years ago";

// Encryption Algorithm
$cipher_alg = MCRYPT_RIJNDAEL_128;

// Create the initialization vector for added security.
$iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg,
MCRYPT_MODE_ECB), MCRYPT_RAND);

// Output original string
print "Original string: $string
";

// Encrypt $string
$encrypted_string = mcrypt_encrypt($cipher_alg, $key,
$string, MCRYPT_MODE_CBC, $iv);

// Convert to hexadecimal and output to browser
print "Encrypted string: ".bin2hex($encrypted_string)."

";
$decrypted_string = mcrypt_decrypt($cipher_alg, $key,
$encrypted_string, MCRYPT_MODE_CBC, $iv);

print "Decrypted string: $decrypted_string";

?>

執(zhí)行上面的腳本將會產(chǎn)生下面的輸出:

Original string: Applied Cryptography, by Bruce Schneier, is a wonderful cryptography reference.

Encrypted string: 02a7c58b1ebd22a9523468694b091e60411cc4dea8652bb8072 34fa06bbfb20e71ecf525f29df58e28f3d9bf541f7ebcecf62b c89fde4d8e7ba1e6cc9ea24850478c11742f5cfa1d23fe22fe8 bfbab5e

Decrypted string: Applied Cryptography, by Bruce Schneier, is a wonderful cryptography reference.

上面的代碼中二個(gè)最典型的函數(shù)是mcrypt_encrypt()和 mcrypt_decrypt(),它們的用途是顯而易見的。我使用了“電報(bào)密碼本”模式,Mcrypt提供了幾種加密方式,由于每種加密方式都有可以影響 密碼安全的特定字符,因此每種模式都需要了解。對于沒有接觸過密碼系統(tǒng)的讀者來說,可能對mcrypt_create_iv()函數(shù)更有興趣,盡管對這 一函數(shù)進(jìn)行徹底的解釋已經(jīng)超出了本篇文章的范圍,但我仍然會提到它創(chuàng)建的初始化向量(hence, iv),這一向量可以使每條信息彼此獨(dú)立。 盡管不是所有的模式都需要這一初始化變量,但如果在要求的模式中沒有提供這一變量,PHP就會給出警告信息。


Mhash擴(kuò)展庫

http://sourceforge.net/projects/mhash/

0.8.3版的Mhash擴(kuò)展庫支持12種混編算法,仔細(xì)檢查Mhash v.0.8.3的頭文件mhash.h可以知道,它支持下面的混編算法:

CRC32 HAVAL160 MD5
CRC32B HAVAL192 RIPEMD160
GOST HAVAL224 SHA1
HAVAL128 HAVAL256 TIGER

安裝

象Mcrypt一 樣,Mhash也沒有包括在PHP軟件包中,對于非Windows用戶而言,下面是安裝過程:

下載Mhash擴(kuò)展庫
gunzipmhash-x.x.x.tar.gz
tar -xvfmhash-x.x.x.tar
./configure
make
make install
cd
./configure -with-mhash=[dir] [--other-configuration-directives]
make
make install
象Mcrypt一樣 ,根據(jù)PHP在互聯(lián)網(wǎng)服務(wù)器軟件上的安裝方式,可能需要對Mhash進(jìn)行其他的配置。

對于Windows用戶而言, http://www.php4win.de中有一個(gè)很好的包括Mhash擴(kuò)展庫在內(nèi)的PHP軟件包。只要下載并進(jìn)行解壓縮,然后根據(jù)其中的readme.first文檔中的指 令進(jìn)行安裝即可。


使用Mhash

對信息進(jìn)行混編非常簡單,看一下下面的例子:

$hash_alg = MHASH_TIGER;
$message = "These are the directions to the secret fort. Two steps left, three steps right, and cha chacha.";
$hashed_message = mhash($hash_alg, $message);
print "The hashed message is ". bin2hex($hashed_message);
?>

執(zhí)行這一段腳本程序?qū)⒌玫较旅娴妮敵鼋Y(jié)果:

The hashed message is 07a92a4db3a4177f19ec9034ae5400eb60d1a9fbb4ade461
在這里使用bin2hex()函數(shù)的目的是方便我們理解$hashed_message 的輸出,這是因?yàn)榛炀幍慕Y(jié)果是二進(jìn)制格式,為了能夠?qū)⑺D(zhuǎn)化為易于理解的格式,必須將它轉(zhuǎn)換為十六進(jìn)制格式。

需要 注意的是,混編是單向功能,其結(jié)果不依賴輸入,因此可以公開顯示這一信息。這一策略通常用于讓用戶比較下載文件和系統(tǒng)管理員提供的文 件,以確保文件的完整性。

Mhash還有其他一些有用的函數(shù)。例如,我需要輸出一個(gè)Mhash支持的算法的名字,由于 Mhash支持的所有算法的名字都以MHASH_開頭,因此,可以通過執(zhí)行如下的代碼完成這一任務(wù):

$hash_alg = MHASH_TIGER;
print "This data has been hashed with the".mhash_get_hash_name($hashed_message)."hashing algorithm.";
?>

得到的輸出是:

This data has been hashed with the TIGER hashing algorithm.
關(guān)于PHP和加密最后需要注意的一個(gè)問題
關(guān)于PHP和加密需要注意的最后的一個(gè)重要問題是在服務(wù)器和客戶端之間傳輸?shù)臄?shù)據(jù) 在傳輸過程中是不安全的!PHP是一種服務(wù)器端技術(shù),不能阻止數(shù)據(jù)在傳輸過程中泄密。因此,如果想實(shí)現(xiàn)一個(gè)完整的安全應(yīng)用,建議選用 Apache-SSL或其他的安全服務(wù)器布置。


結(jié)論

這篇文章介紹了PHP最有用的功能之一━━數(shù)據(jù)加密,不僅討論了PHP內(nèi)置 的crypt() 和md5()加密函數(shù),還討論了用于數(shù)據(jù)加密的功能強(qiáng)大的擴(kuò)展庫━━Mcrypt和Mhash。在這篇文章最后,我需要指出的是,一個(gè)真正 安全的PHP應(yīng)用還應(yīng)該包括安全的服務(wù)器,由于PHP是一種服務(wù)器端的技術(shù),因此,在數(shù)據(jù)由客戶端向服務(wù)器端進(jìn)行傳輸時(shí),它不能保證數(shù)據(jù)的安全。

來源: 瑞星

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 成人毛片100部免费看| 少妇高清精品毛片在线视频| 日本在线视频www| 免费毛片网站在线观看| 人妻无码一区二区三区四区| 国产精品久久成人免费观看| 亚洲免费成人在线视频| 手机免费av片| caoporm在线视频| 欧美日韩一级在线| 欧美狂野激情性xxxx在线观| 天堂8在线天堂资源bt| 搞av.com| 亚洲精品一二三四五区| 玖玖爱视频在线| 日韩av片免费观看| 99热这里只有精品免费| 国产高清av在线播放| av之家在线观看| 性chinese极品按摩| 欧美精品 - 色网| 日韩 欧美 视频| 欧美伦理片在线看| 五月天男人天堂| 无码人妻丰满熟妇区96| 成人性生交免费看| 免费高清一区二区三区| 能在线观看的av网站| 成人黄色一级大片| 国产中文字幕乱人伦在线观看| a在线视频观看| 亚洲天堂网站在线| 18禁网站免费无遮挡无码中文| 亚洲视频在线观看一区二区三区| www.五月天色| 国产第一页视频| av日韩在线看| 中文字幕第一页在线视频| 国产九九九九九| 日韩精品在线播放视频| 国产欧美高清在线| 欧美人成在线观看| 麻豆视频传媒入口| 在线免费观看视频黄| 亚洲国产精品无码观看久久| 人人爽人人爽av| 亚洲三级视频网站| 男人天堂网视频| 国产精品三级一区二区| 狠狠干狠狠操视频| 日韩欧美在线免费观看视频| 欧美乱大交xxxxx潮喷l头像| 免费久久久久久| 色婷婷综合网站| 亚洲成人福利在线观看| 干日本少妇首页| 精品少妇一区二区三区在线| 国产制服91一区二区三区制服| 污污的视频免费| 中日韩av在线播放| www.久久av.com| 中文字幕中文在线| 亚洲a级黄色片| 奇米视频888| 加勒比av中文字幕| 欧美精品 - 色网| 北条麻妃亚洲一区| 无套内谢丰满少妇中文字幕| 捷克做爰xxxⅹ性视频| 亚洲欧美手机在线| 成人手机在线播放| av中文字幕av| 大伊香蕉精品视频在线| 波多野结衣家庭教师在线播放| 国产九九九九九| 国产成人手机视频| 久久成年人网站| 警花观音坐莲激情销魂小说| 成人毛片100部免费看| 国产中文字幕二区| 人人爽人人av| 两性午夜免费视频| 国产美女主播在线| 午夜激情福利在线| 日本网站在线看| 欧美一级在线看| 色偷偷中文字幕| 国产成人在线免费看| 视色视频在线观看| 欧美中日韩在线| 美女一区二区三区视频| 天天操精品视频| 成人在线免费观看av| 中文av一区二区三区| 欧美亚洲黄色片| 九九热精品国产| heyzo亚洲| 黄色一级视频播放| 亚洲视频在线a| 国产一级爱c视频| 久久艹这里只有精品| 久久久久久久久久网| 在线a免费观看| 浓精h攵女乱爱av| 久久精品国产sm调教网站演员 | 少妇大叫太大太粗太爽了a片小说| 男人日女人视频网站| 久久久久久久久久一区二区| 欧美大片在线播放| 91xxx视频| 嫩草视频免费在线观看| 久久无码高潮喷水| 日b视频免费观看| 欧美视频亚洲图片| 男女视频在线看| 日本久久精品一区二区| 91免费黄视频| 成人av在线不卡| 午夜啪啪免费视频| 国产又粗又长又爽又黄的视频| 免费成人在线视频网站| www.av毛片| 欧美黄色免费网址| 国产精品av免费观看| 一级黄色片国产| 黄色一级片免费的| 九九热精品国产| 天天碰免费视频| 日韩爱爱小视频| 欧美特级aaa| 中文av字幕在线观看| 色戒在线免费观看| 999久久久精品视频| 小说区视频区图片区| 伊人五月天婷婷| 精品一区二区三区毛片| 国产精品视频一二三四区| 99中文字幕在线观看| 日本一级黄视频| 男人天堂手机在线视频| 成年人网站免费视频| 成人黄色片视频| 天天天干夜夜夜操| 高潮一区二区三区| 9191国产视频| 精品这里只有精品| 9久久婷婷国产综合精品性色| 超碰av在线免费观看| www.51色.com| 久久手机在线视频| 男人日女人bb视频| 在线观看免费av网址| 伊人网在线免费| 精品久久久久av| 日本特级黄色大片| 国产l精品国产亚洲区久久| 五月天av在线播放| 日b视频免费观看| 国产九九在线观看| 国产一区二区三区小说| 亚洲精品怡红院| 免费看毛片的网址| 91制片厂毛片| aa视频在线播放| 中日韩av在线播放| 国产 福利 在线| 国产成人免费高清视频| 免费午夜视频在线观看| 超碰免费在线公开| 欧美黄色性生活| 草b视频在线观看| 男女污污视频网站| 91香蕉视频污版| 日韩欧美国产综合在线| 午夜啪啪福利视频| 91热这里只有精品| 99久久国产综合精品五月天喷水| 午夜精品免费看| 国产v亚洲v天堂无码久久久| 国产精品自拍合集| 999热精品视频| 国产精品区在线| www黄色在线| 欧美成人xxxxx| 无码专区aaaaaa免费视频| 99精品视频网站| 黄色a级三级三级三级| 色七七在线观看| 黑鬼大战白妞高潮喷白浆| 2019日韩中文字幕mv| 成人短视频在线观看免费| 性鲍视频在线观看| 国产免费中文字幕| 五月激情五月婷婷| 中文字幕成人免费视频| 午夜免费福利视频在线观看| 五月天亚洲视频| 无尽裸体动漫2d在线观看| 污视频网站观看| 黄色三级视频在线播放|