• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    面向去中心化存儲的數(shù)據(jù)流行度去重模型

    2024-06-01 18:11:28汪彩梅聞琪略周子健盧建豪張琛吳志澤
    計算機(jī)應(yīng)用研究 2024年5期

    汪彩梅 聞琪略 周子健 盧建豪 張琛 吳志澤

    摘 要:數(shù)據(jù)流行度去重方案中存在檢測機(jī)構(gòu)不誠實(shí)、數(shù)據(jù)存儲不可靠等問題,提出一種面向去中心化存儲的數(shù)據(jù)流行度去重模型。針對檢測機(jī)構(gòu)不誠實(shí),模型結(jié)合區(qū)塊鏈的不可竄改性與智能合約的不可抵賴性,將智能合約作為檢測機(jī)構(gòu)執(zhí)行數(shù)據(jù)的重復(fù)性檢測和流行度檢測,保障了檢測結(jié)果的真實(shí)性。針對數(shù)據(jù)存儲不可靠問題,提出一種文件鏈存儲結(jié)構(gòu)。該結(jié)構(gòu)滿足數(shù)據(jù)流行度去重的要求,并通過添加輔助信息的方式,建立分布在不同存儲節(jié)點(diǎn)中實(shí)現(xiàn)物理/邏輯上傳的分片之間的邏輯關(guān)系,為流行度數(shù)據(jù)去中心化網(wǎng)絡(luò)存儲提供基礎(chǔ);同時,在數(shù)據(jù)塊信息中添加備份標(biāo)識,借助備份標(biāo)識將存儲網(wǎng)絡(luò)劃分為兩個虛擬存儲空間,分別實(shí)現(xiàn)數(shù)據(jù)和備份數(shù)據(jù)的檢測與存儲,滿足了用戶備份需求。安全性分析和性能分析表明,該方案具有可行性,保障了檢測結(jié)果的真實(shí)性,并提高了數(shù)據(jù)存儲的可靠性。

    關(guān)鍵詞:數(shù)據(jù)去重; 數(shù)據(jù)流行度; 去中心化; 區(qū)塊鏈; 存儲可靠性

    中圖分類號:TP309 文獻(xiàn)標(biāo)志碼:A?文章編號:1001-3695(2024)05-038-1544-10

    doi:10.19734/j.issn.1001-3695.2023.07.0381

    Data popularity deduplication model for decentralized storage

    Abstract:There are issues such as dishonest checking organizations and unreliable data storage in a deduplication scheme based on data popularity. This paper proposed a data popularity deduplication model for decentralized storage. To address the dishonesty of the checking agency, the model executed duplication checking and popularity checking of data by using smart contracts as the checking organization, which combined the non-tamper-ability of blockchain with the non-repudiation of smart contracts. It guaranteed the authenticity of the test results. To address the problem of unreliable data storage,it proposed a file chain storage structure. This structure satisfied the requirement of data popularity deduplication. Meanwhile, this structure established the logical relationship between the fragments which were distributed in different storage nodes to achieve physical/logical uploads by adding auxiliary information. The file chain storage structure provided the basis for popularity data in decentralized network storage. Besides,it added backup identifiers to the data block information, and divided the storage network into two virtual storage spaces with the help of the backup identifiers. Also, two virtual storage spaces were oriented for data detection and storage. It satisfied the users backup needs. Security analysis and performance analysis show that the scheme is feasible, guarantees the authenticity of the test results, and improves the reliability of data storage.

    Key words:deduplication; data popularity; decentralized; blockchain; storage reliability

    0 引言

    隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,數(shù)據(jù)呈爆炸式增長,使得越來越多的用戶將數(shù)據(jù)外包給云服務(wù)提供商(cloud service provider,CSP)進(jìn)行存儲。數(shù)據(jù)外包至CSP有效緩解了本地存儲空間的壓力,但對CSP的存儲空間和傳輸帶寬造成了巨大壓力。為降低CSP的存儲成本并提高其存儲能力,數(shù)據(jù)去重技術(shù)應(yīng)運(yùn)而生。

    數(shù)據(jù)去重是一種高效的數(shù)據(jù)縮減技術(shù),旨在檢測并消除數(shù)據(jù)集合中的重復(fù)數(shù)據(jù),以此降低對存儲空間的需求[1,2]。重復(fù)數(shù)據(jù)包括明文和密文兩種形式。若需檢測明文是否重復(fù),可直接比較明文的內(nèi)容是否相同。檢測密文是否重復(fù),需先將密文解密至明文,再比較明文是否相同。由于檢測機(jī)構(gòu)無法獲取用戶解密密鑰,故無法將密文恢復(fù)至原始的明文,阻礙了重復(fù)密文數(shù)據(jù)的檢測。因此,最初的數(shù)據(jù)去重僅能實(shí)現(xiàn)對明文的去重[3]。

    為實(shí)現(xiàn)密文去重,Douceur等人[4]提出了收斂加密(convergent encryption,CE)。CE利用哈希函數(shù)的單向特性與唯一性,可從相同數(shù)據(jù)中提取出相同密鑰,并對相同數(shù)據(jù)采用相同密鑰加密。因此,CE可為相同數(shù)據(jù)生成相同密文,實(shí)現(xiàn)無須解密密文的重復(fù)性檢測。

    然而,采用CE的數(shù)據(jù)去重方案不具有語義安全性[3]。語義安全性要求攻擊者無法從密文推導(dǎo)出明文。若數(shù)據(jù)采用CE進(jìn)行加密,攻擊者往往可以通過窮舉收斂加密有限的明文空間,并將密文與截獲的密文相匹配,可逆推得到對應(yīng)的明文信息[5]。然而,如果采用具有語義安全性的加密方式加密所有的數(shù)據(jù),由于采用不同密鑰加密相同數(shù)據(jù)生成不同密文,又再次使得密文數(shù)據(jù)去重不可執(zhí)行。

    因此,實(shí)現(xiàn)密文數(shù)據(jù)去重的同時提供語義安全性,是數(shù)據(jù)去重的一個挑戰(zhàn)。針對此挑戰(zhàn),一些學(xué)者圍繞數(shù)據(jù)流行度去重方案(deduplication scheme based on data popularity,DBDP)展開研究[5~11]。DBDP[6,7]根據(jù)數(shù)據(jù)流行度不同提供不同的安全級別,數(shù)據(jù)流行度可通過擁有數(shù)據(jù)的用戶數(shù)目進(jìn)行衡量。DBDP設(shè)置流行度閾值,當(dāng)擁有數(shù)據(jù)的用戶數(shù)目小于閾值時,數(shù)據(jù)為非流行數(shù)據(jù),并采用具有語義安全的加密方式。反之,數(shù)據(jù)為流行數(shù)據(jù),并采用收斂加密,執(zhí)行數(shù)據(jù)去重。

    然而,DBDP中采用可信第三方服務(wù)器(third-party provider,TTP)作為檢測機(jī)構(gòu)。TTP需負(fù)責(zé)記錄上傳擁有數(shù)據(jù)的用戶數(shù)目,并檢測數(shù)據(jù)的存儲情況以及流行度,故DBDP對第三方可信程度要求較高[8,9]。但可信度的第三方在實(shí)際中極難部署。

    為降低對第三方的安全需求,Ha等人[10]將重復(fù)性檢測信息采用同態(tài)加密并存儲在TTP中。雖然該方式降低了對第三方的安全需求,但無法解決第三方服務(wù)器單點(diǎn)故障問題。為此,哈冠雄等人[11]提出無須第三方服務(wù)器的DBDP,在不需要部署任何第三方服務(wù)器的情況下實(shí)現(xiàn)對數(shù)據(jù)流行度的精確統(tǒng)計,但要求CSP完全可信。而在數(shù)據(jù)流行度去重方案中,如果作為檢測機(jī)構(gòu)的CSP或TTP不可信,數(shù)據(jù)檢測結(jié)果的真實(shí)性難以保障,導(dǎo)致數(shù)據(jù)加密方式與流行度不匹配的問題,使得非流行數(shù)據(jù)安全性下降。

    此外,文獻(xiàn)[5,6]僅實(shí)現(xiàn)了流行數(shù)據(jù)的去重,對于非流行數(shù)據(jù)仍保留多份數(shù)據(jù)副本。為降低數(shù)據(jù)的冗余,高文靜等人[8,9]提出雙層加密的方式,對非流行數(shù)據(jù)先采用收斂加密,實(shí)現(xiàn)數(shù)據(jù)去重,再采用語義安全性的加密方式以保護(hù)數(shù)據(jù)機(jī)密性,達(dá)到在CSP中仍僅保留一個副本的效果。

    盡管數(shù)據(jù)去重模型中通常為降低冗余,要求CSP中僅保留一個副本[12,13],但CSP中僅保留一個副本會對DBDP中數(shù)據(jù)存儲的可靠性產(chǎn)生影響,具體體現(xiàn)在兩點(diǎn):

    a)DBDP主要面向集中式存儲[14,15],將文件存儲在中心存儲服務(wù)器上,一旦中心存儲服務(wù)器發(fā)生故障,大部分文件會損壞或者丟失。當(dāng)唯一副本丟失時,擁有相同副本的所有用戶都會丟失原有數(shù)據(jù)[16]。

    b)當(dāng)用戶實(shí)際使用云存儲服務(wù),希望對同一數(shù)據(jù)進(jìn)行備份以保障數(shù)據(jù)的完整性與可用性[17,18]時,這與數(shù)據(jù)去重思想相沖突,CSP會忽視用戶備份需求,從而無法實(shí)現(xiàn)備份操作。

    綜上所述,本文提出了一種面向去中心化存儲下的流行度數(shù)據(jù)去重模型,主要貢獻(xiàn)如下:

    a)結(jié)合區(qū)塊鏈的不可竄改性與智能合約的不可抵賴性,提出一種基于區(qū)塊鏈的分片檢測方案。該方案核心思想是利用區(qū)塊鏈存儲分片的存儲情況、流行度等信息,實(shí)現(xiàn)數(shù)據(jù)的不可竄改。同時,方案引入智能合約作為檢測機(jī)構(gòu),執(zhí)行分片的重復(fù)性檢測和流行度檢測,并返回檢測結(jié)果。方案可以保障重復(fù)性和流行度檢測結(jié)果的真實(shí)性,從而解決數(shù)據(jù)的加密方式與流行度不匹配問題。

    b)提出一種文件鏈存儲結(jié)構(gòu)(file chain storage structure,F(xiàn)CSS)。結(jié)構(gòu)中僅為物理上傳的分片存儲完整數(shù)據(jù),為邏輯上傳的分片存儲地址, 并為數(shù)據(jù)提供相匹配流行度的加密方式,滿足數(shù)據(jù)流行度去重的要求。同時,通過添加輔助信息的方式,建立分布存儲在不同存儲節(jié)點(diǎn)中物理/邏輯上傳的分片之間的邏輯關(guān)系。FCSS為數(shù)據(jù)流行度去重模型應(yīng)用在去中心化存儲網(wǎng)絡(luò)中提供基礎(chǔ)。

    c)在數(shù)據(jù)塊信息中添加備份標(biāo)識,借助備份標(biāo)識將存儲網(wǎng)絡(luò)劃分為兩個虛擬存儲空間,分別存儲常規(guī)上傳和備份上傳的數(shù)據(jù)。面向兩個虛擬存儲空間,實(shí)現(xiàn)數(shù)據(jù)和備份數(shù)據(jù)的差異性檢測與存儲。該方案在數(shù)據(jù)去重模型中滿足了用戶備份需求。

    1 預(yù)備知識

    1.1 收斂加密

    在傳統(tǒng)數(shù)據(jù)加密方式中,持有相同數(shù)據(jù)的用戶會采用不同密鑰對數(shù)據(jù)進(jìn)行加密,使得相同數(shù)據(jù)會對應(yīng)不同密文。因此,當(dāng)數(shù)據(jù)以密文形式存儲時,傳統(tǒng)數(shù)據(jù)加密方式會阻礙相同數(shù)據(jù)的檢測。收斂加密(CE)[4]是一種可以實(shí)現(xiàn)密文檢測的加密方式。CE利用哈希函數(shù)的單向特性與唯一性,從數(shù)據(jù)中提取出唯一的數(shù)據(jù)指紋,并將其作為加解密密鑰。因此,CE保障了數(shù)據(jù)明文與密文具有唯一映射關(guān)系,有助于實(shí)現(xiàn)密文的重復(fù)性檢測。收斂加密主要由四個算法組成,分別是:

    a)KeyGenCE (M)→CEKey:密鑰生成算法。輸入明文數(shù)據(jù)M,輸出收斂密鑰CEKey。

    b)encrypt(CEKey,M)→C:加密算法。輸入收斂密鑰CEKey和明文數(shù)據(jù)M,輸出數(shù)據(jù)密文C。

    c)TagGen(C)→Tag:標(biāo)簽生成算法。輸入密文數(shù)據(jù)C,輸出數(shù)據(jù)標(biāo)簽Tag。

    d)decrypt(CEKey,C)→M:解密算法。輸入收斂密鑰CEKey和密文數(shù)據(jù)C,輸出明文數(shù)據(jù)M。

    1.2 數(shù)據(jù)去重技術(shù)

    數(shù)據(jù)去重技術(shù)[1,2]是一種高效的數(shù)據(jù)縮減技術(shù),能夠檢測并消除存儲系統(tǒng)中的重復(fù)數(shù)據(jù),以節(jié)省傳輸帶寬和存儲空間。經(jīng)典的數(shù)據(jù)去重模型如圖1所示,共包含用戶、檢測機(jī)構(gòu)、CSP三個實(shí)體。圖1中,用戶A和B上傳數(shù)據(jù)前,都會向檢測機(jī)構(gòu)請求檢測數(shù)據(jù)的存儲情況。由于檢測機(jī)構(gòu)檢測出的數(shù)據(jù)未存儲,故用戶A為首次上傳用戶,會將完整的數(shù)據(jù)上傳存儲至CSP中,即物理上傳。由于檢測機(jī)構(gòu)檢測出數(shù)據(jù)已存儲,故用戶B為后續(xù)上傳用戶,會收到檢測機(jī)構(gòu)已有上傳記錄的檢測結(jié)果和數(shù)據(jù)存儲地址,不進(jìn)行實(shí)際數(shù)據(jù)傳輸,即邏輯上傳。

    然而,在大多數(shù)據(jù)去重模型[3]中,通常對所有數(shù)據(jù)僅采用不具有語義安全的收斂加密。為實(shí)現(xiàn)數(shù)據(jù)去重的同時保障語義安全性,Stanek等人[6]提出一種數(shù)據(jù)流行度去重方案。該方案會為數(shù)據(jù)分配一個流行度閾值T并存儲在檢測機(jī)構(gòu)中,檢測機(jī)構(gòu)執(zhí)行重復(fù)性檢測和流行度檢測兩個任務(wù)。檢測機(jī)構(gòu)會記錄數(shù)據(jù)被不同用戶上傳的數(shù)目count。執(zhí)行流行度檢測功能時,檢測機(jī)構(gòu)會將count與T進(jìn)行比較。當(dāng)count

    1.3 區(qū)塊鏈與智能合約

    區(qū)塊鏈[19]是一種分布式賬本技術(shù),具有不可竄改性。區(qū)塊鏈通常將所有的信息以區(qū)塊為單位集中存儲在一條鏈上,通過在后一個區(qū)塊中添加前一個區(qū)塊哈希值,實(shí)現(xiàn)區(qū)塊之間的關(guān)聯(lián),從而保證了數(shù)據(jù)不可竄改性。

    智能合約是一種旨在以信息化傳播、驗(yàn)證或執(zhí)行合同的計算機(jī)協(xié)議,具有自動驗(yàn)證性和不可抵賴性。一旦智能合約被部署在區(qū)塊鏈上,即可實(shí)現(xiàn)流程的自動控制。同時,智能合約內(nèi)容將無法被任何合約參與者竄改,這使得智能合約在要求無可信第三方的場景得到了廣泛應(yīng)用[20]。如,文獻(xiàn)[21]為解決第三方密鑰管理服務(wù)器不可信時,可能會紕漏數(shù)據(jù)的問題,采用秘密共享方案將密鑰劃分為多個部分,分布存儲在區(qū)塊鏈上,使其只有有訪問權(quán)限的用戶才可以訪問。文獻(xiàn)[22]為解決半誠實(shí)的云服務(wù)器帶來的安全問題,結(jié)合區(qū)塊鏈技術(shù)為公平搜索提供保障,并實(shí)現(xiàn)密文數(shù)據(jù)的分布式存儲,規(guī)避了傳統(tǒng)半誠實(shí)云服務(wù)器中的高信任、低可靠缺陷。

    2 系統(tǒng)模型

    2.1 系統(tǒng)模型

    面向去中心化存儲的流行度數(shù)據(jù)去重模型如圖2所示,系統(tǒng)實(shí)體包括去中心化存儲網(wǎng)絡(luò)(decentralized storage network,DSN)、當(dāng)前用戶(current user,CU)、首次用戶(first user,F(xiàn)U)、區(qū)塊鏈(blockchain,BC)。

    a)去中心化存儲網(wǎng)絡(luò)(DSN)。DSN中包含大量的存儲節(jié)點(diǎn),主要功能是向用戶提供存儲服務(wù)。與以往DBDP的存儲網(wǎng)絡(luò)不同,文件會進(jìn)行分片,并構(gòu)造成文件鏈結(jié)構(gòu),存儲在不同的存儲節(jié)點(diǎn)中,以提高數(shù)據(jù)存儲可靠性。與傳統(tǒng)去中心化存儲網(wǎng)絡(luò)不同的是,本文DSN中僅存儲了少量重復(fù)副本,提高了存儲能力。

    b)當(dāng)前用戶(CU)。CU指本次希望將文件上傳至DSN中,并會在需要時進(jìn)行下載的用戶。CU外包數(shù)據(jù)至CSP之前,會先將文件構(gòu)建成文件鏈。文件鏈可以滿足數(shù)據(jù)流行度去重以及去中心化存儲網(wǎng)絡(luò)存儲的需求。

    c)首次用戶(FU)。FU指首次將數(shù)據(jù)上傳至DSN的用戶。若CU上傳的數(shù)據(jù)是首次上傳至DSN,則CU也是FU,完成數(shù)據(jù)的物理上傳。

    d)區(qū)塊鏈(BC)。BC的主要功能是存儲數(shù)據(jù)的信息、部署并維護(hù)智能合約等。部署在BC上的智能合約承擔(dān)著數(shù)據(jù)去重模型中檢測機(jī)構(gòu)的角色,執(zhí)行數(shù)據(jù)的重復(fù)性檢測和流行度檢測。

    2.2 威脅模型

    本文方案主要考慮以下兩類攻擊者:

    a)內(nèi)部敵手。指去重模型內(nèi)部的敵手,主要指檢測機(jī)構(gòu)和存儲網(wǎng)絡(luò)。檢測機(jī)構(gòu)是不完全可信的,它可能會告知用戶數(shù)據(jù)錯誤的流行度,誘使用戶對數(shù)據(jù)采用流行度不匹配的加密方式,從而導(dǎo)致非流行數(shù)據(jù)不具有語義安全性。此外,現(xiàn)有去重模型中主要面向集中式存儲,將文件存儲在中心存儲服務(wù)器中。集中式存儲存在單點(diǎn)故障的風(fēng)險,并且本文認(rèn)為存儲網(wǎng)絡(luò)中的存儲節(jié)點(diǎn)是誠實(shí)且好奇的,可對用戶外包數(shù)據(jù)進(jìn)行任意訪問。同時,傳統(tǒng)的數(shù)據(jù)去重模型要求僅保留一份數(shù)據(jù)副本,故當(dāng)用戶通過備份方式提高數(shù)據(jù)可靠性時,去重模型會對備份文件執(zhí)行去重操作,無法實(shí)現(xiàn)備份。

    b)外部敵手。指去重模型外部的敵手,主要指惡意用戶。外部攻擊者可以通過某種攻擊手段獲取部分用戶上傳的數(shù)據(jù),并嘗試破解密文數(shù)據(jù)的明文信息。此外,外部攻擊者還可以攻擊存儲節(jié)點(diǎn),從而導(dǎo)致存儲節(jié)點(diǎn)中的部分?jǐn)?shù)據(jù)損壞或者丟失。然而,傳統(tǒng)的數(shù)據(jù)去重模型中要求存儲系統(tǒng)僅保留一份數(shù)據(jù)副本,故當(dāng)一份數(shù)據(jù)副本丟失時,所有擁有該數(shù)據(jù)的用戶都會丟失自己的數(shù)據(jù)。

    2.3 安全目標(biāo)

    本文方案主要有四個安全目標(biāo):

    a)數(shù)據(jù)隱私性。本文模型要求存儲網(wǎng)絡(luò)中存儲節(jié)點(diǎn)和惡意敵手無法獲取用戶外包數(shù)據(jù),即用戶外包數(shù)據(jù)應(yīng)以密文的形式存儲在存儲網(wǎng)絡(luò)中。同時,非流行數(shù)據(jù)應(yīng)持有語義安全性,故數(shù)據(jù)去重模型中需保障檢測機(jī)構(gòu)檢測結(jié)果的真實(shí)性,從而使數(shù)據(jù)的加密方式與其流行度相匹配。由于區(qū)塊鏈具有不可竄改性,智能合約具有不可抵賴性,故可使得區(qū)塊鏈和智能合約在無可信第三方的場景中得到應(yīng)用。因此,本文將智能合約作為數(shù)據(jù)去重模型中的檢測機(jī)構(gòu)。

    b)數(shù)據(jù)存儲可靠性。去中心化存儲網(wǎng)絡(luò)不依賴任何中心存儲服務(wù)器,并將數(shù)據(jù)分散存儲在多個存儲節(jié)點(diǎn)中,故可以有效緩解中心化存儲網(wǎng)絡(luò)中單點(diǎn)故障的問題。因此,本文要求數(shù)據(jù)去重模型應(yīng)面向去中心化存儲網(wǎng)絡(luò),并且由于集中式存儲網(wǎng)絡(luò)下文件的存儲結(jié)構(gòu)與去中心化存儲網(wǎng)絡(luò)下文件的存儲結(jié)構(gòu)存在差異,故本文模型要求設(shè)計一個新的存儲結(jié)構(gòu),并且存儲結(jié)構(gòu)應(yīng)同時滿足去中心化存儲網(wǎng)絡(luò)下流行度數(shù)據(jù)的存儲與去重。

    c)數(shù)據(jù)容錯性。本文模型中可滿足用戶備份文件需求,不會對用戶備份的文件實(shí)現(xiàn)去重。故,數(shù)據(jù)去重模型中要求在數(shù)據(jù)檢測和數(shù)據(jù)存儲時,需將用戶常規(guī)上傳的文件與備份上傳的文件進(jìn)行區(qū)分,即對分片實(shí)現(xiàn)差異性的檢測和存儲。

    d)數(shù)據(jù)完整性。本文模型應(yīng)保障存儲網(wǎng)絡(luò)中數(shù)據(jù)的完整性。同時,用戶可以自行驗(yàn)證外包數(shù)據(jù)的完整性。

    3 詳細(xì)設(shè)計

    3.1 系統(tǒng)初始化

    系統(tǒng)初始化分為兩個部分。a)為加入數(shù)據(jù)去重模型的用戶分配唯一標(biāo)識符UserID。UserID用于確定用戶的身份,以避免同一用戶上傳相同分片時,對數(shù)據(jù)流行度準(zhǔn)確性造成影響。b)智能合約的部署,其主要涉及兩個智能合約。

    1)上傳數(shù)據(jù)塊信息合約

    上傳數(shù)據(jù)塊信息合約由用戶調(diào)用,負(fù)責(zé)將所有數(shù)據(jù)塊信息存儲至區(qū)塊鏈,記為AddBlockInfo(BlockInfo[N])→res。其中,所涉及的參數(shù)如表1所示。

    2)檢測分片合約

    檢測分片合約由用戶調(diào)用,負(fù)責(zé)對分片執(zhí)行重復(fù)性檢測以及流行度檢測,并返回分片的檢測結(jié)果,記為CheckFragment(FInfo[N])→Result[N]。其中,所涉及的參數(shù)如表2所示。

    3.2 基于區(qū)塊鏈的檢測方案

    在數(shù)據(jù)流行度去重模型中,用戶在上傳數(shù)據(jù)前,需借助檢測機(jī)構(gòu)檢測數(shù)據(jù)的存儲情況和流行度。同時,當(dāng)檢測機(jī)構(gòu)不誠實(shí)時,檢測機(jī)構(gòu)可能會向用戶返回錯誤的檢測結(jié)果,從而導(dǎo)致數(shù)據(jù)加密方式與流行度不匹配的問題。由于區(qū)塊鏈和智能合約可應(yīng)用于無可信場景下,故為確保檢測結(jié)果的真實(shí)性,本文結(jié)合區(qū)塊鏈的不可竄改性與智能合約的不可抵賴性,提出了基于區(qū)塊鏈的檢測方案。具體地,由區(qū)塊鏈存儲分片對應(yīng)的數(shù)據(jù)塊信息以用于檢測,并將區(qū)塊鏈上的智能合約作為檢測機(jī)構(gòu)。

    3.2.1 差異性檢測思路

    由于數(shù)據(jù)去重模型中通常要求僅存儲一份文件,故檢測機(jī)構(gòu)在執(zhí)行重復(fù)性檢測時僅會判斷存儲網(wǎng)絡(luò)是否存儲了該文件,而不會判斷文件是否是用戶需要備份的文件。為滿足用戶的備份需求,需實(shí)現(xiàn)對常規(guī)分片與備份分片實(shí)現(xiàn)差異性檢測,即檢測機(jī)構(gòu)不僅需要執(zhí)行檢測還需要識別文件是否為用戶主動備份的文件。因此,本文方案在數(shù)據(jù)塊信息中添加備份標(biāo)識BS,BS由用戶的備份意愿所決定。

    如圖3所示,本文方案根據(jù)借助備份標(biāo)識BS,存儲網(wǎng)絡(luò)可以劃分為兩個虛擬存儲空間VSS1和VSS2。VSS1中存儲的是無論用戶是否有備份需求均會上傳的數(shù)據(jù)塊,即常規(guī)數(shù)據(jù)塊,BS=0。VSS2中均為用戶有備份需求時,為實(shí)現(xiàn)備份時上傳的數(shù)據(jù)塊,即備份數(shù)據(jù)塊,BS=1。故在檢測分片存儲情況時,常規(guī)上傳的分片面向VSS1進(jìn)行檢測,而備份上傳的分片面向VSS2檢測。將常規(guī)與備份上傳區(qū)分檢測的方式,使用戶在備份時,檢測機(jī)構(gòu)不會因?yàn)橛脩粼蟼鬟^而執(zhí)行去重操作。

    3.2.2 檢測分片合約計算方式

    智能合約檢測分片合約CheckFragment執(zhí)行重復(fù)性檢測和流行度檢測的方式如下:

    區(qū)塊鏈中共包含l個區(qū)塊,可記為

    TDk={Tag,UserID,count,value,DP,BS},k∈[1,l]

    TD={TD1,TD2,…,TDl}(1)

    從區(qū)塊鏈中的區(qū)塊TD中篩選出兩類,并按照下標(biāo)進(jìn)行排序,分別是

    CTD1={TDs1|TDs1.tag==FIi.tag,TDs1.BS==0,s1∈[1,cl1]}(2)

    CTD2={TDs2|TDs2.tag==FIi.tag,TDs2.BS==1,s2∈[1,cl2]}(3)

    CTD1和CTD2表示區(qū)塊鏈中標(biāo)簽為FIi.tag的分片對應(yīng)的所有數(shù)據(jù)塊信息。區(qū)別在于,CTD1為常規(guī)數(shù)據(jù)塊信息,CTD2為備份數(shù)據(jù)塊信息。其中CTD1中共包含cl1個元素,CTD2中共包含cl2個元素。

    結(jié)果參數(shù)Ri中各參數(shù)計算方式如下:

    a)分片被不同用戶上傳的數(shù)目Ri.count。Ri.count取決于CTD1中最新更新的數(shù)據(jù)塊信息CTD1[cl1-1]。當(dāng)CTD1沒有數(shù)據(jù)塊信息時,表示未曾有用戶上傳該分片,則Ri.count=1。當(dāng)CTD1有數(shù)據(jù)塊信息時,表示曾有用戶上傳過該分片。如果CU沒有上傳該分片時,Ri.count=CTD1[cl1-1].count+1。反之,Ri.count=CTD1[cl1-1].count,從而避免由于分片重復(fù)上傳造成對數(shù)據(jù)流行度的影響。

    b)分片流行度Ri.DP。Ri.DP取決于Ri.count與流行度閾值T之間的關(guān)系。當(dāng)Ri.countT時,分片為流行數(shù)據(jù),則Ri.DP=popular。

    c)常規(guī)數(shù)據(jù)塊地址Ri.value1。Ri.value1取決于CTD1中的數(shù)據(jù)塊信息。當(dāng)CTD1沒有數(shù)據(jù)塊信息或者流行度剛轉(zhuǎn)換Ri.DP=transition時,表明當(dāng)前存儲網(wǎng)絡(luò)中沒有存儲完整數(shù)據(jù)的、相應(yīng)流行度的數(shù)據(jù)塊,則Ri.value1=NULL。

    當(dāng)CTD1存在數(shù)據(jù)塊信息時,表明當(dāng)前存儲網(wǎng)絡(luò)中已經(jīng)存儲完整數(shù)據(jù)的常規(guī)數(shù)據(jù)塊。如果分片為非流行數(shù)據(jù),Ri.value1取決于第一次記錄的數(shù)據(jù)塊信息,則Ri.value1=CTD1[0].value。如果分片為流行數(shù)據(jù),Ri.value1取決于CTD1[r1].DP=transition,r1∈[1,cl1]的數(shù)據(jù)塊,則Ri.value1=CTD[r1].value。

    d)備份數(shù)據(jù)塊地址Ri.value2。Ri.value2僅在當(dāng)前用戶CU有備份意愿時才進(jìn)行計算,取決于CTD2中的數(shù)據(jù)塊信息。此時,當(dāng)前存儲網(wǎng)絡(luò)中沒有存儲完整數(shù)據(jù)的、相應(yīng)流行度的備份數(shù)據(jù)塊有三種情況:

    (a)CTD2沒有數(shù)據(jù)塊信息;

    (b)流行度剛進(jìn)行轉(zhuǎn)換,Ri.DP=transition;

    (c)流行度轉(zhuǎn)換時,沒有上傳備份數(shù)據(jù)塊;

    則Ri.value2=NULL。

    當(dāng)CTD2存在數(shù)據(jù)塊信息時,表明當(dāng)前存儲網(wǎng)絡(luò)中已經(jīng)存儲完整數(shù)據(jù)的備份數(shù)據(jù)塊。如果分片為非流行數(shù)據(jù), Ri.value2取決于第一次上傳備份數(shù)據(jù)塊時記錄的數(shù)據(jù)塊信息,則Ri.value2=CTD2[0].value。如果分片為流行數(shù)據(jù),Ri.value2取決于首次上傳分片流行度為流行的數(shù)據(jù)塊信息CTD2[r2],r2∈[1,cl2],則Ri.value2=CTD2[r2].value。

    3.3 構(gòu)造文件鏈

    在數(shù)據(jù)流行度去重模型中,檢測機(jī)構(gòu)完成數(shù)據(jù)的重復(fù)性檢測和流行度檢測后,用戶需根據(jù)檢測結(jié)果,確定數(shù)據(jù)的上傳方式,即邏輯上傳或者是物理上傳,并為流行度數(shù)據(jù)采用相匹配的加密方式。在本模型中,該步驟對應(yīng)構(gòu)造文件鏈。

    3.3.1 文件鏈存儲結(jié)構(gòu)設(shè)計思想

    本文方案中,為緩解集中式存儲中心存儲服務(wù)器故障,會導(dǎo)致大部分文件損壞或丟失的問題,設(shè)計一種文件鏈存儲結(jié)構(gòu)FCSS,可使文件滿足數(shù)據(jù)流行度去重的要求,同時適用于去中心化網(wǎng)絡(luò)的存儲,提高數(shù)據(jù)存儲的可靠性。故FCSS應(yīng)考慮并滿足以下四點(diǎn):

    a)設(shè)計分片去重方法。為將數(shù)據(jù)去重模型中的數(shù)據(jù)最終存儲到去中心化存儲網(wǎng)絡(luò)中,要對文件以分片為單位進(jìn)行處理[23],并將分片作為本文模型中最小的存儲和檢測單位。同時,僅為需要物理上傳的分片保留完整數(shù)據(jù)。

    b)選擇不同安全級別。數(shù)據(jù)流行度去重模型要求應(yīng)對不同流行度的數(shù)據(jù)采用相匹配的加密方式,并提供不同的安全級別。其中,非流行數(shù)據(jù)應(yīng)持有語義安全性。

    c)建立分片邏輯關(guān)聯(lián)。其目的是將分散存儲在不同存儲節(jié)點(diǎn)中的分片重新合并為文件。同時,由于文件中可能存在物理上傳和邏輯上傳的分片,故存在難點(diǎn)在于如何將邏輯上傳的分片還原為文件。因此,需要在存儲結(jié)構(gòu)中添加輔助信息,以實(shí)現(xiàn)分片之間邏輯順序的連接。

    d)實(shí)現(xiàn)備份。為滿足用戶的備份需求,需對常規(guī)分片與備份分片實(shí)現(xiàn)差異性存儲。因此,需將文件鏈劃分為常規(guī)文件鏈(routine file chain,RFC)和備份文件鏈(backup file chain,BFC)。如果用戶沒有備份文件意愿,則需構(gòu)建一條文件鏈RFC;反之,用戶則構(gòu)建兩條文件鏈RFC和BFC。

    3.3.2 文件鏈存儲結(jié)構(gòu)定義

    故文件鏈存儲結(jié)構(gòu)構(gòu)建思想如圖4所示。本文方案將文件F根據(jù)系統(tǒng)預(yù)設(shè)大小M劃分為N個分片F(xiàn)F={fi|i∈[1,N]}。

    文件鏈(file chain,F(xiàn)C)本質(zhì)上是由N個數(shù)據(jù)塊(data block,DB)組成,記為FC={DBi|i∈[1,N]}。每個數(shù)據(jù)塊中都包含尋址域(addressing domain,AD)和數(shù)據(jù)域(data domain,DD)兩個部分,記為DB=AD∪DD。

    1)尋址域AD

    AD用于建立數(shù)據(jù)塊之間的聯(lián)系以及定位數(shù)據(jù)塊的位置。AD中包含前一數(shù)據(jù)塊地址(previous address,PA)、當(dāng)前數(shù)據(jù)塊地址(current address,CA)、下一數(shù)據(jù)塊地址(next address,NA),記為AD=PA∪CA∪NA。PA、CA、NA分別用于定位上一個數(shù)據(jù)塊、當(dāng)前數(shù)據(jù)塊、下一個數(shù)據(jù)塊的位置。地址的計算方式是計算數(shù)據(jù)塊哈希,hash(·)為計算哈希的函數(shù),記為

    hash(DNi-1 .DD)→DNi.AD.PA

    hash(DNi.DD)→DNi.AD.CA

    hash(DNi+1.DD)→DNi.AD.NA(4)

    其中:本文方案采用的哈希函數(shù)為國密SM3。

    故,AD可以建立DNi-1、DNi、DNi+1之間的邏輯關(guān)系φ1(α)和φ2(α),i∈[1,N],α=DNi。φ1(α)用于獲取上一數(shù)據(jù)塊DNi-1的地址,φ2(α)用于獲取下一數(shù)據(jù)塊DNi+1的地址。特別地,當(dāng)i=1時,φ1(α)用于獲取上一數(shù)據(jù)塊DNN的地址;當(dāng)i=N時,φ2(α)用于獲取下一數(shù)據(jù)塊DN1的地址。這種方式可以一定程度上減輕用戶保管數(shù)據(jù)塊地址的負(fù)擔(dān)。

    2)數(shù)據(jù)域DD

    DD用于存儲數(shù)據(jù),它包含兩個部分:a)塊標(biāo)識BlockID,用于區(qū)分存儲相同內(nèi)容的數(shù)據(jù)塊,記為hash(count+UserID+TimeStamp)→BlockID,其中TimeStamp為時間戳;b)采用匹配加密方式的完整分片或者存儲完整分片的數(shù)據(jù)塊地址,其具體內(nèi)容由分片檢測結(jié)果中的存儲情況和流行度決定。

    其中,為便于后面討論,本文將存儲完整分片的數(shù)據(jù)塊稱為完整數(shù)據(jù)塊(complete data block,CDB),實(shí)現(xiàn)分片的物理上傳;存儲完整分片數(shù)據(jù)塊地址的數(shù)據(jù)塊稱為去重數(shù)據(jù)塊(duplicated data block,DDB),實(shí)現(xiàn)分片的邏輯上傳。

    3.3.3 文件鏈構(gòu)造流程

    文件鏈構(gòu)造流程共分為文件預(yù)處理和構(gòu)造文件鏈兩個部分。

    1)文件預(yù)處理

    當(dāng)前用戶CU需先對文件進(jìn)行預(yù)處理,從而獲得構(gòu)建文件鏈時所需使用的參數(shù),其具體操作如下:

    a)完成文件分片。CU將文件F根據(jù)大小M劃分為N個分片,得到分片有序集FF={fi|i∈[1,N]}。其中,M由系統(tǒng)預(yù)設(shè)。

    b)生成收斂密文。CU依次對fi生成收斂密鑰KeyGenCE (fi)→CEKeyi,并將CEKeyi集合成收斂密鑰集CEKS={CEKeyi|i∈[1,N]}。之后,CU依次對fi進(jìn)行第一次加密得到收斂密文encrypt(CEKeyi,fi)→C1fi。

    c)生成分片標(biāo)簽。CU依次從C1fi中計算出fi的標(biāo)簽TagGen(C1fi)→tagi。

    d)調(diào)用檢測分片合約。CU調(diào)用檢測分片合約CheckFragment,并獲得合約返回分片檢測結(jié)果。

    e)獲取外層密鑰。當(dāng)fi由CU首次上傳時,則CU生成外層密鑰KeyGen (1λ)→OKeyi。否則,CU向首次用戶FU申請并獲取OKeyi。CU將OKeyi集合成外層密鑰集OKS={OKeyi|i∈[1,N]}。

    2)構(gòu)造文件鏈

    構(gòu)建文件鏈所需的參數(shù)獲取完畢后,CU開始文件鏈的構(gòu)造。構(gòu)造文件鏈本質(zhì)上是將N個分片構(gòu)建成N個數(shù)據(jù)塊結(jié)構(gòu),本文將文件鏈記為RFC={DBri|i∈[1,N]}和BFC={DBbi|i∈[1,N]}。

    由于文件鏈構(gòu)造方式相同,故為便于介紹,將Ri.value1和Ri.value2統(tǒng)記為Ri.value,常規(guī)文件鏈RFC={DBri|i∈[1,N]}和備份文件鏈BFC={DBbi|i∈[1,N]}統(tǒng)記為FC={DBi|i∈[1,N]}。

    構(gòu)造文件鏈具體操作如下:

    a)確定存儲內(nèi)容。為構(gòu)造數(shù)據(jù)塊的數(shù)據(jù)域,CU首先要確定存儲的內(nèi)容(data domain content,DDC)是完整的分片還是存儲完整分片的數(shù)據(jù)塊地址。確定方式可以通過查看檢測結(jié)果中的Ri.value是否為空值NULL。

    (a)當(dāng)Ri.value==NULL時,表明fi在Ri.DP的流行度下VSS1/VSS2中沒有存儲完整分片,故需實(shí)現(xiàn)fi的物理上傳,即數(shù)據(jù)塊的數(shù)據(jù)域中存儲的內(nèi)容是完整的分片DDCi=fi。

    (b)當(dāng)Ri.value≠NULL時,表明fi在Ri.DP的流行度下VSS1/VSS2中已經(jīng)存儲過完整的分片,故只需實(shí)現(xiàn)fi的邏輯上傳,即數(shù)據(jù)塊的數(shù)據(jù)域中存儲的內(nèi)容是存儲完整分片的數(shù)據(jù)塊地址DDCi=Ri.value。

    b)第一次加密。采用的是收斂加密,收斂加密的目的是為了實(shí)現(xiàn)密文數(shù)據(jù)去重,故無論fi為非流行數(shù)據(jù)還是流行數(shù)據(jù),CU都需采用CEKeyi依次對DDCi進(jìn)行加密,得到收斂密文C1i,記為encrypt(CEkeyi,DDCi)→C1i。

    c)第二次加密。采用的是具有語義安全性的加密算法國密SM4。因此,如果fi為流行數(shù)據(jù),則CU無須對數(shù)據(jù)進(jìn)行第二次加密,即C2i=C1i。如果fi為非流行數(shù)據(jù),則CU需采用OKeyi依次對C1i進(jìn)行加密,得到最終的密文C2i,encrypt(OKeyi,C1i)→C2i。

    d)構(gòu)造數(shù)據(jù)域。數(shù)據(jù)塊的數(shù)據(jù)域中包含塊標(biāo)識和具體存儲內(nèi)容兩個部分,故CU應(yīng)依次計算出DBi的塊標(biāo)識BlockIDi,記為

    hash(fi.count+UserID + TimeStamp)→BlockIDi(5)

    計算完成后,CU將塊標(biāo)識BlockIDi和密文C2i共同組合成數(shù)據(jù)塊的數(shù)據(jù)域DBi.DD,如下:

    (a)當(dāng)fi需實(shí)現(xiàn)物理上傳時,數(shù)據(jù)塊的數(shù)據(jù)域?yàn)镈Bi.DD=BlockIDi‖C2i。

    (b)當(dāng)fi僅需實(shí)現(xiàn)邏輯上傳時,數(shù)據(jù)塊的數(shù)據(jù)域?yàn)镈Bi.DD=BlockIDi‖C2i‖C2i。拼接兩次C2i的目的是在CU下載數(shù)據(jù)塊時,以區(qū)分存儲的內(nèi)容是完整分片還是數(shù)據(jù)塊地址。

    e)構(gòu)造尋址域。CU依次對DBi.DD生成哈希,并將哈希賦值給數(shù)據(jù)塊的尋址域,記為

    至此,當(dāng)所有分片均構(gòu)建成數(shù)據(jù)塊后,文件鏈構(gòu)造完成。

    3.4 上傳文件

    在構(gòu)造完成文件鏈后,當(dāng)前用戶CU需將文件鏈上傳至去中心化存儲網(wǎng)絡(luò)DSN中,即數(shù)據(jù)塊會分布式存儲在不同的存儲節(jié)點(diǎn)中。此外,為實(shí)現(xiàn)基于區(qū)塊鏈的分片檢測,保障檢測結(jié)果的真實(shí)性,CU還需將所有的數(shù)據(jù)塊信息存儲在區(qū)塊鏈中,以保障數(shù)據(jù)塊信息不被竄改。該階段的詳細(xì)步驟如下:

    a)調(diào)用上傳數(shù)據(jù)塊信息合約。CU將用戶唯一標(biāo)識符UserID、備份標(biāo)識BS和所有數(shù)據(jù)塊的分片標(biāo)簽tag、分片被不同用戶上傳的數(shù)目count、加密的數(shù)據(jù)塊地址value、分片流行度DP整合為N組數(shù)據(jù)塊信息BIi。其中,數(shù)據(jù)塊的備份標(biāo)識值與用戶備份意愿相同,記為BS=RBackup。

    之后,CU調(diào)用上傳數(shù)據(jù)塊信息合約AddBlockInfo,將所有數(shù)據(jù)塊信息上鏈。

    b)存儲數(shù)據(jù)塊信息。合約接收到N組數(shù)據(jù)塊信息BIi,并將信息存儲至區(qū)塊鏈中。其中,一個區(qū)塊對應(yīng)一個數(shù)據(jù)塊的信息。

    c)建立映射元文件。為實(shí)現(xiàn)文件的自主管理,CU需建立元文件。元文件可實(shí)現(xiàn)文件與文件鏈中數(shù)據(jù)塊的基本映射,其基本內(nèi)容與作用如表3所示。

    d)上傳文件鏈。CU將文件鏈上傳至去中心化存儲網(wǎng)絡(luò)DSN中。

    e)存儲文件鏈。DSN接收到文件鏈后,將數(shù)據(jù)塊分布式地存儲在不同的存儲節(jié)點(diǎn)中。

    3.5 下載文件

    當(dāng)前用戶CU在需要時,需從去中心化存儲網(wǎng)絡(luò)DSN中下載文件。與以往的數(shù)據(jù)流行去重模型不同的是,以往的模型將文件存儲在集中式存儲網(wǎng)絡(luò)中,不需要對文件進(jìn)行重構(gòu),本文模型需要將分布式存儲在不同存儲節(jié)點(diǎn)中的數(shù)據(jù)塊進(jìn)行重構(gòu)。下載文件的詳細(xì)步驟如下:

    a)第一次下載數(shù)據(jù)塊。根據(jù)元文件中的頭數(shù)據(jù)塊地址FA,CU從DSN中下載文件鏈中所有的數(shù)據(jù)塊{DBi|i∈[1,N]}。

    b)區(qū)分?jǐn)?shù)據(jù)塊存儲內(nèi)容。文件鏈中存在存儲完整分片的數(shù)據(jù)塊CDB,也存在存儲數(shù)據(jù)塊地址的數(shù)據(jù)塊DDB,故在解密之前,CU需先對它們進(jìn)行區(qū)分。

    由于存儲完整分片和數(shù)據(jù)塊地址的數(shù)據(jù)塊數(shù)據(jù)域構(gòu)成不同,且塊標(biāo)識由哈希計算得出,大小恒定不變,故可以借助數(shù)據(jù)域的內(nèi)容和大小進(jìn)行區(qū)分。如果數(shù)據(jù)塊數(shù)據(jù)域中除去塊標(biāo)識后,剩下的內(nèi)容前半部分和后半部分相同,則為完整數(shù)據(jù)塊CDB。反之,則為去重數(shù)據(jù)塊DDB。

    c)第一次解密數(shù)據(jù)塊。由于數(shù)據(jù)塊對應(yīng)分片的流行度存在非流行和流行兩種情況,故解密時需采取兩個步驟:

    (a)如果CU擁有OKS[i],說明DBi對應(yīng)分片為非流行數(shù)據(jù),則CU需采用OKS[i]對數(shù)據(jù)域中存儲的內(nèi)容DCi進(jìn)行解密,記為decrypt(OKS[i],DCi)→C1DBi。反之,則跳過該解密過程,即C1DBi=DCi。

    (b)在構(gòu)造數(shù)據(jù)塊時,無論分片處于非流行還是流行狀態(tài),均需采用收斂加密加密數(shù)據(jù)。故,CU必須采用CEKS[i]對C1DBi進(jìn)行解密,記為decrypt(CEKS[i],C1DBi)→MDBi。

    其中,文件鏈中可能包含去重數(shù)據(jù)塊DDB,故部分MDBi為數(shù)據(jù)塊地址BAddress,記為BAddress=MDBi。CU所有的BAddress集合為{BAdressk|k∈[1,l]},l為文件鏈中DDB的數(shù)目。

    d)第二次下載數(shù)據(jù)塊。如果{DBi|i∈[1,N]}中存在DDB,則執(zhí)行該步驟。CU根據(jù){BAdressk|k∈[1,l]}從DSN中下載數(shù)據(jù)塊{DBk|k∈[1,l]}。

    e)第二次解密數(shù)據(jù)塊。如果{DBi|i∈[1,N]}中存在DDB,則執(zhí)行該步驟。CU依次對{DBk|k∈[1,l]}進(jìn)行解密。解密方式同步驟c),不同的是此次解密的數(shù)據(jù)塊DBk均為完整數(shù)據(jù)塊CDB。

    f)合并分片。CU將CDB的MDB進(jìn)行合并,最終獲得文件F。

    4 安全性分析

    4.1 檢測結(jié)果真實(shí)性分析

    定義1 在數(shù)據(jù)流行度去重方案中,文件上傳至CSP前通常需要檢測機(jī)構(gòu)對文件執(zhí)行重復(fù)性檢測和流行度檢測,其具體流程如下:

    a)用戶user生成文件F的標(biāo)簽TagGen(F)→tag,并將tag發(fā)送給檢測機(jī)構(gòu)。

    b)檢測機(jī)構(gòu)TA根據(jù)tag執(zhí)行重復(fù)性檢測和流行度檢測,計算出F的存儲情況和流行度。

    c)TA將F的存儲情況和流行度告知user。

    d)user根據(jù)F的存儲情況和流行度,對F采用不同的上傳、加密方式。如果F沒有上傳,則進(jìn)行物理上傳。反之,則進(jìn)行邏輯上傳。如果F為非流行數(shù)據(jù),則采用語義安全的加密方式。反之,則采用收斂加密,執(zhí)行去重操作。

    定義2 流行度欺騙攻擊指惡意檢測結(jié)構(gòu)會告知用戶數(shù)據(jù)錯誤的流行度,使用戶采用錯誤的加密方式加密數(shù)據(jù),其在數(shù)據(jù)去重模型中的攻擊流程如下。

    假設(shè)文件F為非流行數(shù)據(jù),并且其密文C已經(jīng)存儲在CSP中。

    a)用戶user將標(biāo)簽tag發(fā)送給檢測機(jī)構(gòu)TA執(zhí)行重復(fù)性檢測和流行度檢測。

    b)出于利益或其他原因,檢測結(jié)構(gòu)TA與攻擊者A進(jìn)行合謀。TA告知user,文件F經(jīng)過此次上傳,流行度將從非流行數(shù)據(jù)轉(zhuǎn)換為流行數(shù)據(jù)。

    c)user無法對流行度檢測的結(jié)果進(jìn)行驗(yàn)證,故對文件F采用收斂加密得到收斂密鑰和收斂密文,如下:

    KeyGenCE(F)→CEKey(7)

    encrypt(CEKey,F(xiàn))→C*(8)

    d)user將密文C*上傳至CSP中進(jìn)行存儲。

    e)攻擊者A通過非法手段截取文件F的密文C*。C*采用的是不具有語義安全性的收斂加密,因此破解難度低于C。

    f)攻擊者A采用暴力攻擊或者其他攻擊方式嘗試對C*進(jìn)行破解,建立C*與F之間的聯(lián)系。

    定理1 本文方案可以保障檢測機(jī)構(gòu)檢測結(jié)果的真實(shí)性。

    證明 本文方案中,由區(qū)塊鏈存儲數(shù)據(jù)塊信息,采用智能合約檢測分片合約CheckFragment執(zhí)行數(shù)據(jù)的重復(fù)性檢測和流行度檢測,并向用戶返回數(shù)據(jù)的存儲情況和流行度。

    區(qū)塊鏈的每一個區(qū)塊中都包含指向前一個區(qū)塊的哈希值,故如果前一個區(qū)塊數(shù)據(jù)被竄改,其對應(yīng)的哈希值也相應(yīng)會改變。如果攻擊者試圖竄改區(qū)塊鏈中的某個區(qū)塊,則會破壞該區(qū)塊以及后續(xù)所有的區(qū)塊,導(dǎo)致整個區(qū)塊鏈無效。因此區(qū)塊鏈可以保證區(qū)塊中的數(shù)據(jù)塊信息不會被別的攻擊者竄改。而智能合約的執(zhí)行過程是公開的,并且可被其他節(jié)點(diǎn)查看和驗(yàn)證。如果智能合約的執(zhí)行結(jié)果被竄改,其他節(jié)點(diǎn)會發(fā)現(xiàn)并拒接該結(jié)果,從而保證了智能合約執(zhí)行結(jié)果的真實(shí)性。

    因此,由檢測分片合約CheckFragment作為檢測機(jī)構(gòu),承擔(dān)重復(fù)性檢測和流行度檢測職責(zé),可避免流行度欺騙攻擊中的步驟b)的出現(xiàn),從而避免后續(xù)階段的發(fā)生。故本方案可以抵御流行度欺騙攻擊,保障檢測結(jié)果的真實(shí)性。

    4.2 語義安全性分析

    定義3 本文方案使用的對稱加密SM4具有語義安全性,其猜測優(yōu)勢是可以忽略的。

    定理2 本文方案中非流行數(shù)據(jù)具有語義安全性。

    證明 假設(shè)存在攻擊者A和挑戰(zhàn)者Chal。A會攻擊非流行數(shù)據(jù)。Chal擁有外層密鑰OKey,并運(yùn)行非流行數(shù)據(jù)的加密方式,接受A的攻擊挑戰(zhàn)。具體挑戰(zhàn)描述如下:

    a)攻擊者A從明文數(shù)據(jù)集M中任意選取兩個明文數(shù)據(jù)(M0,M1)。

    b)攻擊者A將兩個明文數(shù)據(jù)(M0,M1)發(fā)送給挑戰(zhàn)者Chal。

    c)挑戰(zhàn)者Chal任意選取Mr∈(M0,M1),并采用非流行數(shù)據(jù)的加密方式進(jìn)行加密,得到密文Cr:

    encrypt(Okey,encrypt(KeyGenCE (Mr),Mr))→Cr(9)

    并將Cr發(fā)送給攻擊者A。

    d)攻擊者A猜測密文Cr來源于M0還是M1。

    攻擊者A猜測優(yōu)勢為

    Pr1=Pr[encrypt(Okey,encrypt(KeyGenCE(M0),M0))→Cr](10)

    Pr2=Pr[encrypt(Okey,encrypt(KeyGenCE (M1),M1))→Cr](11)

    Adv(A)=|Pr1-Pr2|(12)

    又因?yàn)楸疚牟捎玫膶ΨQ加密算法SM4具有語義安全性,故(M0,M1)的密文在計算上是不可分的,即

    {C0}≈p{C1}(13)

    因此,存在可忽略值ε,使Adv(A)=|Pr1-Pr2|≤ε,非流行數(shù)據(jù)具有語義安全性。

    4.3 抵御暴力攻擊分析

    定義4 暴力攻擊指當(dāng)攻擊者已知數(shù)據(jù)屬于某個可預(yù)測集時,通過窮舉方式可以確定密文對應(yīng)明文數(shù)據(jù)的攻擊方式。暴力攻擊在數(shù)據(jù)去重模型的攻擊流程如下:

    假設(shè)存在攻擊者A,A擁有明文空間集MS={F1,F(xiàn)2,…,F(xiàn)n},其可以通過以下流程發(fā)起暴力攻擊:

    a)A通過非法手段截取文件F的密文C。

    b)A依次對MS中的文件Fk,k∈[1,n]進(jìn)行計算,并得到收斂密鑰CEKeyk和收斂密文Ck,如下:

    KeyGenCE(Fk)→CEKeyk(14)

    encrypt(CEKeyk,F(xiàn)k)→Ck(15)

    c)A將Ck和截獲的密文C進(jìn)行比對。當(dāng)Ck滿足等式Ck==C,A可確定F==Fk。至此,A獲得原始明文文件F。

    定理3 本文方案中非流行數(shù)據(jù)能夠抵御暴力攻擊。

    證明 本文方案中,當(dāng)前用戶CU將文件劃F分成N個分片F(xiàn)F={fi|i∈[1,N]},并根據(jù)fi的存儲情況和流行度,將fi構(gòu)建成不同的數(shù)據(jù)塊結(jié)構(gòu)。當(dāng)fi.DP=unpopular時,CU需將數(shù)據(jù)塊數(shù)據(jù)域中存儲的內(nèi)容DDC先后采用收斂密鑰CEKey和外層密鑰OKey進(jìn)行加密,得到最終的密文,記為

    encrypt(Okey,encrypt(CEKey,DDC))→C(16)

    其中:CEKey是從fi中提取的密鑰。

    KeyGenCE (fi)→CEKeyk(17)

    故任何擁有fi的用戶均可以計算得到。

    OKey由第一個上傳fi的首次用戶FU隨機(jī)生成:

    KeyGenCE(1λ)→Okey(18)

    假設(shè)攻擊者A發(fā)起暴力攻擊,通過非法手段獲取任一數(shù)據(jù)塊,數(shù)據(jù)塊的數(shù)據(jù)域中存儲密文C。A依次將MS中的Fk劃分成與fi同等大小的分片,共J個分片{f*j|j∈[1,J]}。由于A僅能計算出f*j的收斂密鑰,無法獲取外層密鑰,故無法將f*j加密成最終的密文C*j,并將C*j與C進(jìn)行比對。其次,A截獲的僅為文件鏈中的一個數(shù)據(jù)塊,并且無權(quán)限根據(jù)數(shù)據(jù)塊地址直接訪問存儲內(nèi)容,故A無法獲取完整的文件。

    4.4 完整性驗(yàn)證分析

    定理4 本文方案中任意用戶均可對密文進(jìn)行完整性驗(yàn)證。

    證明 本文方案中,用戶上傳文件F前,會先將文件F構(gòu)建成多個不同的數(shù)據(jù)塊結(jié)構(gòu),即文件鏈FC={DBi|i∈[1,N]}。當(dāng)文件鏈構(gòu)建完成后,再將文件鏈上傳至CSP中。當(dāng)用戶下載文件F時,用戶會先下載若干個數(shù)據(jù)塊,再將數(shù)據(jù)塊重構(gòu)為文件。數(shù)據(jù)塊DB由尋址域AD與數(shù)據(jù)域DD組成,尋址域AD中包含前一數(shù)據(jù)塊的地址PA、當(dāng)前數(shù)據(jù)塊的地址CA、后一數(shù)據(jù)塊的地址NA,記為

    DB=AD∪DD,AD=PA∪CA∪NA(19)

    已知用戶已經(jīng)上傳文件F對應(yīng)的文件鏈FC={DBi|i∈[1,N]}。當(dāng)用戶將文件鏈中所有數(shù)據(jù)塊下載完畢,用戶可通過尋址域判斷文件是否完整,具體流程如下:

    a)依次計算數(shù)據(jù)塊數(shù)據(jù)域DBi.DD的哈希地址hash(DBi.DD)→hi。

    b)依次將hi與DBi.AD.CA進(jìn)行比對。如果相同,則說明數(shù)據(jù)塊DBi沒有發(fā)生竄改。

    c)依次將DBi.AD.CA與DBi-1.AD.NA、DBi+1.AD.PA進(jìn)行比對。其中,DBN.AD.NA與DB1.AD.CA比對,DB1.AD.PA與DBN.AD.CA比對。如果相同,則說明下載的數(shù)據(jù)塊正確。

    當(dāng)上述比對均相同時,數(shù)據(jù)具有完整性。

    4.5 存儲可靠性分析

    定義5 以往的流行度數(shù)據(jù)去重模型多會將文件F集中式地存儲在中心存儲服務(wù)器中。假設(shè)存在攻擊者A攻擊中心存儲服務(wù)器成功,中心存儲服務(wù)器中的大量數(shù)據(jù)都會損壞或者丟失,其中可能包含有文件F。又因?yàn)閿?shù)據(jù)去重模型中擁有相同文件的用戶僅存儲一個副本在存儲系統(tǒng)中,故所有擁有該文件的用戶都會丟失自己的文件。

    定理5 本文方案可以提高數(shù)據(jù)存儲的可靠性。

    證明 在本文方案中,假設(shè)去中心化存儲網(wǎng)絡(luò)DSN中包含P個存儲節(jié)點(diǎn)DSN={SN1,SN2,…,SNP}。當(dāng)用戶希望上傳文件F時,會將F劃分為N個分片F(xiàn)F={fi|i∈[1,N]},并構(gòu)造常規(guī)文件鏈RFC={DBri|i∈[1,N]}。如果用戶有備份需求,用戶還會構(gòu)造出備份文件鏈BFC={DBbi|i∈[1,N]}。構(gòu)造文件鏈完成后,再將其分散存儲在k,k∈[1,P]個存儲節(jié)點(diǎn)中。

    假設(shè)存在攻擊者A成功攻擊DSN中的任意存儲節(jié)點(diǎn)SNk,k∈[1.P],導(dǎo)致丟失了RFC中的部分?jǐn)?shù)據(jù)塊。此時,可以將BFC中數(shù)據(jù)塊進(jìn)行替換或采用容錯兩種方式進(jìn)行恢復(fù)。因此,本文方案可以提高數(shù)據(jù)存儲的可靠性。

    5 實(shí)驗(yàn)分析

    實(shí)驗(yàn)采用C語言編寫哈希函數(shù)SM3、加解密函數(shù)SM4,采用Python實(shí)現(xiàn)參數(shù)的初始化、文件鏈構(gòu)造以及網(wǎng)絡(luò)通信的編寫,采用基于Python的開發(fā)測試框架Brownie實(shí)現(xiàn)區(qū)塊鏈網(wǎng)絡(luò),采用Solidity實(shí)現(xiàn)智能合約的編寫。實(shí)驗(yàn)環(huán)境涉及主機(jī)參數(shù)如表4所示。三臺主機(jī)模擬去中心化存儲網(wǎng)絡(luò)中的服務(wù)器端,并且共同維護(hù)一個區(qū)塊鏈網(wǎng)絡(luò)。在這三臺主機(jī)中,其中一臺主機(jī)還用于模擬用戶端。本章主要從功能上將本文方案與其他方案[7,8,14,24]進(jìn)行了對比,并通過仿真實(shí)驗(yàn)分別完成了本文方案的性能和去重效率測試。

    5.1 功能對比分析

    本文方案的功能優(yōu)勢主要體現(xiàn)在數(shù)據(jù)流行度去重模型可以保障檢測結(jié)果的真實(shí)性、面向去中心化存儲、考慮用戶備份需求。將本文方案與文獻(xiàn)[7,8,14,24]進(jìn)行比較,結(jié)果如表5所示。

    文獻(xiàn)[7]中首次提出數(shù)據(jù)流行度去重方案,為流行度不同的數(shù)據(jù)提供不同的安全級別,可在實(shí)現(xiàn)密文數(shù)據(jù)去重的同時,為非流行數(shù)據(jù)提供語義安全性。該方案中將第三方服務(wù)器作為檢測機(jī)構(gòu),而可信第三方服務(wù)器極難部署,存在返回錯誤檢測結(jié)果的可能,故無法保障檢測結(jié)果的真實(shí)性。此外,該方案并未考慮到數(shù)據(jù)存儲不可靠的問題。

    文獻(xiàn)[8]在文獻(xiàn)[7]的基礎(chǔ)上提出了一種基于雙層加密的數(shù)據(jù)去重方案,對非流行數(shù)據(jù)先采用收斂加密,后采用語義安全的加密方式,實(shí)現(xiàn)了對非流行數(shù)據(jù)的去重,提高了數(shù)據(jù)去重效率。但該方案將CSP作為檢測機(jī)構(gòu),仍無法保障檢測結(jié)果的正確性。同時,數(shù)據(jù)存儲可靠性問題也并未考慮。

    文獻(xiàn)[14]結(jié)合區(qū)塊鏈的去中心化和不可竄改性,實(shí)現(xiàn)了面向去中心化存儲的數(shù)據(jù)存儲。由于去中心化存儲網(wǎng)絡(luò)不依賴任何中心服務(wù)器,并將數(shù)據(jù)分散存儲在多個存儲節(jié)點(diǎn)上,故當(dāng)數(shù)據(jù)中部分存儲節(jié)點(diǎn)被惡意敵手攻擊,導(dǎo)致部分?jǐn)?shù)據(jù)被損壞或者丟失時,仍可以通過糾刪碼等容災(zāi)方式恢復(fù)完整的文件。此外,由于該文獻(xiàn)不涉及數(shù)據(jù)去重,故仍可實(shí)現(xiàn)用戶數(shù)據(jù)的備份。

    文獻(xiàn)[24]引入雙服務(wù)器模型作為去中心化存儲網(wǎng)絡(luò)對數(shù)據(jù)進(jìn)行存儲以及去重,并且由雙服務(wù)器相互對數(shù)據(jù)進(jìn)行審計。雙服務(wù)器的審計結(jié)果在用戶之間共享,以避免重復(fù)審計。同時,該文獻(xiàn)將標(biāo)簽存儲在區(qū)塊鏈中,由用戶進(jìn)行搜索是否重復(fù),可以保障重復(fù)性檢測結(jié)果的真實(shí)性。但該文獻(xiàn)沒有考慮到數(shù)據(jù)流行度,故也無法保障流行度檢測結(jié)果的真實(shí)性。同時,該文獻(xiàn)中相同數(shù)據(jù)僅能存儲一份,故會對用戶備份的數(shù)據(jù)執(zhí)行去重操作,無法實(shí)現(xiàn)備份需求。

    因此,本文方案更具功能性,可提高數(shù)據(jù)流行度去重模型的安全性。

    5.2 時間開銷分析

    為便于進(jìn)行實(shí)驗(yàn)分析,實(shí)驗(yàn)設(shè)置數(shù)據(jù)分塊量N為10,閾值T為3,對1~20 M的文件進(jìn)行測試。根據(jù)上傳方式和加密方式不同,本文分片劃分為四種情況,分別是:a)情況1,非流行數(shù)據(jù)首次上傳;b)情況2,非流行數(shù)據(jù)后續(xù)上傳;c)情況3,流行數(shù)據(jù)首次上傳;d)情況4,流行數(shù)據(jù)后續(xù)上傳。

    為模擬分片的四種情況,本實(shí)驗(yàn)在上傳文件前,將存儲網(wǎng)絡(luò)存儲置空,使任何分片均未被存儲;實(shí)驗(yàn)開始后,將相同文件分別上傳、下載4次。這可保證文件中所有分片的情況均從情況1開始,并且所有分片的存儲情況和流行度在四次上傳和下載的過程中將保持一致。同時,由于構(gòu)建常規(guī)文件鏈與備份文件鏈中的數(shù)據(jù)塊時,處于相同情況的相同分片的時間開銷相同,故本實(shí)驗(yàn)不刻意考慮備份文件的情況。

    5.2.1 基于區(qū)塊鏈的數(shù)據(jù)檢測時間開銷

    在數(shù)據(jù)流行度去重模型中,用戶在上傳數(shù)據(jù)前,需借助檢測機(jī)構(gòu)檢測數(shù)據(jù)的存儲情況和流行度。本文方案將區(qū)塊鏈中的智能合約作為檢測機(jī)構(gòu),執(zhí)行數(shù)據(jù)的重復(fù)性檢測和流行度檢測。本節(jié)測試在不同文件大小情況下數(shù)據(jù)檢測的時間開銷,如圖5所示。實(shí)驗(yàn)表明,數(shù)據(jù)檢測時間開銷并不會受到文件大小的影響。

    原因在于,本文方案中,檢測分片合約CheckFragment執(zhí)行重復(fù)性檢測和流行度檢測時,僅需輸入用戶唯一標(biāo)識UserID、分片標(biāo)簽tag、用戶備份意愿RBackup。其中,同一文件中所有分片的UserID和RBackup始終保證不變。tag由標(biāo)簽生成算法TagGen計算而來,即由不同大小文件劃分得到的分片會具有相同位數(shù)的tag。故在檢測分片合約和區(qū)塊鏈中數(shù)據(jù)規(guī)模相同時,文件大小不會對數(shù)據(jù)檢測時間開銷造成影響。

    同時,文獻(xiàn)[25]同樣采用區(qū)塊鏈上的智能合約作為檢測機(jī)構(gòu)。與本文不同的是,該方案每檢測一次分片的存儲情況,都需要調(diào)用智能合約執(zhí)行重復(fù)性檢測,且不支持流行度檢測。本文模型中,用戶只需調(diào)用一次智能合約即可檢測文件中所有分片的存儲情況。故本文方案中的檢測方式減少了調(diào)用智能合約的次數(shù),可降低檢測所需要的時間。同時,圖5表明,本文方案中一次性檢測所有分片思想的時間開銷,要遠(yuǎn)低于多次檢測分片思想的時間開銷。此外,本文方案的分片檢測合約具有更多的功能,其可以面向兩個虛擬存儲空間,檢測分片的存儲情況和流行度。

    5.2.2 構(gòu)造文件鏈時間開銷

    本文方案中,在文件上傳前,當(dāng)前用戶需先將文件構(gòu)造為文件鏈。構(gòu)造文件鏈分為文件預(yù)處理和構(gòu)造文件鏈兩個部分。

    a)文件預(yù)處理包含文件分片、分片的收斂加密、生成分片標(biāo)簽,時間開銷測試結(jié)果如圖6所示。實(shí)驗(yàn)結(jié)果表明,該階段時間開銷隨著文件體積的增大隨之增大,但不受文件中分片流行度與存儲情況的影響。

    原因在于,文件分片、分片的收斂加密、生成分片標(biāo)簽的三個階段僅需輸入文件F,而決定分片情況的數(shù)據(jù)塊地址Ri.value和分片流行度Ri.DP不參加該階段的計算。因此,文件預(yù)處理時不存在差異性策略,不會受到分片流行度與存儲情況的影響。

    b)構(gòu)造文件鏈的時間開銷如圖7所示。實(shí)驗(yàn)表明,在情況1和3下,構(gòu)造文件鏈的時間開銷隨著文件的增大而增大。而情況2和4下,該階段的時間開銷并不隨文件增大。

    原因在于,在情況1和3下,由于文件對應(yīng)分片的流行度分別處于非流行和流行時,存儲網(wǎng)絡(luò)中并沒有存儲相應(yīng)流行度的數(shù)據(jù)塊,故在構(gòu)造文件鏈的數(shù)據(jù)塊時,數(shù)據(jù)塊中存儲的是完整的分片,而不同的文件大小會被劃分成不同大小的分片。同時,構(gòu)造數(shù)據(jù)塊包含構(gòu)造數(shù)據(jù)域和構(gòu)造尋址域兩個階段,構(gòu)造數(shù)據(jù)域時需對分片進(jìn)行加密,構(gòu)造尋址域時需對數(shù)據(jù)域部分進(jìn)行哈希運(yùn)算,故兩個階段時間開銷均會受到分片大小影響。因此,在情況1和3下,構(gòu)造文件鏈會受到文件大小的影響。

    在情況2和4下,存儲網(wǎng)絡(luò)已經(jīng)存儲文件鏈中相應(yīng)流行度的數(shù)據(jù)塊,故數(shù)據(jù)塊中存儲的內(nèi)容是存儲完整分片數(shù)據(jù)的數(shù)據(jù)塊地址。而數(shù)據(jù)塊地址位數(shù)是恒定的,故不同大小的分片不會對構(gòu)造數(shù)據(jù)塊時間開銷造成影響。因此,在情況2和4下,構(gòu)造文件鏈不會受到文件大小的影響。

    此外,在情況1和2下,文件對應(yīng)分片的流行度為非流行,故在構(gòu)造數(shù)據(jù)塊的數(shù)據(jù)域時,僅需對存儲的內(nèi)容進(jìn)行兩次加密;在情況3和4下,文件對應(yīng)分片的流行度為流行,僅需一次加密。因此,在分片處于相同流行度時,情況1構(gòu)造文件鏈的時間開銷要高于情況3,情況2構(gòu)造文件鏈的時間開銷要高于情況4。

    5.2.3 上傳文件鏈時間開銷

    文件鏈構(gòu)造完成后,當(dāng)前用戶需要將文件鏈上傳至去中心化存儲網(wǎng)絡(luò)中,其時間開銷測試結(jié)果如圖8所示。實(shí)驗(yàn)表明,在情況1和3下,文件鏈傳輸?shù)臅r間開銷隨著文件的增大而增大。而在情況2和4下,該階段的時間開銷并不隨文件增大。情況2和4的文件鏈傳輸時間要遠(yuǎn)低于情況1和3。

    原因在于構(gòu)造文件鏈相同,在情況1和3下,文件鏈的數(shù)據(jù)塊中存儲的是完整分片,即在傳輸過程中要實(shí)現(xiàn)數(shù)據(jù)塊的物理上傳。在情況2和4下,文件鏈的數(shù)據(jù)塊中存儲的是存儲完整分片的數(shù)據(jù)塊地址,即在傳輸過程中要實(shí)現(xiàn)數(shù)據(jù)的邏輯上傳,執(zhí)行去重操作。

    5.2.4 文件下載

    本文模型中,當(dāng)前用戶需要文件時,會從存儲網(wǎng)絡(luò)中下載文件鏈,并將其重構(gòu)為文件。本階段主要圍繞數(shù)據(jù)塊第一次下載、第一次解密、第二次下載、第二次解密、合并文件五個步驟進(jìn)行展開,時間開銷如圖9~12所示。結(jié)果表明,四種情況下獲取完整文件的時間開銷均會隨文件大小增大而增大,但其中各步驟占比不同。原因在于,在情況1和3下,文件鏈中的數(shù)據(jù)塊實(shí)現(xiàn)的是物理上傳,第一次下載時獲得的數(shù)據(jù)塊中存儲內(nèi)容均是完整分片,因此,當(dāng)前用戶無須進(jìn)行數(shù)據(jù)塊的第二次下載和解密,第二次數(shù)據(jù)塊的下載和解密的時間均為0 s。

    在情況2和4下,文件鏈中的數(shù)據(jù)塊實(shí)現(xiàn)的是邏輯上傳,僅存儲了存儲完整分片的數(shù)據(jù)塊地址,而非完整分片。又因?yàn)槲募溨袛?shù)據(jù)塊數(shù)據(jù)域體積是恒定的,故隨著文件體積大小增大,第一次下載和解密數(shù)據(jù)塊的時間開銷并不受影響。而第二次下載文件鏈中的數(shù)據(jù)塊時,數(shù)據(jù)塊中存儲的是完整的分片,因此數(shù)據(jù)塊的第二次下載和解密會隨文件體積而增大,它們的時間開銷增大。

    5.3 去重效率分析

    本節(jié)在當(dāng)前用戶上傳數(shù)據(jù)或者主動備份數(shù)據(jù)后,對存儲網(wǎng)絡(luò)中存儲情況進(jìn)行分析。存儲網(wǎng)絡(luò)部分存儲情況如表6所示。其中,行表示上傳的次數(shù),列表示第幾次進(jìn)行備份。交叉部分S表示經(jīng)過若干次上傳和備份時,存儲網(wǎng)絡(luò)中存儲文件的總大小。其中,S針對本文方案,S針對不支持?jǐn)?shù)據(jù)去重的存儲系統(tǒng)。S表示文件的大小。ε為極小的值,表示文件鏈中除去完整數(shù)據(jù)以外的大小。由分析可得,將大小為S的文件在本文方案中進(jìn)行備份與去重后,無論上傳多少次,存儲網(wǎng)絡(luò)中存儲的空間不會超過4S+ε。因此,提高了存儲服務(wù)器的空間利用率。

    6 結(jié)束語

    本文提出了面向去中心化存儲的數(shù)據(jù)流行度去重模型。為了實(shí)現(xiàn)在不可信環(huán)境下對流行度數(shù)據(jù)執(zhí)行重復(fù)性檢測和流行度檢測,本文借助區(qū)塊鏈的不可竄改性與智能合約的不可抵賴性,將區(qū)塊鏈上的智能合約作為檢測機(jī)構(gòu),保障了檢測結(jié)果的真實(shí)性,使數(shù)據(jù)流行度與加密方式相匹配。為提高數(shù)據(jù)存儲的可靠性,本文提出文件鏈存儲結(jié)構(gòu),該結(jié)構(gòu)可以關(guān)注流行度數(shù)據(jù)去重,同時將文件構(gòu)建成適合去中心化存儲網(wǎng)絡(luò)存儲的結(jié)構(gòu)。此外,本文借助備份標(biāo)識,將存儲網(wǎng)絡(luò)虛擬劃分為兩個虛擬存儲空間,并面向兩個虛擬存儲空間,實(shí)現(xiàn)數(shù)據(jù)的檢測與存儲,滿足用戶備份需求。最后,安全性分析和實(shí)驗(yàn)表明本文方案具有可行性。

    參考文獻(xiàn):

    [1]Li Peng, Zheng Yan, Liang Xueqin, et al. SecDedup: secure data deduplication with dynamic auditing in the cloud[J]. Information Sciences, 2023, 644:119279.

    [2]Benil T, Jasper J. Blockchain based secure medical data outsourcing with data deduplication in cloud environment[J]. Computer Communications, 2023, 209: 1-13.

    [3]Prajapati P, Shah P. A review on secure data deduplication: cloud storage security issue[J]. Journal of King Saud University-Computer and Information Sciences, 2022,34(7): 3996-4007.

    [4]Douceur J R, Adya A, Bolosky W J, et al. Reclaiming space from duplicate files in a serverless distributed file system[C]//Proc of the 22nd International Conference on Distributed Computing Systems. Piscataway, NJ: IEEE Press, 2002: 617-624.

    [5]Xie Qingyuan, Zhang Chen, Jia Xiaohua. Security-aware and efficient data deduplication for edge-assisted cloud storage systems[J]. IEEE Trans on Services Computing, 2023,16(3): 2191-2202.

    [6]Stanek J, Sorniotti A, Androulaki E, et al. A secure data deduplication scheme for cloud storage[C]//Proc of International Conference on Financial Cryptography and Data Security. Berlin: Springer, 2014: 99-118.

    [7]Stanek J, Kencl L. Enhanced secure thresholded data deduplication scheme for cloud storage[J]. IEEE Trans on Dependable and Secure Computing, 2018,15(4): 694-707.

    [8]高文靜, 咸鶴群, 程潤輝. 基于雙層加密和密鑰共享的云數(shù)據(jù)去重方法[J]. 計算機(jī)學(xué)報, 2021,44(11): 2203-2215. (Gao Wenjing, Xian Hequn, Cheng Runhui. A cloud data deduplication method based on double-layered encryption and key sharing[J]. Chinese Journal of Computers, 2021,44(11): 2203-2215.)

    [9]高文靜, 咸鶴群, 田呈亮, 等. 基于雙層加密的云存儲數(shù)據(jù)去重方法[J]. 密碼學(xué)報, 2020,7(5): 698-712. (Gao Wenjing, Xian Hequn, Tian Chengliang, et al. A cloud storage deduplication me-thod based on double-layered encryption[J]. Journal of Cryptologic Research, 2020,7(5): 698-712.)

    [10]Ha Guanxiong, Chen Hang, Jia Chunfu, et al. A secure deduplication scheme based on data popularity with fully random tags[C]//Proc of the 20th International Conference on Trust, Security and Privacy in Computing and Communications. Piscataway, NJ: IEEE Press, 2021: 207-214.

    [11]哈冠雄, 賈巧雯, 陳杭, 等. 無第三方服務(wù)器的基于數(shù)據(jù)流行度的加密去重方案[J]. 通信學(xué)報, 2022,43(8): 17-29. (Ha Guanxiong, Jia Qiaowen, Chen Hang, et al. Data popularity-based encrypted deduplication scheme without third-party servers[J]. Journal on Communications, 2022,43(8): 17-29.)

    [12]Zhang Guipeng,Yang Zhenguo,Xie Haoran,et al.A secure authorized deduplication scheme for cloud data based on blockchain[J]. Information Processing & Management, 2021,58(3): 102510.

    [13]Wang Yunling, Miao Meixia, Wang Jianfeng, et al. Secure deduplication with efficient user revocation in cloud storage[J]. Computer Standards & Interfaces, 2021,78: 103523.

    [14]Sharma P, Jindal R, Borah M D. Blockchain-based decentralized architecture for cloud storage system[J]. Journal of Information Security and Applications, 2021, 62: 102970.

    [15]Qi Saiyu, Wei Wei, Wang Jianfeng, et al. Secure data deduplication with dynamic access control for mobile cloud storage[J]. IEEE Trans on Mobile Computing, 2024,23(4):2566-2582).

    [16]Li Jingyi, Wu Jigang, Chen Long, et al. Deduplication with blockchain for secure cloud storage[M]//Xu Zongben, Gao Xinbo, Miao Qiguang, et al. Big Data. Singapore: Springer, 2018: 558-570.

    [17]Benoit A, Hakem M, Robert Y. Fault tolerant scheduling of prece-dence task graphs on heterogeneous platforms[C]//Proc of IEEE International Symposium on Parallel and Distributed Processing. Pisca-taway, NJ: IEEE Press, 2008: 1-8.

    [18]Wang Shuli, Li Kenli, Mei Jing, et al. A task scheduling algorithm based on replication for maximizing reliability on heterogeneous computing systems[C]//Proc of IEEE International Parallel & Distributed Processing Symposium Workshops. Piscataway, NJ: IEEE Press, 2014: 1562-1571.

    [19]Nakamoto S. Bitcoin: a peer-to-peer electronic cash system[EB/OL]. (2008). https://bitcoin.org/en/bitcoin-paper.

    [20]Nizamuddin N, Salah K, Azad M A, et al. Decentralized document version control using Ethereum blockchain and IPFS[J]. Computers & Electrical Engineering, 2019,76: 183-197.

    [21]顏亮, 葛麗娜, 胡政. 基于區(qū)塊鏈的屬性基多關(guān)鍵詞排序搜索方案 [J]. 計算機(jī)應(yīng)用研究, 2023,40(7): 1952-1956,1963. (Yan Liang, Ge Lina, Hu Zhen. Blockchain-based attribute-based multi-keyword ranking search scheme[J]. Application Research of Computers, 2023,40(7): 1952-1956,1963.)

    [22]Zhang Guipeng,Xie Haoran,Yang Zhenguo,et al.BDKM:a blockchain-based secure deduplication scheme with reliable key management[J]. Neural Processing Letters, 2021,54: 2657-2674.

    [23]Benisi N Z, Aminian M, Javadi B. Blockchain-based decentralized storage networks: a survey[J]. Journal of Network and Computer Applications, 2020, 162: 102656.

    [24]Tian Guohua, Hu Yunhan, Wei Jianghong, et al. Blockchain-based secure deduplication and shared auditing in decentralized storage[J]. IEEE Trans on Dependable and Secure Computing, 2021,19(6): 3941-3954.

    [25]Li Yandong, Zhu Liehuang, Shen Meng, et al. CloudShare: towards a cost-efficient and privacy-preserving alliance cloud using permissioned blockchains[M]//Hu Jiankun, Khalil I,Tari Z, et al. Mobile Networks and Management. Cham: Springer International Publishing, 2018: 339-352.

    成年人黄色毛片网站| 日韩免费av在线播放| 久久久精品94久久精品| 久久婷婷成人综合色麻豆| 黑人欧美特级aaaaaa片| 国产高清激情床上av| 日韩中文字幕欧美一区二区| 黄色丝袜av网址大全| 亚洲人成77777在线视频| 91成人精品电影| 午夜激情av网站| 一本—道久久a久久精品蜜桃钙片| 久久国产精品大桥未久av| 日韩欧美一区视频在线观看| 欧美乱码精品一区二区三区| 久久九九热精品免费| 黄色视频不卡| 日本欧美视频一区| 国产精品免费视频内射| 国产高清videossex| 又大又爽又粗| 91精品国产国语对白视频| 亚洲一卡2卡3卡4卡5卡精品中文| 久久av网站| 丁香欧美五月| 在线观看免费高清a一片| 大码成人一级视频| 91国产中文字幕| 国产精品国产av在线观看| 色老头精品视频在线观看| av一本久久久久| 国产精品 国内视频| 国产成人系列免费观看| 国产成人精品久久二区二区免费| 亚洲国产欧美在线一区| 香蕉国产在线看| 老司机靠b影院| 久久午夜综合久久蜜桃| 亚洲人成77777在线视频| 精品亚洲成a人片在线观看| 亚洲精品久久午夜乱码| 视频区图区小说| 国产欧美日韩一区二区三| 国产精品免费视频内射| 久9热在线精品视频| 热99久久久久精品小说推荐| 久久毛片免费看一区二区三区| 久久久久久久久免费视频了| 交换朋友夫妻互换小说| 老熟女久久久| 两个人看的免费小视频| 国产精品二区激情视频| 国产日韩欧美视频二区| 美女扒开内裤让男人捅视频| 少妇裸体淫交视频免费看高清 | 制服人妻中文乱码| 免费观看人在逋| 国产av一区二区精品久久| 亚洲欧美日韩高清在线视频 | 日本五十路高清| 国产97色在线日韩免费| 一级,二级,三级黄色视频| 老司机影院毛片| 人人妻人人爽人人添夜夜欢视频| 色视频在线一区二区三区| 欧美精品一区二区免费开放| 人成视频在线观看免费观看| 视频区欧美日本亚洲| 午夜福利乱码中文字幕| 亚洲va日本ⅴa欧美va伊人久久| 精品久久久久久久毛片微露脸| 国产欧美日韩一区二区三区在线| 久久精品亚洲精品国产色婷小说| 国产人伦9x9x在线观看| 在线永久观看黄色视频| 黑人巨大精品欧美一区二区蜜桃| 成年人午夜在线观看视频| 午夜激情久久久久久久| 成人免费观看视频高清| 日本精品一区二区三区蜜桃| 国产不卡一卡二| 午夜福利视频在线观看免费| 18禁观看日本| 国产精品1区2区在线观看. | 水蜜桃什么品种好| 看免费av毛片| 99久久国产精品久久久| 夜夜爽天天搞| 天堂动漫精品| 午夜免费成人在线视频| 国产成+人综合+亚洲专区| 亚洲成国产人片在线观看| 久久久久久久精品吃奶| 免费在线观看完整版高清| 每晚都被弄得嗷嗷叫到高潮| 国产1区2区3区精品| 极品人妻少妇av视频| 99精国产麻豆久久婷婷| 精品一品国产午夜福利视频| 97人妻天天添夜夜摸| 制服人妻中文乱码| 国产极品粉嫩免费观看在线| 丝袜美腿诱惑在线| 另类亚洲欧美激情| 亚洲欧美激情在线| 老司机亚洲免费影院| 精品欧美一区二区三区在线| 久久久久视频综合| 久久久精品国产亚洲av高清涩受| 国产欧美日韩一区二区精品| 亚洲国产欧美一区二区综合| 午夜福利在线观看吧| 黄色视频,在线免费观看| av有码第一页| 丝瓜视频免费看黄片| 久久久精品区二区三区| 国产亚洲一区二区精品| 又黄又粗又硬又大视频| 国产精品一区二区免费欧美| e午夜精品久久久久久久| 别揉我奶头~嗯~啊~动态视频| 欧美成人免费av一区二区三区 | 女人久久www免费人成看片| 国产欧美日韩一区二区三| 一个人免费看片子| 国产精品影院久久| 免费在线观看影片大全网站| 国产精品久久久久久精品古装| 女人爽到高潮嗷嗷叫在线视频| 成人影院久久| 国产成人欧美在线观看 | 国产精品亚洲一级av第二区| av不卡在线播放| 亚洲欧美一区二区三区久久| 99精品在免费线老司机午夜| 在线播放国产精品三级| 日本撒尿小便嘘嘘汇集6| 日韩人妻精品一区2区三区| 免费看十八禁软件| 如日韩欧美国产精品一区二区三区| videosex国产| 不卡av一区二区三区| 不卡av一区二区三区| 国产av国产精品国产| 亚洲色图综合在线观看| 91精品国产国语对白视频| 国产亚洲午夜精品一区二区久久| kizo精华| 国产高清视频在线播放一区| 成年人午夜在线观看视频| 精品少妇一区二区三区视频日本电影| 国产成人欧美| 老熟妇仑乱视频hdxx| 淫妇啪啪啪对白视频| 欧美中文综合在线视频| 国产熟女午夜一区二区三区| 精品福利永久在线观看| 精品亚洲成国产av| 男男h啪啪无遮挡| 精品久久蜜臀av无| 女警被强在线播放| 男女边摸边吃奶| 色精品久久人妻99蜜桃| 女人久久www免费人成看片| 啦啦啦 在线观看视频| 99国产综合亚洲精品| 18禁美女被吸乳视频| 午夜福利在线免费观看网站| 欧美黑人精品巨大| 大型黄色视频在线免费观看| 又紧又爽又黄一区二区| 搡老熟女国产l中国老女人| 中文字幕最新亚洲高清| 国产成人免费观看mmmm| 亚洲色图 男人天堂 中文字幕| 久久久水蜜桃国产精品网| 亚洲中文av在线| 国产av精品麻豆| 老司机影院毛片| 精品人妻熟女毛片av久久网站| 欧美激情久久久久久爽电影 | 亚洲精品久久午夜乱码| 最近最新中文字幕大全电影3 | 韩国精品一区二区三区| 人人妻,人人澡人人爽秒播| 亚洲欧美日韩另类电影网站| 麻豆成人av在线观看| 亚洲欧洲日产国产| 亚洲国产欧美一区二区综合| 久热这里只有精品99| av在线播放免费不卡| 久久天堂一区二区三区四区| 国产成人欧美| 91九色精品人成在线观看| 在线播放国产精品三级| 亚洲精品乱久久久久久| 午夜福利在线观看吧| 亚洲九九香蕉| 久久久久精品人妻al黑| 亚洲国产看品久久| 少妇粗大呻吟视频| 欧美性长视频在线观看| 亚洲色图综合在线观看| 极品教师在线免费播放| 免费少妇av软件| 18禁观看日本| 麻豆成人av在线观看| 一区二区三区乱码不卡18| 99久久99久久久精品蜜桃| 亚洲精品国产一区二区精华液| 欧美精品av麻豆av| av福利片在线| 亚洲天堂av无毛| 国产精品久久久久久人妻精品电影 | 桃红色精品国产亚洲av| 亚洲天堂av无毛| 国产一区二区在线观看av| 美女扒开内裤让男人捅视频| 国产成人av激情在线播放| 熟女少妇亚洲综合色aaa.| 制服诱惑二区| 久久中文字幕人妻熟女| 久久国产精品大桥未久av| 国产午夜精品久久久久久| 国产成人精品在线电影| 免费看十八禁软件| 69精品国产乱码久久久| 亚洲伊人久久精品综合| 久久精品国产99精品国产亚洲性色 | 欧美日韩亚洲综合一区二区三区_| 亚洲av日韩精品久久久久久密| 免费观看av网站的网址| 18在线观看网站| 成人三级做爰电影| 人人澡人人妻人| 欧美精品av麻豆av| 一区二区av电影网| 国产av又大| 免费不卡黄色视频| 69精品国产乱码久久久| 男女床上黄色一级片免费看| 亚洲av美国av| 亚洲中文av在线| 美女高潮到喷水免费观看| 国产一区二区三区综合在线观看| 人人妻人人爽人人添夜夜欢视频| 国产日韩欧美在线精品| 国产一区有黄有色的免费视频| 久久人人97超碰香蕉20202| 老司机靠b影院| 成人av一区二区三区在线看| 成人特级黄色片久久久久久久 | 国产精品久久久人人做人人爽| 精品少妇一区二区三区视频日本电影| 极品人妻少妇av视频| 午夜福利免费观看在线| 国产欧美日韩一区二区三| 中文字幕制服av| 国产亚洲一区二区精品| 国产日韩欧美视频二区| 在线观看免费高清a一片| 久久青草综合色| 久久ye,这里只有精品| 法律面前人人平等表现在哪些方面| 下体分泌物呈黄色| 精品视频人人做人人爽| 夜夜爽天天搞| 久久ye,这里只有精品| 在线观看免费视频日本深夜| 国产在线一区二区三区精| 久久精品国产亚洲av香蕉五月 | 丝袜喷水一区| 国产精品自产拍在线观看55亚洲 | 亚洲精品国产一区二区精华液| 高清在线国产一区| 王馨瑶露胸无遮挡在线观看| 久久国产精品人妻蜜桃| 丰满人妻熟妇乱又伦精品不卡| 国产精品电影一区二区三区 | 人人妻人人澡人人爽人人夜夜| 中文字幕人妻丝袜一区二区| 色在线成人网| 亚洲精品国产区一区二| 不卡一级毛片| 欧美+亚洲+日韩+国产| 欧美日韩亚洲高清精品| 欧美 亚洲 国产 日韩一| 美国免费a级毛片| 女人爽到高潮嗷嗷叫在线视频| 一区二区三区国产精品乱码| 国产精品 欧美亚洲| 超碰97精品在线观看| 少妇猛男粗大的猛烈进出视频| 高潮久久久久久久久久久不卡| 久久国产精品人妻蜜桃| www.精华液| 国产精品 欧美亚洲| 亚洲国产av影院在线观看| 交换朋友夫妻互换小说| 久久亚洲真实| 男女下面插进去视频免费观看| 满18在线观看网站| 亚洲,欧美精品.| 丝袜喷水一区| 波多野结衣av一区二区av| 欧美+亚洲+日韩+国产| 岛国在线观看网站| 欧美精品啪啪一区二区三区| 女同久久另类99精品国产91| 日本欧美视频一区| 国产在线免费精品| 国产有黄有色有爽视频| 男人操女人黄网站| 日本一区二区免费在线视频| 国产精品秋霞免费鲁丝片| 精品国产一区二区久久| 欧美精品一区二区大全| 后天国语完整版免费观看| aaaaa片日本免费| 我的亚洲天堂| 午夜激情久久久久久久| 黄色毛片三级朝国网站| 正在播放国产对白刺激| 精品午夜福利视频在线观看一区 | 欧美日韩精品网址| xxxhd国产人妻xxx| 自线自在国产av| 亚洲av欧美aⅴ国产| 怎么达到女性高潮| 日本五十路高清| 日本黄色日本黄色录像| 中亚洲国语对白在线视频| 免费在线观看黄色视频的| tocl精华| 亚洲熟妇熟女久久| 久久中文字幕一级| 国产片内射在线| 色尼玛亚洲综合影院| 桃红色精品国产亚洲av| 少妇的丰满在线观看| 一级毛片女人18水好多| 少妇 在线观看| 美女视频免费永久观看网站| 80岁老熟妇乱子伦牲交| 亚洲精品中文字幕一二三四区 | 性色av乱码一区二区三区2| 90打野战视频偷拍视频| cao死你这个sao货| 久久久久国内视频| 99久久国产精品久久久| www.精华液| 国产成人免费无遮挡视频| 五月天丁香电影| 狂野欧美激情性xxxx| 欧美另类亚洲清纯唯美| 久久人妻av系列| 无限看片的www在线观看| 精品久久久精品久久久| 一本综合久久免费| 国产精品1区2区在线观看. | 中文字幕另类日韩欧美亚洲嫩草| 久久精品国产亚洲av香蕉五月 | e午夜精品久久久久久久| 国产精品 欧美亚洲| 一区二区三区国产精品乱码| 日韩免费高清中文字幕av| 免费在线观看影片大全网站| 免费看a级黄色片| 亚洲色图av天堂| 日韩一区二区三区影片| 999久久久精品免费观看国产| 国产一区有黄有色的免费视频| 亚洲熟妇熟女久久| 人妻一区二区av| 999久久久国产精品视频| 亚洲成av片中文字幕在线观看| avwww免费| 一级,二级,三级黄色视频| 久久 成人 亚洲| 亚洲国产看品久久| 高清毛片免费观看视频网站 | 亚洲va日本ⅴa欧美va伊人久久| 亚洲精品久久成人aⅴ小说| 国产色视频综合| 不卡av一区二区三区| 成年人免费黄色播放视频| 99久久国产精品久久久| 国产亚洲精品一区二区www | 不卡av一区二区三区| 日韩免费av在线播放| 国产精品.久久久| 亚洲国产欧美在线一区| 亚洲精品中文字幕在线视频| 色94色欧美一区二区| 99久久国产精品久久久| 久久国产亚洲av麻豆专区| 黑人巨大精品欧美一区二区蜜桃| 亚洲av电影在线进入| e午夜精品久久久久久久| 国产成+人综合+亚洲专区| 色在线成人网| 久久人妻熟女aⅴ| 国产日韩一区二区三区精品不卡| 女人高潮潮喷娇喘18禁视频| 欧美日韩成人在线一区二区| 国产亚洲精品一区二区www | 动漫黄色视频在线观看| 日韩三级视频一区二区三区| 制服诱惑二区| 男男h啪啪无遮挡| av欧美777| 国产一区二区在线观看av| 亚洲欧美精品综合一区二区三区| 亚洲av日韩精品久久久久久密| 多毛熟女@视频| 久久人人97超碰香蕉20202| 亚洲精品自拍成人| 我的亚洲天堂| 亚洲欧美激情在线| 日韩三级视频一区二区三区| 国产精品亚洲av一区麻豆| 国产精品98久久久久久宅男小说| 亚洲久久久国产精品| 黄色片一级片一级黄色片| 久久国产精品影院| 久久久国产精品麻豆| 丰满迷人的少妇在线观看| 欧美在线黄色| 18禁黄网站禁片午夜丰满| 成人特级黄色片久久久久久久 | 国产区一区二久久| 中文字幕精品免费在线观看视频| 久久中文看片网| 一区在线观看完整版| 在线十欧美十亚洲十日本专区| 五月开心婷婷网| 午夜激情久久久久久久| 亚洲 国产 在线| 日韩大码丰满熟妇| 国产精品国产高清国产av | 考比视频在线观看| 精品国产乱码久久久久久小说| 两性午夜刺激爽爽歪歪视频在线观看 | 国产av一区二区精品久久| 性少妇av在线| 动漫黄色视频在线观看| 中文字幕人妻丝袜制服| 国产精品一区二区在线不卡| 国产欧美日韩一区二区三区在线| 亚洲九九香蕉| 国产高清国产精品国产三级| 成人av一区二区三区在线看| 国产精品 国内视频| 9191精品国产免费久久| av视频免费观看在线观看| 久久这里只有精品19| 欧美日韩精品网址| 视频区欧美日本亚洲| 国产区一区二久久| 亚洲熟女毛片儿| 男女之事视频高清在线观看| 波多野结衣一区麻豆| 成年版毛片免费区| 99国产综合亚洲精品| 精品少妇久久久久久888优播| 日韩成人在线观看一区二区三区| 亚洲一区二区三区欧美精品| 黄色毛片三级朝国网站| av在线播放免费不卡| 欧美精品一区二区免费开放| 午夜91福利影院| 欧美黑人欧美精品刺激| 免费久久久久久久精品成人欧美视频| 黑人巨大精品欧美一区二区蜜桃| 这个男人来自地球电影免费观看| 热99国产精品久久久久久7| 女性生殖器流出的白浆| 久久ye,这里只有精品| 久久婷婷成人综合色麻豆| 纵有疾风起免费观看全集完整版| 午夜日韩欧美国产| 久久久久精品人妻al黑| 国产高清videossex| 搡老岳熟女国产| 无人区码免费观看不卡 | 欧美日韩亚洲综合一区二区三区_| 精品一区二区三区av网在线观看 | 国产午夜精品久久久久久| 国产97色在线日韩免费| 欧美日韩精品网址| 成人三级做爰电影| 91字幕亚洲| 久久九九热精品免费| 中文字幕精品免费在线观看视频| kizo精华| 一本—道久久a久久精品蜜桃钙片| 激情视频va一区二区三区| 久久中文字幕人妻熟女| 中文字幕最新亚洲高清| 午夜精品国产一区二区电影| 国产福利在线免费观看视频| 怎么达到女性高潮| 欧美av亚洲av综合av国产av| 成年人黄色毛片网站| 亚洲精品av麻豆狂野| av视频免费观看在线观看| 日本wwww免费看| 777久久人妻少妇嫩草av网站| 99re6热这里在线精品视频| 777米奇影视久久| 亚洲精品在线美女| 交换朋友夫妻互换小说| 亚洲午夜理论影院| 国产在线视频一区二区| 男女高潮啪啪啪动态图| 人妻 亚洲 视频| 欧美中文综合在线视频| 国产又爽黄色视频| 成年女人毛片免费观看观看9 | 91精品国产国语对白视频| 国产精品国产av在线观看| av片东京热男人的天堂| 精品国产超薄肉色丝袜足j| 啪啪无遮挡十八禁网站| 亚洲va日本ⅴa欧美va伊人久久| 亚洲av电影在线进入| 亚洲国产欧美网| 亚洲中文av在线| 日日夜夜操网爽| 日本黄色日本黄色录像| 国产一区二区 视频在线| 国产欧美日韩一区二区三| 国产激情久久老熟女| 啦啦啦免费观看视频1| 久久这里只有精品19| 黄色 视频免费看| 中亚洲国语对白在线视频| 女性被躁到高潮视频| 大陆偷拍与自拍| 搡老熟女国产l中国老女人| 性高湖久久久久久久久免费观看| 9色porny在线观看| 国产伦理片在线播放av一区| 久久国产精品人妻蜜桃| 免费在线观看完整版高清| 久久午夜综合久久蜜桃| 1024香蕉在线观看| 久久午夜综合久久蜜桃| 欧美老熟妇乱子伦牲交| svipshipincom国产片| 欧美精品高潮呻吟av久久| 国产区一区二久久| 午夜精品国产一区二区电影| 美女主播在线视频| 女人被躁到高潮嗷嗷叫费观| 久9热在线精品视频| 久久久久久久大尺度免费视频| 欧美日韩成人在线一区二区| 亚洲五月色婷婷综合| 性色av乱码一区二区三区2| 天天躁日日躁夜夜躁夜夜| 俄罗斯特黄特色一大片| 咕卡用的链子| 亚洲九九香蕉| a级毛片黄视频| 免费看十八禁软件| 亚洲专区国产一区二区| 又大又爽又粗| 国产精品亚洲一级av第二区| 日韩大码丰满熟妇| 建设人人有责人人尽责人人享有的| 午夜福利在线观看吧| 一二三四在线观看免费中文在| 在线看a的网站| 欧美激情久久久久久爽电影 | 欧美日韩亚洲综合一区二区三区_| 丰满少妇做爰视频| 99国产综合亚洲精品| 久久精品亚洲精品国产色婷小说| 黄色视频,在线免费观看| 一区二区三区乱码不卡18| 啦啦啦 在线观看视频| 高潮久久久久久久久久久不卡| 精品一品国产午夜福利视频| 女警被强在线播放| 999精品在线视频| 一区二区三区精品91| 黑人操中国人逼视频| 人妻一区二区av| 精品一区二区三区av网在线观看 | 久久天躁狠狠躁夜夜2o2o| 黄色视频在线播放观看不卡| 亚洲精华国产精华精| 国产精品亚洲一级av第二区| 日韩大码丰满熟妇| 建设人人有责人人尽责人人享有的| 这个男人来自地球电影免费观看| 女同久久另类99精品国产91| 如日韩欧美国产精品一区二区三区| 中文字幕制服av| 精品一区二区三区四区五区乱码| 91成人精品电影| 女人精品久久久久毛片| 天天躁狠狠躁夜夜躁狠狠躁| 久久久久久亚洲精品国产蜜桃av| 亚洲美女黄片视频| 日本vs欧美在线观看视频| 亚洲av成人不卡在线观看播放网| 国产欧美日韩综合在线一区二区| 不卡一级毛片| 欧美日韩福利视频一区二区| 大型黄色视频在线免费观看| 日本wwww免费看| 丁香六月天网| 婷婷丁香在线五月|