亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Hash算法在數(shù)據(jù)庫安全中的應(yīng)用

        2012-04-29 00:44:03胡逸平王俊張龍劉洋徐敏王六平
        計(jì)算機(jī)時(shí)代 2012年4期
        關(guān)鍵詞:數(shù)據(jù)庫安全身份驗(yàn)證

        胡逸平 王俊 張龍 劉洋 徐敏 王六平

        摘要: 介紹了Hash算法在數(shù)據(jù)庫加密系統(tǒng)中的應(yīng)用,包括在用戶身份驗(yàn)證中的應(yīng)用,在數(shù)據(jù)庫完整性認(rèn)證中的應(yīng)用,以及在密文檢索中的應(yīng)用。

        關(guān)鍵詞: 數(shù)據(jù)庫安全; Hash算法; 身份驗(yàn)證; 數(shù)據(jù)庫完整性; 密文檢索

        中圖分類號(hào):TP309.2文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2012)04-06-03

        Application of Hash algorithm in database security

        Hu Yiping, Wang Jun, Zhang Long, Liu Yang, Xu Ming, Wang Liuping

        (Hu Nan Normal University, Changsha, Hunan 410081, China)

        Abstract: In this paper, the authors mainly consider the application of hash algorithm in database security, including the application of hash algorithm in identity authentication, database integrity checking, and encrypted data searching.

        Key words: database security; hash algorithm; identity authentication; database integrity checking; encrypted data searching

        0 引言

        計(jì)算機(jī)的產(chǎn)生逐漸將人類帶進(jìn)了信息化技術(shù)的時(shí)代,但是高風(fēng)險(xiǎn)性使得信息系統(tǒng)的安全性問題隨著信息化進(jìn)程而變得日益敏感和重要。作為信息系統(tǒng)的核心,數(shù)據(jù)庫安全問題一直是人們所關(guān)注的焦點(diǎn)。

        數(shù)據(jù)庫安全的威脅包括數(shù)據(jù)的泄密和非法修改,即對(duì)數(shù)據(jù)的三種屬性的破壞:可用性、保密性和完整性??捎眯允侵负戏ㄓ脩艨梢噪S時(shí)訪問他被授權(quán)的可以訪問的數(shù)據(jù),保密性是指數(shù)據(jù)信息不被泄密,完整性是指數(shù)據(jù)信息不被非法修改或破壞。

        為了保護(hù)數(shù)據(jù)庫中數(shù)據(jù)的安全性,目前大型數(shù)據(jù)庫管理系統(tǒng)(DBMS)都構(gòu)建了自身的安全機(jī)制。以Microsoft公司的SQL Server為例,SQL Server的安全機(jī)制可以劃分為四個(gè)等級(jí):客戶機(jī)操作系統(tǒng)登錄的安全性、SQL Server登錄的安全性、數(shù)據(jù)庫訪問的安全性、數(shù)據(jù)庫對(duì)象使用的安全性。SQL Server提供了授權(quán)機(jī)制、角色機(jī)制、視圖機(jī)制、審計(jì)機(jī)制以及數(shù)據(jù)加密等來實(shí)現(xiàn)上述安全機(jī)制。合理利用這些安全機(jī)制,能夠極大地增強(qiáng)數(shù)據(jù)庫系統(tǒng)的安全性。

        大多數(shù)數(shù)據(jù)庫管理系統(tǒng)都僅局限于訪問控制,然而,在眾多的安全機(jī)制中,數(shù)據(jù)加密才是保護(hù)敏感信息最為有效的手段。加密后的數(shù)據(jù)以密文的形式存儲(chǔ)在數(shù)據(jù)庫中,只有擁有解密密鑰的管理人員才能將其解密得到明文;對(duì)于攻擊者來說,即使他得到了數(shù)據(jù)庫的物理文件,也無法獲得其中敏感數(shù)據(jù)的明文信息。用于數(shù)據(jù)庫數(shù)據(jù)加密的各種加密算法,大都是經(jīng)過實(shí)踐檢驗(yàn)運(yùn)行良好的算法,具有很高的安全性,如果沒有解密密鑰,在現(xiàn)有的計(jì)算條件下,一般很難破解。

        基于數(shù)據(jù)加密的數(shù)據(jù)庫安全機(jī)制,可以采用兩級(jí)密鑰體系:一級(jí)是用于加密敏感信息的數(shù)據(jù)密鑰,另一級(jí)是用于加密數(shù)據(jù)密鑰的服務(wù)密鑰。加密時(shí),首先生成數(shù)據(jù)加密密鑰,并用數(shù)據(jù)密鑰加密敏感信息,然后用服務(wù)密鑰加密數(shù)據(jù)密鑰。解密時(shí),系統(tǒng)先用服務(wù)密鑰解密加密后的數(shù)據(jù)密鑰得到數(shù)據(jù)密鑰,再用數(shù)據(jù)密鑰解密敏感信息。由于對(duì)稱加密算法速度比非對(duì)象加密算法快,而非對(duì)稱加密算法比對(duì)稱加密算法安全,所以,加密敏感信息一般采用對(duì)稱加密算法,而加密數(shù)據(jù)密鑰一般采用非對(duì)稱加密算法,這樣敏感信息和數(shù)據(jù)密鑰都得到了有效的保護(hù),因而系統(tǒng)具有很高的安全性,同時(shí)又不會(huì)過于影響數(shù)據(jù)訪問效率。

        然而,無論機(jī)制設(shè)計(jì)如何精巧,并不能解決數(shù)據(jù)庫所有的安全問題。即使用于加密數(shù)據(jù)密鑰的服務(wù)密鑰可以寫入專用硬件,攻擊者還是有可乘之機(jī)。由于數(shù)據(jù)庫管理員在登錄系統(tǒng)時(shí)需要提供SQL Server賬戶和密碼,這就難以防止SQL Server注入攻擊。而一旦攻擊者登錄到數(shù)據(jù)庫,即使他不能獲得敏感信息的明文數(shù)據(jù),他還是可以對(duì)敏感信息進(jìn)行篡改,比如用一個(gè)加密的記錄值替換另外的加密值。而如果數(shù)據(jù)庫中數(shù)據(jù)極多,針對(duì)幾條記錄的篡改是很難以被發(fā)現(xiàn)的。除此之外,針對(duì)加密數(shù)據(jù)庫的數(shù)據(jù)檢索也是極其費(fèi)時(shí)的,這是數(shù)據(jù)庫加密系統(tǒng)需要解決的另一個(gè)問題。

        Hash算法是一種計(jì)算相對(duì)簡(jiǎn)單的單向函數(shù),其意義在于提供了一種快速存取數(shù)據(jù)的方法:它用一種算法建立了鍵值與真實(shí)值之間的對(duì)應(yīng)關(guān)系。Hash算法由于自身的具有優(yōu)良的特性,可以被用于用戶身份驗(yàn)證、數(shù)據(jù)庫完整性認(rèn)證以及數(shù)據(jù)檢索中,從而極大地提高原有系統(tǒng)的性能。

        1 Hash算法在用戶身份認(rèn)證中的應(yīng)用

        SQL Server提供了兩種類型的用戶管理方法:一是SQL Server身份驗(yàn)證模式,二是Windows識(shí)別模式。SQL Server身份驗(yàn)證模式是通過比較用戶傳入數(shù)據(jù)與存儲(chǔ)在SQL Server數(shù)據(jù)庫中的數(shù)據(jù)來實(shí)現(xiàn)的,這使得數(shù)據(jù)庫容易被下載或復(fù)制,也容易受到SQL注入攻擊。在Windows識(shí)別模式下用戶必須通過Windows用戶賬戶驗(yàn)證,然后才可以連接到SQL Server,這種模式雖然具有較高的安全性,卻不適用于大規(guī)模的網(wǎng)絡(luò)應(yīng)用環(huán)境中。

        在SQL Server身份驗(yàn)證模式下,數(shù)據(jù)庫中存儲(chǔ)的數(shù)據(jù)不是通常意義下的密碼,而是密碼經(jīng)過某種算法處理后的隨機(jī)值,當(dāng)用戶登錄系統(tǒng)時(shí),也用相同的算法計(jì)算隨機(jī)值,如果兩個(gè)值互相匹配,就可以訪問數(shù)據(jù)庫,這樣就可以防止SQL Server注入攻擊。而Hash算法具有不可逆性和唯一性的優(yōu)良特性,使得我們可以選擇一種安全的Hash算法來完成這個(gè)任務(wù)。

        SHA算法就是一種很好的Hash算法,它是由美國(guó)國(guó)家標(biāo)準(zhǔn)和技術(shù)協(xié)會(huì)(NIST)開發(fā),于1993年作為聯(lián)邦信息處理標(biāo)準(zhǔn)發(fā)表。對(duì)于長(zhǎng)度小于264位的消息,SHA會(huì)產(chǎn)生一個(gè)160位的消息摘要。當(dāng)接收到消息時(shí),這個(gè)消息摘要可以用來驗(yàn)證數(shù)據(jù)的完整性。在傳輸過程中,如果數(shù)據(jù)發(fā)生變化,那么就會(huì)產(chǎn)生不同的消息摘要。SHA具有如下特性:不能從消息摘要中復(fù)原信息;兩個(gè)不同的消息不會(huì)產(chǎn)生同樣的消息摘要。該算法經(jīng)過加密專家多年來的發(fā)展和改進(jìn)已日益完善,現(xiàn)在已成為世界公認(rèn)的最安全的哈希算法之一,并被廣泛使用。

        可以用SHA算法來對(duì)用戶密碼產(chǎn)生哈希值,并將這個(gè)值存儲(chǔ)在數(shù)據(jù)中。當(dāng)用戶登錄系統(tǒng)時(shí),也用SHA對(duì)密碼進(jìn)行處理,再將哈希值將數(shù)據(jù)庫中的值進(jìn)行匹配。為了防止攻擊者對(duì)密碼的哈希值進(jìn)行分析,我們還可以為每個(gè)密碼添加一個(gè)惟一的隨機(jī)值。用戶登錄系統(tǒng)時(shí),采用兩次SHA而不是一次SHA,第一次是用SHA將用戶輸入數(shù)據(jù)進(jìn)行哈希,第二次是將哈希值添加隨機(jī)值后再用SHA進(jìn)行哈希,最后再與數(shù)據(jù)庫中數(shù)據(jù)進(jìn)行匹配。而數(shù)據(jù)庫中數(shù)據(jù)也是用戶密碼經(jīng)過兩次哈希并添加隨機(jī)值后的值,這樣即使攻擊者得到了密碼數(shù)據(jù)庫,也無法還原密碼。

        2 Hash算法在數(shù)據(jù)庫完整性驗(yàn)證中的應(yīng)用

        如果攻擊者登錄到數(shù)據(jù)庫中,他就擁有對(duì)數(shù)據(jù)的權(quán)限。如果數(shù)據(jù)庫中的數(shù)據(jù)沒有進(jìn)行加密處理,攻擊者就能查看到所有的敏感信息,從而導(dǎo)致數(shù)據(jù)泄露。如果在加密數(shù)據(jù)庫系統(tǒng)中,此時(shí)攻擊者如果沒有解密密鑰就不能獲得敏感信息,從而不會(huì)導(dǎo)致數(shù)據(jù)泄露。但是如果攻擊者擁有對(duì)數(shù)據(jù)進(jìn)行修改的權(quán)限,攻擊者就可以對(duì)數(shù)據(jù)進(jìn)行篡改甚至替換某些記錄,這種行為無疑對(duì)數(shù)據(jù)庫的完整性造成了極大的破壞。在不知道數(shù)據(jù)庫被攻擊的情況下,數(shù)據(jù)庫的這種完整性破壞可能要經(jīng)過很長(zhǎng)時(shí)間才能被數(shù)據(jù)庫管理員發(fā)現(xiàn),或許也有可能直到數(shù)據(jù)庫被廢棄時(shí)也未被發(fā)現(xiàn)。通過審計(jì)機(jī)制我們或許可以發(fā)現(xiàn)一些端倪,可是如果攻擊者足夠聰明,即使我們能夠發(fā)現(xiàn)數(shù)據(jù)庫中數(shù)據(jù)被篡改,也無法定位到具體數(shù)據(jù)。為保證數(shù)據(jù)的完整性,研究人員提出了多種方案。2007年Chien-Yuan Chen等人提出了一種可保證數(shù)據(jù)庫完整性的加密方案[2],在他們的方案中使用隨機(jī)過濾器為每一條記錄生成一個(gè)認(rèn)證向量從而節(jié)省了認(rèn)證數(shù)據(jù)的存儲(chǔ)空間,在檢查完整性時(shí)只需通過若干次Hash操作,并且當(dāng)有數(shù)據(jù)被篡改后通過認(rèn)證向量也可檢查出被篡改的具體數(shù)據(jù)項(xiàng)。這種方案能夠有效地保護(hù)數(shù)據(jù)庫中數(shù)據(jù)的完整性。其中的Hash操作是一種被稱為Bloom Filter的技術(shù),因其空間高效性和隨機(jī)性在許多領(lǐng)域中都有其應(yīng)用。

        Bloom Filter 是由 Howard Bloom 在1970年提出的二進(jìn)制向量數(shù)據(jù)結(jié)構(gòu),它具有很好的空間和時(shí)間效率,被用來檢測(cè)一個(gè)元素是不是集合中的一個(gè)成員。這種檢測(cè)只會(huì)對(duì)在集合內(nèi)的數(shù)據(jù)錯(cuò)判,而不會(huì)對(duì)不是集合內(nèi)的數(shù)據(jù)進(jìn)行錯(cuò)判,這樣每個(gè)檢測(cè)請(qǐng)求返回有“在集合內(nèi)(可能錯(cuò)誤)”和“不在集合內(nèi)(絕對(duì)不在集合內(nèi))”兩種情況[1]。

        初始狀態(tài)時(shí),Bloom Filter是一個(gè)包含m位的位數(shù)組,每一位都置為0。

        為了表達(dá)S={x1, x2,…,xn}這樣一個(gè)n個(gè)元素的集合,Bloom Filter使用k個(gè)相互獨(dú)立的哈希函數(shù)(Hash Function),它們分別將集合中的每個(gè)元素映射到{1,…,m}的范圍中。對(duì)任意一個(gè)元素x,第i個(gè)哈希函數(shù)映射的位置hi(x)就會(huì)被置為1(1≤i≤k)。如果一個(gè)位置多次被置為1,那么只有第一次會(huì)起作用,后面幾次將沒有任何效果。

        在判斷y是否屬于這個(gè)集合時(shí),我們對(duì)y應(yīng)用k次哈希函數(shù),如果所有hi(y)的位置都是1(1≤i≤k),那么我們就認(rèn)為y是集合中的元素,否則就認(rèn)為y不是集合中的元素。圖1中k=3,y1就不是集合中的元素。y2或者屬于這個(gè)集合,或者剛好是一個(gè)False positive。

        圖1

        假設(shè)kn

        其中1/m表示任意一個(gè)哈希函數(shù)選中這一位的概率(前提是哈希函數(shù)是完全隨機(jī)的),(1-1/m)表示哈希一次沒有選中這一位的概率。要把S完全映射到位數(shù)組中,需要做kn次哈希。某一位還是0意味著kn次哈希都沒有選中它,因此這個(gè)概率就是(1-1/m)的kn次方。在實(shí)際應(yīng)用中,可由集合元素和所期望的誤報(bào)率來選擇合適的Bloom Filter。

        基于Bloom Filter的數(shù)據(jù)庫加密數(shù)據(jù)庫認(rèn)證方案是為每條記錄都引入一個(gè)Bloom Filter向量,加密時(shí)對(duì)每條記錄的每個(gè)敏感字段都將其明文數(shù)據(jù)與數(shù)據(jù)字段密鑰的“異或”值用一組相互獨(dú)立的Hash函數(shù)映射到Bloom Filter向量中,并用一個(gè)計(jì)數(shù)器向量記錄Bloom Filter向量中每一位被映射的次數(shù)。完成映射后再用數(shù)據(jù)字段密鑰將明文數(shù)據(jù)加密后存入數(shù)據(jù)庫中,當(dāng)整條記錄被處理完畢后將這條記錄的Bloom Filter向量存入數(shù)據(jù)庫中,這樣Bloom Filter就記錄了一條記錄中每個(gè)敏感字段的信息。在對(duì)密文數(shù)據(jù)庫進(jìn)行查詢或更新時(shí),也是先將輸入數(shù)據(jù)的每個(gè)敏感字段數(shù)據(jù)值與數(shù)據(jù)字段密鑰進(jìn)行“異或,”再將“異或”值用相同的一組Hash函數(shù)映射到一個(gè)向量中,當(dāng)所有數(shù)據(jù)都處理完畢后再將新生成的向量與存儲(chǔ)在數(shù)據(jù)庫中的向量相“與”,如果結(jié)果與新生成的向量相同,則再將要查詢的數(shù)據(jù)加密與存儲(chǔ)在數(shù)據(jù)庫中的加密數(shù)據(jù)相匹配,如果相同再對(duì)數(shù)據(jù)庫中的記錄進(jìn)行解密。如果數(shù)據(jù)庫中數(shù)據(jù)被篡改或是替換了,則兩個(gè)向量的相“與”值與新生成的向量必不相等。而且由于Bloom Filter向量記錄了每條記錄中每個(gè)敏感字段的信息,在數(shù)據(jù)被篡改或替換的情況下,我們還可以精確定位到每個(gè)數(shù)據(jù)字段值。

        3 Hash算法在數(shù)據(jù)庫檢索中的應(yīng)用

        SQL Server提供了數(shù)據(jù)加密功能,然而數(shù)據(jù)加密功能并非免費(fèi)的午餐,若需要使用數(shù)據(jù)加密功能,就一定要為之付出代價(jià)—典型的代價(jià)就是數(shù)據(jù)庫讀寫性能下降。不同的加密方法在不同情況下對(duì)性能的影響各不相同。對(duì)稱加密算法性能要遠(yuǎn)遠(yuǎn)高于非對(duì)稱加密算法。非對(duì)稱加密的加密效果要高于對(duì)稱加密,但是加密性能上的代價(jià)也必須考慮。所有類型的加密都是非確定性的,所以在對(duì)已經(jīng)實(shí)現(xiàn)索引的數(shù)據(jù)進(jìn)行搜索或者過濾時(shí),索引的作用也不能很好地發(fā)揮。如果搜索、聯(lián)結(jié)、或者分組操作是基于被加密數(shù)據(jù)的,那么即使使用性能較好的對(duì)稱加密也會(huì)影響到數(shù)據(jù)庫的可擴(kuò)展性。

        當(dāng)然,加密并非一無是處,如果對(duì)敏感數(shù)據(jù)進(jìn)行安全確定的哈希,那么就能夠同時(shí)兼顧數(shù)據(jù)庫中數(shù)據(jù)安全性和系統(tǒng)可擴(kuò)展性?;谛畔Ⅱ?yàn)證碼(message authentication code,MAC)的搜索鍵可以充分發(fā)揮索引的作用,從而達(dá)到最佳的性能。

        MAC是敏感數(shù)據(jù)與一個(gè)隱秘?cái)?shù)值相結(jié)合之后的哈希值。這是一種使用了安全加密鹽的哈希算法,可以防止字典攻擊。MAC作為加密數(shù)據(jù)的一個(gè)安全的、確定性的表示值,可以與加密數(shù)據(jù)保存到同一個(gè)表中,所有的搜索操作都是針對(duì)MAC列進(jìn)行的。

        為了實(shí)現(xiàn)MAC方案,首先要把一個(gè)隱秘的數(shù)據(jù)進(jìn)行加密并存入數(shù)據(jù)庫中,把它作為加密鹽,然后把該加密鹽解密后與數(shù)據(jù)連接起來。使用加密鹽改變了數(shù)據(jù)的哈希值,可以使字典攻擊幾乎完全失效。最后要把連接后的結(jié)果傳入一個(gè)安全的Hash函數(shù),生成一個(gè)MAC。當(dāng)把加密后的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫中時(shí),同時(shí)也要將MAC進(jìn)行保存。

        檢索數(shù)據(jù)時(shí),我們首先將加密鹽解密,然后把該加密鹽與輸入數(shù)據(jù)連接起來,再把連接后的結(jié)果傳入Hash函數(shù)生成一個(gè)新的MAC,隨后用數(shù)據(jù)庫中MAC列中的數(shù)據(jù)與新的MAC進(jìn)行比較,最后再將匹配的結(jié)果記錄解密。由于MAC列以明文形式存儲(chǔ)在數(shù)據(jù)庫中,故而可以對(duì)其建立索引。而我們?cè)谶M(jìn)行檢索數(shù)據(jù)時(shí),都是針對(duì)MAC進(jìn)行檢索,并不直接針對(duì)加密數(shù)據(jù),因此可以達(dá)到最佳的性能。

        4 結(jié)束語

        數(shù)據(jù)庫中數(shù)據(jù)的可用性、保密性和完整性是數(shù)據(jù)庫安全性的主要方面。數(shù)據(jù)加密是保護(hù)敏感數(shù)據(jù)最有效的手段。Hash算法由于其不可逆性、惟一性以及其高效的性能,在加密數(shù)據(jù)庫系統(tǒng)中得到了廣泛的應(yīng)用。Hash算法在用戶身份認(rèn)證、數(shù)據(jù)庫數(shù)據(jù)完整性認(rèn)證以及密文數(shù)據(jù)檢索中具有極其重要的價(jià)值。合理利用Hash算法,能夠顯著提高加密數(shù)據(jù)庫的安全性和可擴(kuò)展性。

        參考文獻(xiàn):

        [1] 任洪慶,盧建朱,許嬌陽. 基于 Bloom Filter 的加密數(shù)據(jù)庫字段認(rèn)證方案[J].計(jì)算機(jī)工程與設(shè)計(jì),2011.32:818~821

        [2] Chen Chien-Yuan,Ku Cheng-Yuan,David C Yen.Cryptographic relational algebra for databases using the field authenticator[J].Computers & Mathematics with Applications,2007.54(1):38~44

        [3] 楊昱昺.一種通用數(shù)據(jù)庫數(shù)據(jù)加密方案[J].計(jì)算機(jī)安全,2009.7:72~74

        [4] 鐘阿林,許方恒.數(shù)據(jù)庫加密新技術(shù)的研究[J].河南師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2007.4:51~53

        [5] 徐立新,何敏,狄文輝.同時(shí)保護(hù)數(shù)據(jù)庫數(shù)據(jù)保密性和完整性的方法[J].計(jì)算機(jī)工程,2007.33(10):179~180

        猜你喜歡
        數(shù)據(jù)庫安全身份驗(yàn)證
        管理信息系統(tǒng)中數(shù)據(jù)庫安全實(shí)現(xiàn)方法
        活力(2019年21期)2019-04-01 12:16:50
        HID Global收購(gòu)Arjo Systems擴(kuò)大政府身份驗(yàn)證業(yè)務(wù)
        淺談高速公路數(shù)據(jù)庫安全審計(jì)
        人臉識(shí)別身份驗(yàn)證系統(tǒng)在養(yǎng)老保險(xiǎn)生存核查中的應(yīng)用
        高職院校計(jì)算機(jī)網(wǎng)絡(luò)安全研究與分析
        基于改進(jìn)PSO的SVM算法在數(shù)據(jù)庫入侵檢測(cè)中的應(yīng)用研究
        更安全的雙重密碼保護(hù)
        CHIP新電腦(2015年3期)2015-04-02 17:55:46
        高校數(shù)據(jù)庫安全技術(shù)教學(xué)實(shí)踐探索
        Endogenous neurotrophin-3 promotes neuronal sprouting from dorsal root ganglia
        身份驗(yàn)證中基于主動(dòng)外觀模型的手形匹配
        免费看国产成年无码av| 中文字幕高清无码不卡在线| 在线观看极品裸体淫片av| 国产成人AV乱码免费观看| 日本特殊按摩在线观看| 偷拍色图一区二区三区| 国产成人精品一区二区三区| 日韩aⅴ人妻无码一区二区| 久久www免费人成—看片| 精品无码久久久久成人漫画| 无码日韩人妻AV一区免费| 亚洲欧洲一区二区三区波多野| 亚洲中文字幕无码不卡电影| 日韩精品自拍一区二区| 女同精品一区二区久久| 啦啦啦www在线观看免费视频| 人妻精品无码一区二区三区| 国产精品18久久久久久不卡中国| 国产一区二区在线观看视频免费| 国产网友自拍视频在线观看| 国内揄拍国内精品人妻久久| 久久久久久九九99精品| 欧美日韩一区二区综合| 中文字幕精品久久天堂一区 | 久久久人妻丰满熟妇av蜜臀| 蜜臀av一区二区三区免费观看| 久久久久av无码免费网| 国产极品久久久久极品| 国产精品亚洲一区二区极品| 亚洲午夜精品国产一区二区三区| 成人影院在线观看视频免费 | 97久久久久人妻精品专区| 亚洲av毛片成人精品| 亚洲一区亚洲二区视频在线| 久久99热国产精品综合| 精品人妻中文无码av在线| 日日摸日日碰人妻无码老牲| 国产精品av免费网站| 91精品国产九色综合久久香蕉| 国产熟女一区二区三区不卡| 国模无码一区二区三区|