一種基于私有信息提取的云計(jì)算私有范圍的查詢方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全技術(shù)領(lǐng)域,特別是涉及一種基于私有信息提取的云計(jì)算私有范圍的查詢方法。
【背景技術(shù)】
[0002]隨著云計(jì)算技術(shù)的出現(xiàn)與發(fā)展,數(shù)據(jù)擁有者可以將自己的數(shù)據(jù)外包至云服務(wù)器端,利用云服務(wù)器強(qiáng)大的存儲(chǔ)與計(jì)算能力來(lái)協(xié)助管理數(shù)據(jù),從而給數(shù)據(jù)擁有者帶來(lái)極大的便利。然而,由于用戶數(shù)據(jù)集中可能會(huì)包含關(guān)于自身的敏感信息,為了避免諸如醫(yī)療記錄、經(jīng)濟(jì)收入等方面隱私信息泄露所會(huì)帶來(lái)的不可預(yù)知的危害,用戶在上傳這些數(shù)據(jù)之前必須將它們加密。然而,這樣無(wú)疑會(huì)極大的降低數(shù)據(jù)的使用性。具體而言如圖1所示,如何設(shè)計(jì)安全協(xié)議使得用戶與云服務(wù)器能夠高效的協(xié)作完成對(duì)用戶密文數(shù)據(jù)的查詢工作,并同時(shí)保證安全協(xié)議查詢出來(lái)的結(jié)果與用戶在原始明文上查詢結(jié)果一致是目前云計(jì)算中的研究熱點(diǎn)與難點(diǎn)。
[0003]為了能夠有效支持在密文數(shù)據(jù)上的不同查詢功能,目前已經(jīng)存在多種可查詢加密方案。然而,這些方案中的絕大多數(shù)僅僅能夠支持相當(dāng)簡(jiǎn)單的查詢工作,例如關(guān)鍵字查詢以及單維范圍查詢,而對(duì)密文數(shù)據(jù)上的多維范圍查詢并不適用??紤]到在現(xiàn)實(shí)中數(shù)據(jù)集一般情況下均是多維的,而且常用的數(shù)據(jù)庫(kù)SQL查詢?nèi)蝿?wù)也可以有效的轉(zhuǎn)化為多維范圍查詢問(wèn)題。因此,如何設(shè)計(jì)出一種高效而又安全的多維范圍查詢協(xié)議在實(shí)際生活中具有相當(dāng)重要的意義。
[0004]Boneh 提出了隱向量加密(D.Boneh.Funct1nal Encrypt1n: A New Vis1nfor Public Key Cryptography.Communicat1ns of the ACM, 55 (11):56 - 64, 2012.),這是一種預(yù)測(cè)加密方案,在理論上可以被用作支持密文上的多維范圍查詢操作。然而,該種方案基于公鑰方法,直接利用這兩種方案去實(shí)現(xiàn)多維范圍查詢工作必然會(huì)帶來(lái)線性的查詢復(fù)雜度。考慮到現(xiàn)實(shí)數(shù)據(jù)集中的數(shù)據(jù)點(diǎn)數(shù)量一般而言都非常之大(百萬(wàn)量級(jí)甚至更大)。Wang等人利用一種新穎的方式將隱向量加密融入至安全多維范圍查詢中(Wang,B.Maple: Scalable Mult1-Dimens1nal Range Search over Encrypted Cloud Data withTree-based Index.ACM ASIACCS,2014.),并由此實(shí)現(xiàn)了首個(gè)不會(huì)泄露任何單維信息并且能夠在對(duì)數(shù)計(jì)算復(fù)雜度內(nèi)完成多維范圍查詢的安全系統(tǒng)Maple。盡管Maple相對(duì)于以前的工作而言具備更強(qiáng)的安全性保證,然而,這項(xiàng)工作在密碼學(xué)領(lǐng)域來(lái)說(shuō)仍然不是完全安全的。比如,云服務(wù)器可以在每次查詢中清晰得知用戶的查詢路徑以及查詢結(jié)果的密文形式。利用這些信息,云服務(wù)器仍能夠利用統(tǒng)計(jì)分析對(duì)用戶數(shù)據(jù)分布做出準(zhǔn)確的預(yù)測(cè)。更為嚴(yán)重的是,云服務(wù)器可以通過(guò)用戶多次查詢的查詢路徑與結(jié)果來(lái)計(jì)算出用戶所采用加密密鑰的私鑰,從而解密出用戶的所有數(shù)據(jù)內(nèi)容。
[0005]綜上所述,對(duì)于云計(jì)算中私有范圍查詢這一關(guān)鍵問(wèn)題,目前已有的相關(guān)研究成果并不完備,主要體現(xiàn)在所提出的查詢方案安全隱患大以及運(yùn)行效率低兩個(gè)方面的問(wèn)題。因此,如何針對(duì)云計(jì)算范圍查詢的問(wèn)題特征,給出安全而又高效的私有范圍查詢方法仍然是目前需要研究的重點(diǎn)內(nèi)容。
【發(fā)明內(nèi)容】
[0006]本發(fā)明主要解決的技術(shù)問(wèn)題是提供一種基于私有信息提取的云計(jì)算私有范圍的查詢方法,通過(guò)采用基于私有信息提取技術(shù)來(lái)完成下層節(jié)點(diǎn)的遍歷,實(shí)現(xiàn)用戶可以在不向服務(wù)器泄露任何關(guān)于自身所持有的鍵值的前提下,高效的得到服務(wù)器上所存儲(chǔ)的此鍵值所對(duì)應(yīng)的實(shí)際內(nèi)容,采用群編碼技術(shù)可以有效地改進(jìn)私有信息提取協(xié)議,從而極大地提升采用PIR的私有范圍查詢的效率,在基于私有信息提取的云計(jì)算私有范圍的查詢方法的普及上有著廣泛的市場(chǎng)前景。
[0007]為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種基于私有信息提取的云計(jì)算私有范圍的查詢方法,包括以下步驟:
(1)初始化:
(a)云用戶首先產(chǎn)生加密密鑰,將自身待存儲(chǔ)的數(shù)據(jù)通過(guò)塊加密后,上傳到云服務(wù)器,同時(shí)刪除本地?cái)?shù)據(jù),
(b)云服務(wù)器對(duì)加密樹(shù)上的高層節(jié)點(diǎn)與其孩子節(jié)點(diǎn)構(gòu)造拓?fù)浣Y(jié)構(gòu)關(guān)系,并對(duì)低層的節(jié)點(diǎn)進(jìn)行群編碼;
(2)協(xié)作查詢:
(C)當(dāng)需要進(jìn)行范圍查詢時(shí),云用戶向云服務(wù)器提供查詢請(qǐng)求,
(d)云服務(wù)器將加密樹(shù)中的高層節(jié)點(diǎn)以及這些節(jié)點(diǎn)之間的拓?fù)浣Y(jié)構(gòu)關(guān)系發(fā)送給數(shù)據(jù)擁有者,同時(shí)還發(fā)送在高層結(jié)構(gòu)中的底層節(jié)點(diǎn)的孩子節(jié)點(diǎn)的索引標(biāo)號(hào),
(e)云用戶從根節(jié)點(diǎn)開(kāi)始解密,并判斷根節(jié)點(diǎn)中哪些數(shù)據(jù)項(xiàng)與查詢區(qū)域存在交集,從而決定在下一層中哪些節(jié)點(diǎn)被選中,
(f)云用戶得知下層節(jié)點(diǎn)中的哪些節(jié)點(diǎn)需要遍歷后,通過(guò)與云服務(wù)器協(xié)作運(yùn)行PIR協(xié)議,從而可以在不向云服務(wù)器提供任何私有信息的前提下獲取這些所需節(jié)點(diǎn)的密文值,
(g)云用戶對(duì)這些節(jié)點(diǎn)的密文值進(jìn)行解密并判斷下層節(jié)點(diǎn)中的哪些節(jié)點(diǎn)可能會(huì)與查詢區(qū)域存在交集,若未到最底層葉子節(jié)點(diǎn),則返回步驟(f)繼續(xù)查詢,直至查詢到最底層葉子節(jié)點(diǎn),
(h )云用戶查詢到最底層葉子節(jié)點(diǎn),獲取到所查范圍的查詢結(jié)果,查詢結(jié)束。
[0008]在本發(fā)明一個(gè)較佳實(shí)施例中,步驟(a)中的所述塊加密方式為AES加密方式的計(jì)數(shù)器模式。
[0009]在本發(fā)明一個(gè)較佳實(shí)施例中,步驟(a)中的所述塊加密方式的加密密鑰長(zhǎng)度為128比特。
[0010]在本發(fā)明一個(gè)較佳實(shí)施例中,步驟(b)中的所述群編碼的分段數(shù)為1-13。
[0011]本發(fā)明的有益效果是:本發(fā)明基于私有信息提取的云計(jì)算私有范圍的查詢方法基于私有信息提取技術(shù)來(lái)完成下層節(jié)點(diǎn)的遍歷,實(shí)現(xiàn)用戶可以在不向服務(wù)器泄露任何關(guān)于自身所持有的鍵值的前提下,高效的得到服務(wù)器上所存儲(chǔ)的此鍵值所對(duì)應(yīng)的實(shí)際內(nèi)容,在保證查詢方案安全的同時(shí),能夠大幅降低云計(jì)算中私有范圍查詢的開(kāi)銷、提升私有范圍查詢效率,有著很好的實(shí)際應(yīng)用價(jià)值,在基于私有信息提取的云計(jì)算私有范圍的查詢方法的普及上有著廣泛的市場(chǎng)前景。
【附圖說(shuō)明】
[0012]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖,其中:
圖1是現(xiàn)有技術(shù)云計(jì)算查詢方法的結(jié)構(gòu)示意圖;
圖2是本發(fā)明基于私有信息提取的云計(jì)算私有范圍的查詢方法一較佳實(shí)施例的流程圖;
圖3是本發(fā)明基于私有信息提取的云計(jì)算私有范圍的查詢方法一較佳實(shí)施例的群編碼的分段數(shù)的關(guān)于時(shí)間復(fù)雜度的實(shí)驗(yàn)統(tǒng)計(jì)圖;
圖4是本發(fā)明基于私有信息提取的云計(jì)算私有范圍的查詢方法一較佳實(shí)施例的群編碼的分段數(shù)的關(guān)于通信復(fù)雜度的實(shí)驗(yàn)統(tǒng)計(jì)圖。
【具體實(shí)施方式】
[0013]下面將對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0014]參閱圖2-圖4,本發(fā)明實(shí)施例包括:
一種基于私有信息提取的云計(jì)算私有范圍的查詢方法,包括以下步驟:
(1)初始化:
(a)云用戶首先產(chǎn)生加密密鑰,將自身待存儲(chǔ)的數(shù)據(jù)通過(guò)塊加密后,上傳到云服務(wù)器,同時(shí)刪除本地?cái)?shù)據(jù),
(b)云服務(wù)器對(duì)加密樹(shù)上的高層節(jié)點(diǎn)與其孩子節(jié)點(diǎn)構(gòu)造拓?fù)浣Y(jié)構(gòu)關(guān)系,并對(duì)低層的節(jié)點(diǎn)進(jìn)行群編碼;
(2)協(xié)作查詢:
(C)當(dāng)需要進(jìn)行范圍查詢時(shí),云用戶向云服務(wù)器提供查詢請(qǐng)求,當(dāng)數(shù)據(jù)擁有者想進(jìn)行一次范圍查詢時(shí),他并不向云服務(wù)器提供關(guān)于查詢范圍的任何信息,取而代之的是,他僅僅需要向云服務(wù)器提供查詢請(qǐng)求,
(d)云服務(wù)器將加密樹(shù)中的高層節(jié)點(diǎn)以及這些節(jié)點(diǎn)之間的拓?fù)浣Y(jié)構(gòu)關(guān)系發(fā)送給數(shù)據(jù)擁有者,同時(shí)還發(fā)送在高層結(jié)構(gòu)中的底層節(jié)點(diǎn)的孩子節(jié)點(diǎn)的索引標(biāo)號(hào),
(e)云用戶從根節(jié)點(diǎn)開(kāi)始解密,并判斷根節(jié)點(diǎn)中哪些數(shù)據(jù)項(xiàng)與查詢區(qū)域存在交集,從而決定在下一層中哪些節(jié)點(diǎn)被選中,
(f)云用戶得知下層節(jié)點(diǎn)中的哪些節(jié)點(diǎn)需要遍歷后,通過(guò)與云服務(wù)器協(xié)作運(yùn)行PIR協(xié)議,從而可以在不向云服務(wù)器提供任何私有信息的前提下獲取這些所需節(jié)點(diǎn)的密文值,云用戶和云服務(wù)器協(xié)同運(yùn)行PIR協(xié)議,使得用戶可以在不向服務(wù)器泄露所需數(shù)據(jù)的同時(shí),得到服務(wù)器上所存儲(chǔ)的內(nèi)容,從而可以保證云用戶的數(shù)據(jù)隱私安全,
(g)云用戶對(duì)這些節(jié)點(diǎn)的密文值進(jìn)行解密并判斷下層節(jié)點(diǎn)中的哪些節(jié)點(diǎn)可能會(huì)與查詢區(qū)域存在交集,若未到最底層葉子節(jié)點(diǎn),則返回步驟(f)繼續(xù)查詢,直至查詢到最底層葉子節(jié)點(diǎn),
(h)云用戶查詢到最底層葉子節(jié)點(diǎn),獲取到所查范圍的查詢結(jié)果,查詢結(jié)束。
[0015]優(yōu)選地,步驟(a)中的所述塊加密方式為AES加密方式的計(jì)數(shù)器模式,云用戶對(duì)自身數(shù)據(jù)加密的采用塊加密方式來(lái)完成對(duì)用戶私有數(shù)據(jù)的加密,具體而言,將選用計(jì)數(shù)器模型下的AES加密方式,這與之前所有工作所采用的加密方案均不同,因?yàn)锳ES加密不具有任何同態(tài)性質(zhì),從而導(dǎo)致云服務(wù)器端并不能夠獨(dú)立完成查詢?nèi)蝿?wù)。
[0016]優(yōu)選地,步驟(a)中的所述塊加密方式的加密密鑰長(zhǎng)度為128比特。
[0017]優(yōu)選地,步驟(b)中的所