專利名稱:一種云計(jì)算數(shù)據(jù)安全支撐平臺(tái)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)軟件相關(guān)領(lǐng)域,具體涉及一種云計(jì)算數(shù)據(jù)安全支撐平臺(tái),屬于 信息安全技術(shù)領(lǐng)域。
背景技術(shù):
云計(jì)算是當(dāng)前信息技術(shù)領(lǐng)域的熱門話題,是產(chǎn)業(yè)界、學(xué)術(shù)界、政府等各界均十分關(guān) 注的焦點(diǎn),各種類型的云基礎(chǔ)設(shè)施平臺(tái)、云服務(wù)、云存儲(chǔ)系統(tǒng)等層出不窮。但是當(dāng)前云計(jì)算 的發(fā)展仍面臨一系列技術(shù)挑戰(zhàn),而安全性是限制其發(fā)展的重要瓶頸之一。云計(jì)算使用者擔(dān) 心將自己的數(shù)據(jù)與代碼交付云服務(wù)商后,后者具有優(yōu)先訪問(wèn)權(quán),自己將缺少對(duì)數(shù)據(jù)控制權(quán) 與安全保障能力。GartnerOS年的調(diào)查報(bào)告顯示,70%以上的企業(yè)CTO沒(méi)有采用云計(jì)算的 首要原因在于對(duì)企業(yè)數(shù)據(jù)的安全性與隱私性存在顧慮。而近來(lái)屢屢發(fā)生的云服務(wù)平臺(tái)安全 事件也更加劇了人們的這種擔(dān)憂,顯示出云計(jì)算目前來(lái)看還不是一種成熟的服務(wù)。亞馬遜、 Google、微軟三個(gè)力挺云計(jì)算的IT巨鱷紛紛都已出現(xiàn)了嚴(yán)重的云計(jì)算問(wèn)題,如2009年3月 Google發(fā)生大批用戶文件外泄事件,2009年2月和7月亞馬遜的“簡(jiǎn)單存儲(chǔ)服務(wù)”(Simple Storage krvice,簡(jiǎn)稱兩次中斷導(dǎo)致依賴于網(wǎng)絡(luò)單一存儲(chǔ)服務(wù)的網(wǎng)站被迫癱瘓,以及 微軟的數(shù)據(jù)中心服務(wù)器大規(guī)模宕機(jī)導(dǎo)致T-Mobile公司數(shù)以千計(jì)的Sidekick手機(jī)用戶無(wú)法 訪問(wèn)自己的數(shù)據(jù)等等??梢?jiàn),要讓企業(yè)和組織大規(guī)模應(yīng)用云計(jì)算技術(shù)與平臺(tái),放心地將自己 的數(shù)據(jù)交付與云服務(wù)提供商進(jìn)行管理,解決云計(jì)算中存在的數(shù)據(jù)安全問(wèn)題刻不容緩。基本數(shù)據(jù)安全需求包括數(shù)據(jù)機(jī)密性與完整性。當(dāng)前普遍采用的機(jī)密性保護(hù)方法是 數(shù)據(jù)加密或者訪問(wèn)控制機(jī)制。在云計(jì)算環(huán)境中,由于云服務(wù)提供商不可信,導(dǎo)致訪問(wèn)控制實(shí) 施部件運(yùn)行在不可信的環(huán)境中,無(wú)法正確實(shí)施用戶制定的訪問(wèn)控制策略。而另一種方式,數(shù) 據(jù)加密可以有效的防范非授權(quán)傳播。目前已有部分云存儲(chǔ)系統(tǒng)支持密文文檔。但數(shù)據(jù)加密 帶來(lái)了密文狀態(tài)下難以實(shí)現(xiàn)文檔快速檢索與查找的問(wèn)題。對(duì)于云計(jì)算中海量數(shù)據(jù)而言,如 果沒(méi)有相應(yīng)的密文檢索方法與高效的實(shí)施架構(gòu)支撐,系統(tǒng)可用性將急劇下降,云用戶同樣 難以接受。而當(dāng)前驗(yàn)證數(shù)據(jù)完整性的基本方法是采用各種散列算法或簽名算法,但在云計(jì) 算系統(tǒng)中,如果云服務(wù)提供商事先計(jì)算并保留了文檔(D)的Hash值H(D),每次根據(jù)該值生 成簽名,那么最終的簽名結(jié)果就無(wú)法反映當(dāng)前文檔的真實(shí)情況。用戶可能將一直無(wú)法發(fā)現(xiàn) 文檔被篡改,直到訪問(wèn)文檔失敗為止。因此,僅靠現(xiàn)有的數(shù)據(jù)機(jī)密性保護(hù)方法與完整性保護(hù)方法難以滿足云計(jì)算中數(shù)據(jù) 安全保護(hù)需求,迫切需要一種適用于云計(jì)算計(jì)算環(huán)境與安全威脅模型的機(jī)制,為云計(jì)算系 統(tǒng)中海量數(shù)據(jù)提供用戶可信賴的安全支撐。
發(fā)明內(nèi)容
針對(duì)云計(jì)算系統(tǒng)尤其是云存儲(chǔ)系統(tǒng)中存在的各種數(shù)據(jù)安全風(fēng)險(xiǎn),本發(fā)明提出一種 云計(jì)算數(shù)據(jù)安全支撐平臺(tái),在不依賴于云服務(wù)提供商可靠性的前提下,為云用戶提供數(shù)據(jù) 機(jī)密性與完整性保護(hù)。
本發(fā)明的技術(shù)方案為—種云計(jì)算數(shù)據(jù)安全支撐平臺(tái),其特征在于包括云計(jì)算或云存儲(chǔ)系統(tǒng)、云數(shù)據(jù)安 全服務(wù)系統(tǒng)、安全云客戶端;所述云計(jì)算或云存儲(chǔ)系統(tǒng)、云數(shù)據(jù)安全服務(wù)系統(tǒng)、安全云客戶 端之間通過(guò)網(wǎng)絡(luò)互連;其中,所述安全云客戶端,用于將數(shù)據(jù)利用文檔密鑰加密后上傳給所述云計(jì)算或云存儲(chǔ) 系統(tǒng),同時(shí)提取上傳數(shù)據(jù)的元信息,并利用元信息密鑰對(duì)提取的元信息加密后發(fā)送給所述 云數(shù)據(jù)安全服務(wù)系統(tǒng)、利用主密鑰加密所述文檔密鑰和所述元信息密鑰后發(fā)送給所述云數(shù) 據(jù)安全服務(wù)系統(tǒng);所述云計(jì)算或云存儲(chǔ)系統(tǒng),用于存儲(chǔ)所述安全云客戶端上傳的數(shù)據(jù);所述云數(shù)據(jù)安全服務(wù)系統(tǒng),用于存儲(chǔ)所述安全云客戶端加密上傳的元信息和密鑰 信息,并提供文件訪問(wèn)支持,以及密文檢索和數(shù)據(jù)驗(yàn)證服務(wù)支持。進(jìn)一步的,所述安全云客戶端包括一數(shù)據(jù)加解密組件、一密鑰管理組件、一文檔管 理組件、一數(shù)據(jù)檢索組件、一數(shù)據(jù)驗(yàn)證組件、一應(yīng)用程序入口組件;其中,所述應(yīng)用程序入口組件為用戶提供密文文檔的管理、檢索和驗(yàn)證界面;所述密鑰管理組件用于從所述云數(shù)據(jù)安全服務(wù)系統(tǒng)獲取加密的文檔密鑰和加密 的元信息密鑰;所述數(shù)據(jù)加解密組件用于對(duì)獲取的加密密鑰進(jìn)行解密,得到文檔密鑰和元信息密 鑰,并利用文檔密鑰和元信息密鑰分別對(duì)文檔和元信息進(jìn)行加解密;所述文檔管理組件用于對(duì)文檔進(jìn)行上傳、下載、復(fù)制、剪切、刪除;所述數(shù)據(jù)檢索組件用于構(gòu)建上傳文檔的元信息并將其上傳給所述云數(shù)據(jù)安全服 務(wù)系統(tǒng),以及對(duì)云存儲(chǔ)密文文檔的檢索;所述數(shù)據(jù)驗(yàn)證組件用于構(gòu)建上傳文檔的驗(yàn)證元信息并將其上傳給所述云數(shù)據(jù)安 全服務(wù)系統(tǒng),以及對(duì)云存儲(chǔ)密文文檔的完整性驗(yàn)證。進(jìn)一步的,所述云數(shù)據(jù)安全服務(wù)系統(tǒng)包括一密文云數(shù)據(jù)庫(kù)系統(tǒng)、一文檔操作服務(wù) 組件、一密文檢索服務(wù)組件、一數(shù)據(jù)驗(yàn)證服務(wù)組件;其中,所述密文云數(shù)據(jù)庫(kù)系統(tǒng)用于存儲(chǔ)密態(tài)的元信息與密態(tài)元信息密鑰;所述文檔操作服務(wù)組件,用于在用戶文檔上載、更新操作時(shí)為其提供文檔相關(guān)屬 性信息更新服務(wù);所述密文檢索服務(wù)組件,用于為用戶的屬性檢索請(qǐng)求提供密文數(shù)據(jù)庫(kù)檢索服務(wù);所述數(shù)據(jù)驗(yàn)證服務(wù)組件,用于為用戶的數(shù)據(jù)驗(yàn)證請(qǐng)求訪問(wèn)云存儲(chǔ)系統(tǒng),對(duì)文檔抽 樣并計(jì)算驗(yàn)證標(biāo)簽,與密文數(shù)據(jù)庫(kù)中預(yù)計(jì)算驗(yàn)證標(biāo)簽返回給用戶。進(jìn)一步的,所述密文云數(shù)據(jù)庫(kù)系統(tǒng)包括一文檔密鑰表,用來(lái)存放每個(gè)文檔所對(duì)應(yīng) 的密態(tài)的文檔密鑰;一元信息密鑰表,用來(lái)存儲(chǔ)每個(gè)用戶所對(duì)應(yīng)的密態(tài)元信息密鑰;一索 引元信息表,用來(lái)存放每個(gè)文檔所對(duì)應(yīng)的密態(tài)的索引元信息;一驗(yàn)證元信息表,用來(lái)存儲(chǔ)每 個(gè)文檔所對(duì)應(yīng)的密態(tài)的驗(yàn)證信息。進(jìn)一步的,利用所述應(yīng)用程序入口組件選擇要上傳的文件、在所述云計(jì)算或云存 儲(chǔ)系統(tǒng)中的存儲(chǔ)路徑、可信度、驗(yàn)證次數(shù)。進(jìn)一步的,對(duì)于某文檔的驗(yàn)證請(qǐng)求,所述應(yīng)用程序入口組件利用所述數(shù)據(jù)驗(yàn)證服務(wù)組件從所述密文云數(shù)據(jù)庫(kù)中獲得該文檔的驗(yàn)證次數(shù),可信度和文檔大小,計(jì)算出該文檔 隨機(jī)讀取位置,生成樣本文檔,并為其計(jì)算驗(yàn)證標(biāo)簽;同時(shí)數(shù)據(jù)驗(yàn)證服務(wù)組件將文檔相關(guān)的 驗(yàn)證標(biāo)簽返回給云用戶,云用戶通過(guò)計(jì)算兩類驗(yàn)證標(biāo)簽之間的關(guān)系,判斷文檔是否內(nèi)容是 否發(fā)生變化。進(jìn)一步的,所述安全云客戶端利用所述文檔管理組件對(duì)上傳文檔的內(nèi)容進(jìn)行讀 取,根據(jù)需要加密處理后,上傳到云計(jì)算或云存儲(chǔ)系統(tǒng)中的指定存儲(chǔ)路徑。進(jìn)一步的,所述安全云客戶端利用所述數(shù)據(jù)驗(yàn)證組件根據(jù)用戶設(shè)定的可信度和驗(yàn) 證次數(shù),為該文檔生成相應(yīng)的驗(yàn)證標(biāo)簽,并通過(guò)所述數(shù)據(jù)驗(yàn)證服務(wù)組件將密態(tài)的可信度、密 態(tài)的驗(yàn)證次數(shù)和密態(tài)的驗(yàn)證標(biāo)作為一條記錄上傳到所述密文云數(shù)據(jù)庫(kù)的驗(yàn)證元信息表中。進(jìn)一步的,所述元信息包括文件名、文件大小、文件關(guān)鍵詞。進(jìn)一步的,所述文檔密鑰和所述元信息密鑰由所述安全云客戶端生成。本發(fā)明提供的云計(jì)算數(shù)據(jù)安全支撐平臺(tái),其主要特征在于該平臺(tái)由三個(gè)相互關(guān) 聯(lián)的部分構(gòu)成其一是待保護(hù)的云計(jì)算/云存儲(chǔ)系統(tǒng)(后文簡(jiǎn)稱實(shí)際存儲(chǔ)系統(tǒng)),其中所存 儲(chǔ)的是經(jīng)過(guò)加密等技術(shù)手段處理后的數(shù)據(jù),該數(shù)據(jù)的非授權(quán)傳播并不會(huì)直接導(dǎo)致數(shù)據(jù)內(nèi)容 泄露;其二是安全云客戶端,負(fù)責(zé)在本地保存云用戶的密鑰并進(jìn)行數(shù)據(jù)加解密處理,避免密 鑰外泄導(dǎo)致的數(shù)據(jù)安全風(fēng)險(xiǎn);其三是云數(shù)據(jù)安全服務(wù)系統(tǒng)(后文簡(jiǎn)稱安全服務(wù)系統(tǒng)),該系 統(tǒng)負(fù)責(zé)生成、存儲(chǔ)、管理與維護(hù)云計(jì)算/云存儲(chǔ)系統(tǒng)中數(shù)據(jù)的屬性及其他元信息。確保在密 文狀態(tài)下為云用戶提供密文檢索、完整性驗(yàn)證等多項(xiàng)安全數(shù)據(jù)服務(wù)。該架構(gòu)的主要設(shè)計(jì)特點(diǎn)包括(1)安全性不依賴云計(jì)算服務(wù)提供商。實(shí)際存儲(chǔ)系統(tǒng)中的數(shù)據(jù)經(jīng)特殊安全處理 (如用某文檔密鑰加密),且核心秘密信息(如云用戶主密鑰)保存于云用戶者的本地計(jì)算 環(huán)境,因此該架構(gòu)確保云計(jì)算/云存儲(chǔ)系統(tǒng)中的數(shù)據(jù)安全性由云用戶完全掌握,避免了當(dāng) 前云用戶對(duì)云計(jì)算服務(wù)提供商安全能力與可信程度的依賴;(2)安全性不依賴云安全服務(wù)提供商。安全服務(wù)系統(tǒng)所管理的元信息事先經(jīng)過(guò)用 戶的安全處理(例如用屬性密鑰加密,或者特殊的編碼算法處理等),其自身并不會(huì)泄露用 戶數(shù)據(jù)元信息。即使攻擊者同時(shí)獲得元信息與數(shù)據(jù)信息,也無(wú)法獲得數(shù)據(jù)的內(nèi)容或者元信 肩、ο(3)安全服務(wù)效率高。安全服務(wù)系統(tǒng)所存儲(chǔ)的是實(shí)際存儲(chǔ)系統(tǒng)中所存儲(chǔ)數(shù)據(jù)的元 信息。通過(guò)對(duì)元信息的維護(hù)與檢索,為云用戶提供高效、安全的數(shù)據(jù)服務(wù)。例如,在無(wú)須解 密的前提下,幫助用戶查找出具有某些關(guān)鍵屬性的密文數(shù)據(jù)。又如,幫助用戶判斷當(dāng)前所存 儲(chǔ)的內(nèi)容是否缺失或遭到破壞等;該架構(gòu)的具體組成結(jié)構(gòu)如附圖所示,各部分說(shuō)明如下1.云數(shù)據(jù)安全服務(wù)系統(tǒng)云數(shù)據(jù)安全服務(wù)系統(tǒng)由底層的密文云數(shù)據(jù)庫(kù)系統(tǒng),及其上的若干數(shù)據(jù)安全服務(wù)組 件構(gòu)成。包括文檔操作服務(wù)組件,密文檢索服務(wù)組件,以及數(shù)據(jù)驗(yàn)證服務(wù)組件。分別為用 戶的文檔上下載、更新等操作,密文檢索類操作,以及數(shù)據(jù)完整性驗(yàn)證類操作提供必要的服 務(wù)支持。密文云數(shù)據(jù)庫(kù)系統(tǒng)存儲(chǔ)內(nèi)容為實(shí)際存儲(chǔ)系統(tǒng)中數(shù)據(jù)的元信息與加密的元信息密 鑰。這些數(shù)據(jù)內(nèi)容都經(jīng)過(guò)安全客戶端的加密或者編碼處理。數(shù)據(jù)安全服務(wù)組件接受來(lái)自安 全云客戶端的操作指令,對(duì)密文云數(shù)據(jù)庫(kù)系統(tǒng)執(zhí)行各項(xiàng)數(shù)據(jù)庫(kù)表檢索、更新操作等。
2.安全云客戶端安全云客戶端包括應(yīng)用程序入口組件、數(shù)據(jù)安全功能組件,密鑰管理組件,與數(shù)據(jù) 加解密組件。其中應(yīng)用程序入口組件為用戶提供密文文檔的管理、檢索和驗(yàn)證等功能的界 面。并根據(jù)用戶的操作,選擇調(diào)用合適的功能組件。數(shù)據(jù)安全功能組件包含了文檔管理組件、數(shù)據(jù)檢索組件和數(shù)據(jù)驗(yàn)證組件。其中文 檔管理組件實(shí)現(xiàn)了對(duì)文檔的上傳、下載、復(fù)制、剪切和刪除等功能;數(shù)據(jù)檢索組件實(shí)現(xiàn)了對(duì) 上傳文檔的索引元信息的構(gòu)建和上傳,以及對(duì)云存儲(chǔ)密文文檔的檢索請(qǐng)求生成功能;數(shù)據(jù) 驗(yàn)證組件實(shí)現(xiàn)了對(duì)上傳文檔的驗(yàn)證元信息的構(gòu)建和上傳,以及對(duì)用戶指定文檔的完整性驗(yàn) 證功能。此外,密鑰管理組件負(fù)責(zé)對(duì)文檔和元信息的加解密密鑰的獲取。數(shù)據(jù)加解密組件 首先對(duì)加密密鑰進(jìn)行解密得到文檔密鑰和元信息密鑰,然后利用得到的密鑰對(duì)文檔和元信 息的加解密。3.待保護(hù)的云計(jì)算/云存儲(chǔ)系統(tǒng)該系統(tǒng)中是云用戶數(shù)據(jù)的實(shí)際存儲(chǔ)位置。所存儲(chǔ)的數(shù)據(jù)是經(jīng)云安全客戶端加密處 理后的內(nèi)容。并且所存儲(chǔ)數(shù)據(jù)的元信息安全地保存在前述安全服務(wù)系統(tǒng)中。該架構(gòu)中各部分交互的關(guān)鍵步驟包括(1)云用戶數(shù)據(jù)上載。云用戶數(shù)據(jù)上載過(guò)程包括兩個(gè)主要步驟其一是生成或者 提取數(shù)據(jù)的各項(xiàng)元信息,通過(guò)安全云客戶端數(shù)據(jù)安全功能組件處理后,將其加密或編碼處 理后發(fā)送到安全服務(wù)系統(tǒng);其二是安全云客戶端將數(shù)據(jù)加密,然后上載到實(shí)際云計(jì)算/云 存儲(chǔ)系統(tǒng)中。(2)云用戶數(shù)據(jù)檢索。云用戶可以根據(jù)數(shù)據(jù)的各類屬性進(jìn)行檢索,例如數(shù)據(jù)的提 交時(shí)間、大小、類型、關(guān)鍵詞等等。該過(guò)程主要步驟為首先經(jīng)安全云客戶端中的數(shù)據(jù)索引組 件處理,將云用戶的查詢改寫為針對(duì)密文數(shù)據(jù)庫(kù)系統(tǒng)的密文查詢語(yǔ)句,并將該命令發(fā)送至 安全服務(wù)系統(tǒng);其次,安全服務(wù)系統(tǒng)找出所有滿足該查詢命令的記錄,并對(duì)用戶顯示查詢結(jié) 果。該結(jié)果中包括數(shù)據(jù)在實(shí)際存儲(chǔ)系統(tǒng)中的存儲(chǔ)位置。若云用戶需要訪問(wèn)該數(shù)據(jù)內(nèi)容,就 根據(jù)該鏈接將其下載到本地。(3)云用戶數(shù)據(jù)下載。當(dāng)云用戶需要訪問(wèn)某個(gè)指定存儲(chǔ)位置的數(shù)據(jù)內(nèi)容時(shí),安全云 客戶端執(zhí)行如下步驟先從實(shí)際存儲(chǔ)系統(tǒng)中提取(密文)數(shù)據(jù),然后在本地根據(jù)主密鑰解密 出文檔的加密密鑰,再進(jìn)一步通過(guò)該密鑰解密文檔。(4)云用戶數(shù)據(jù)更新。在云用戶更新實(shí)際云存儲(chǔ)系統(tǒng)中的數(shù)據(jù)內(nèi)容前,必須視實(shí)際 情況首先更新其所對(duì)應(yīng)的屬性信息,包括其檢索元信息,驗(yàn)證元信息,以及基本元信息等。 安全云客戶端調(diào)用數(shù)據(jù)安全功能組件實(shí)現(xiàn)元信息的安全更新。該組件內(nèi)部包含事務(wù)處理機(jī) 制,可以實(shí)現(xiàn)實(shí)際存儲(chǔ)系統(tǒng)與安全服務(wù)系統(tǒng)之間內(nèi)容的一致性。(5)云用戶數(shù)據(jù)驗(yàn)證。當(dāng)云用戶需要檢驗(yàn)?zāi)承?shù)據(jù)內(nèi)容時(shí),需經(jīng)數(shù)據(jù)驗(yàn)證組件與云 數(shù)據(jù)安全服務(wù)系統(tǒng)中的數(shù)據(jù)驗(yàn)證服務(wù)組件交互。后者完成兩部分工作返回保存在密文服 務(wù)器中的相關(guān)驗(yàn)證元信息;然后根據(jù)前者發(fā)來(lái)的參數(shù),訪問(wèn)實(shí)際存儲(chǔ)系統(tǒng)中的文檔,計(jì)算并 返回當(dāng)前狀態(tài)信息。前者在收到兩個(gè)信息后綜合分析,判斷數(shù)據(jù)內(nèi)容是否異常。與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)勢(shì)1.基于本發(fā)明的云計(jì)算數(shù)據(jù)安全支撐架構(gòu)安全性好。由用戶保存主密鑰,密文索引受用戶索引密鑰保護(hù),避免了由于云服務(wù)商具有數(shù)據(jù)優(yōu)先訪問(wèn)權(quán)所帶來(lái)的用戶數(shù)據(jù)安全
隱患 ;2.基于本發(fā)明的云計(jì)算數(shù)據(jù)安全支撐架構(gòu)效率高。用戶根據(jù)自己的秘密信息,以 挑戰(zhàn)-應(yīng)答模式發(fā)起連續(xù)的驗(yàn)證請(qǐng)求,根據(jù)返回有限結(jié)果可以判斷遠(yuǎn)程海量信息的存在性 及正確性;3.基于本發(fā)明的云計(jì)算數(shù)據(jù)安全支撐架構(gòu)兼容性強(qiáng),可為當(dāng)前各類云計(jì)算或云存 儲(chǔ)系統(tǒng)提供數(shù)據(jù)安全服務(wù)。架構(gòu)設(shè)計(jì)中將安全服務(wù)系統(tǒng)獨(dú)立于實(shí)際的云計(jì)算/云存儲(chǔ)系 統(tǒng)。兩者之間通過(guò)標(biāo)準(zhǔn)接口交互,因此,基于本發(fā)明的密文云存儲(chǔ)檢索系統(tǒng)彈性可擴(kuò)展。
云計(jì)算數(shù)據(jù)安全支撐平臺(tái)架構(gòu)圖。具體實(shí)施步驟下面結(jié)合附圖和一個(gè)范例對(duì)本發(fā)明做進(jìn)一步詳細(xì)的說(shuō)明,但不以任何方式限制本 發(fā)明的范圍。在實(shí)施例中,可以采用開(kāi)源的Hadoop軟件搭建一個(gè)云存儲(chǔ)系統(tǒng),采用開(kāi)源的 HBase作為云數(shù)據(jù)庫(kù)系統(tǒng)。本發(fā)明中的云安全客戶端以瀏覽器的插件形式存在,在用戶初次訪問(wèn)云數(shù)據(jù)安全 服務(wù)時(shí)安裝??蛻舳吮4嬗脩舻闹髅荑€,用于保護(hù)文檔密鑰和元信息密鑰。其中文檔密鑰 是對(duì)文檔進(jìn)行加密保護(hù)的密鑰,元信息密鑰是對(duì)索引元信息和驗(yàn)證元信息進(jìn)行加密保護(hù)的 密鑰。兩者均由客戶端隨機(jī)自動(dòng)生成。HBase數(shù)據(jù)庫(kù)中預(yù)先創(chuàng)建四張數(shù)據(jù)表其中文檔密鑰表DocJfey和元信息密鑰表 MetaJfey分別用于存放用主密鑰加密保護(hù)的所有文檔密鑰和所有用戶元信息密鑰;而索 引元信息表hdexjnfo和驗(yàn)證元信息表VerifyJnfo分別用來(lái)存放每個(gè)文檔所對(duì)應(yīng)的密 態(tài)的索引元信息和每個(gè)文檔所對(duì)應(yīng)的密態(tài)的驗(yàn)證信息。假設(shè)用戶要密文上傳的文檔為“test.doc”,該文檔大小為123k,關(guān)鍵詞為“測(cè) 試”、“安全”、“云存儲(chǔ)”,上傳云存儲(chǔ)位置“/test, doc”。1密文文檔上傳用戶上傳文檔“test, doc”時(shí),同時(shí)設(shè)定該文檔的檢索關(guān)鍵字,既包括用戶自主 選擇的關(guān)鍵詞如“測(cè)試”、“安全”、“云存儲(chǔ)”等,也包括系統(tǒng)自動(dòng)生成的文檔屬性,如文件名 “test”、文件大小“123k”等。每個(gè)屬性是一個(gè)(屬姓名,屬性值)鍵值對(duì)。通過(guò)數(shù)據(jù)檢索 組件將上述內(nèi)容加密后上傳到HBase的索引元信息表^idex hfo中;同時(shí)調(diào)用文檔管理組 件對(duì)文檔“test, doc”內(nèi)容加密上傳到Hadoop指定目錄下。如果用戶需要今后驗(yàn)證該文檔的完整性,則在上傳文檔時(shí)還需要設(shè)定上傳驗(yàn)證所 需的各項(xiàng)參數(shù),如可信度和驗(yàn)證次數(shù)等。由客戶端數(shù)據(jù)驗(yàn)證服務(wù)組件根據(jù)上述參數(shù),抽樣提 取文檔內(nèi)容,計(jì)算生成文檔驗(yàn)證標(biāo)簽,并將相關(guān)內(nèi)容上載到驗(yàn)證元信息表VerifyJnfo中。安全云客戶端在上下載文檔及其元信息時(shí)自動(dòng)調(diào)用數(shù)據(jù)加解密組件。密鑰信息由 密鑰管理組件設(shè)定與更新。系統(tǒng)采用事務(wù)機(jī)制來(lái)保證上述各項(xiàng)步驟的原子性。2密文文檔下載用戶下載指定路徑下的某個(gè)文檔如“test, doc”時(shí),直接調(diào)用文檔管理組件從Hadoop中下載,同時(shí)調(diào)用數(shù)據(jù)加解密組件對(duì)下載文檔自動(dòng)進(jìn)行解密處理。3基于屬性/關(guān)鍵詞的密文文檔檢索當(dāng)用戶需要查找具有關(guān)鍵詞“云存儲(chǔ)”的文檔時(shí),數(shù)據(jù)檢索組件生成檢索條件(“關(guān) 鍵詞=云存儲(chǔ)”),并調(diào)用數(shù)據(jù)加解密組件對(duì)檢索值進(jìn)行加密,發(fā)送到云服務(wù)端。然后通過(guò)云 數(shù)據(jù)安全服務(wù)系統(tǒng)中的密文檢索服務(wù)組件對(duì)HBase的索引元信息表^dexJnfo進(jìn)行檢索, 結(jié)果集為獲得包含滿足條件的文檔的路徑信息的索引元信息,該結(jié)果集返回給安全客戶端 解密。如果需要,用戶可以根據(jù)指定的目錄與文件名下載并訪問(wèn)該文件內(nèi)容。具體過(guò)程參 見(jiàn)上一個(gè)例子。4密文文檔驗(yàn)證當(dāng)用戶在應(yīng)用程序入口組件上選擇了要驗(yàn)證的密文文檔“/test, doc”后,調(diào)用數(shù) 據(jù)驗(yàn)證組件,向服務(wù)端的數(shù)據(jù)驗(yàn)證服務(wù)組件發(fā)出請(qǐng)求。后者查詢HBase中驗(yàn)證元信息表 Verify_Info,獲得該文檔的驗(yàn)證次數(shù)和可信度,根據(jù)這些參數(shù)生成文檔隨機(jī)讀取位置,從 云存儲(chǔ)系統(tǒng)中抽取這些位置上內(nèi)容形成樣本,計(jì)算其驗(yàn)證標(biāo)簽,返回給云用戶。同時(shí)數(shù)據(jù)驗(yàn) 證服務(wù)組件將文檔相關(guān)的驗(yàn)證標(biāo)簽(密態(tài))返回給云用戶。云用戶通過(guò)計(jì)算兩類驗(yàn)證標(biāo)簽 之間的關(guān)系,判斷文檔是否內(nèi)容是否發(fā)生變化。用戶也可以指定一個(gè)或若干個(gè)需要驗(yàn)證的 目錄,批量驗(yàn)證該目錄下所有的文檔。以上詳細(xì)說(shuō)明的具體的實(shí)施方式僅僅是為了更好了理解本發(fā)明使用的,本發(fā)明不 局限于此,本領(lǐng)域一般技術(shù)人員可以根據(jù)本發(fā)明的公開(kāi)內(nèi)容,采用其他多種實(shí)施方式來(lái)實(shí) 施本發(fā)明,凡是采用本發(fā)明的設(shè)計(jì)結(jié)構(gòu)和思路的,在不脫離權(quán)利要求范圍的變換和替代,都 屬于本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種云計(jì)算數(shù)據(jù)安全支撐平臺(tái),其特征在于包括云計(jì)算或云存儲(chǔ)系統(tǒng)、云數(shù)據(jù)安全 服務(wù)系統(tǒng)、安全云客戶端;所述云計(jì)算或云存儲(chǔ)系統(tǒng)、云數(shù)據(jù)安全服務(wù)系統(tǒng)、安全云客戶端 之間通過(guò)網(wǎng)絡(luò)互連;其中,所述安全云客戶端,用于將數(shù)據(jù)利用文檔密鑰加密后上傳給所述云計(jì)算或云存儲(chǔ)系 統(tǒng),同時(shí)提取上傳數(shù)據(jù)的元信息,并利用元信息密鑰對(duì)提取的元信息加密后發(fā)送給所述云 數(shù)據(jù)安全服務(wù)系統(tǒng)、利用主密鑰加密所述文檔密鑰和所述元信息密鑰后發(fā)送給所述云數(shù)據(jù) 安全服務(wù)系統(tǒng);所述云計(jì)算或云存儲(chǔ)系統(tǒng),用于存儲(chǔ)所述安全云客戶端上傳的數(shù)據(jù); 所述云數(shù)據(jù)安全服務(wù)系統(tǒng),用于存儲(chǔ)所述安全云客戶端加密上傳的元信息和密鑰信 息,并提供文件訪問(wèn)支持,以及密文檢索和數(shù)據(jù)驗(yàn)證服務(wù)支持。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于所述安全云客戶端包括一數(shù)據(jù)加解密組件、 一密鑰管理組件、一文檔管理組件、一數(shù)據(jù)檢索組件、一數(shù)據(jù)驗(yàn)證組件、一應(yīng)用程序入口組 件;其中,所述應(yīng)用程序入口組件為用戶提供密文文檔的管理、檢索和驗(yàn)證界面; 所述密鑰管理組件用于從所述云數(shù)據(jù)安全服務(wù)系統(tǒng)獲取加密的文檔密鑰和加密的元 {曰息笛、朗;所述數(shù)據(jù)加解密組件用于對(duì)獲取的加密密鑰進(jìn)行解密,得到文檔密鑰和元信息密鑰, 并利用文檔密鑰和元信息密鑰分別對(duì)文檔和元信息進(jìn)行加解密; 所述文檔管理組件用于對(duì)文檔進(jìn)行上傳、下載、復(fù)制、剪切、刪除; 所述數(shù)據(jù)檢索組件用于構(gòu)建上傳文檔的元信息并將其上傳給所述云數(shù)據(jù)安全服務(wù)系 統(tǒng),以及對(duì)云存儲(chǔ)密文文檔的檢索;所述數(shù)據(jù)驗(yàn)證組件用于構(gòu)建上傳文檔的驗(yàn)證元信息并將其上傳給所述云數(shù)據(jù)安全服 務(wù)系統(tǒng),以及對(duì)云存儲(chǔ)密文文檔的完整性驗(yàn)證。
3.如權(quán)利要求1或2所述的系統(tǒng),其特征在于所述云數(shù)據(jù)安全服務(wù)系統(tǒng)包括一密文云 數(shù)據(jù)庫(kù)系統(tǒng)、一文檔操作服務(wù)組件、一密文檢索服務(wù)組件、一數(shù)據(jù)驗(yàn)證服務(wù)組件;其中,所述密文云數(shù)據(jù)庫(kù)系統(tǒng)用于存儲(chǔ)密態(tài)的元信息與密態(tài)元信息密鑰; 所述文檔操作服務(wù)組件,用于在用戶文檔上載、更新操作時(shí)為其提供文檔相關(guān)屬性信 息更新服務(wù);所述密文檢索服務(wù)組件,用于為用戶的屬性檢索請(qǐng)求提供密文數(shù)據(jù)庫(kù)檢索服務(wù); 所述數(shù)據(jù)驗(yàn)證服務(wù)組件,用于為用戶的數(shù)據(jù)驗(yàn)證請(qǐng)求訪問(wèn)云存儲(chǔ)系統(tǒng),對(duì)文檔抽樣并 計(jì)算驗(yàn)證標(biāo)簽,與密文數(shù)據(jù)庫(kù)中預(yù)計(jì)算驗(yàn)證標(biāo)簽返回給用戶。
4.如權(quán)利要求3所述的系統(tǒng),其特征在于所述密文云數(shù)據(jù)庫(kù)系統(tǒng)包括一文檔密鑰表, 用來(lái)存放每個(gè)文檔所對(duì)應(yīng)的密態(tài)的文檔密鑰;一元信息密鑰表,用來(lái)存儲(chǔ)每個(gè)用戶所對(duì)應(yīng) 的密態(tài)元信息密鑰;一索引元信息表,用來(lái)存放每個(gè)文檔所對(duì)應(yīng)的密態(tài)的索引元信息;一 驗(yàn)證元信息表,用來(lái)存儲(chǔ)每個(gè)文檔所對(duì)應(yīng)的密態(tài)的驗(yàn)證信息。
5.如權(quán)利要求4所述的系統(tǒng),其特征在于利用所述應(yīng)用程序入口組件選擇要上傳的文 件、在所述云計(jì)算或云存儲(chǔ)系統(tǒng)中的存儲(chǔ)路徑、可信度、驗(yàn)證次數(shù)。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于對(duì)于某文檔的驗(yàn)證請(qǐng)求,所述應(yīng)用程序入口組件利用所述數(shù)據(jù)驗(yàn)證服務(wù)組件從所述密文云數(shù)據(jù)庫(kù)中獲得該文檔的驗(yàn)證次數(shù),可信度和 文檔大小,計(jì)算出該文檔隨機(jī)讀取位置,生成樣本文檔,并為其計(jì)算驗(yàn)證標(biāo)簽;同時(shí)數(shù)據(jù)驗(yàn) 證服務(wù)組件將文檔相關(guān)的驗(yàn)證標(biāo)簽返回給云用戶,云用戶通過(guò)計(jì)算兩類驗(yàn)證標(biāo)簽之間的關(guān) 系,判斷文檔是否內(nèi)容是否發(fā)生變化。
7.如權(quán)利要求5所述的系統(tǒng),其特征在于所述安全云客戶端利用所述文檔管理組件對(duì) 上傳文檔的內(nèi)容進(jìn)行讀取,根據(jù)需要加密處理后,上傳到云計(jì)算或云存儲(chǔ)系統(tǒng)中的指定存 儲(chǔ)路徑。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于所述安全云客戶端利用所述數(shù)據(jù)驗(yàn)證組件根 據(jù)用戶設(shè)定的可信度和驗(yàn)證次數(shù),為該文檔生成相應(yīng)的驗(yàn)證標(biāo)簽,并通過(guò)所述數(shù)據(jù)驗(yàn)證服 務(wù)組件將密態(tài)的可信度、密態(tài)的驗(yàn)證次數(shù)和密態(tài)的驗(yàn)證標(biāo)作為一條記錄上傳到所述密文云 數(shù)據(jù)庫(kù)的驗(yàn)證元信息表中。
9.如權(quán)利要求5所述的系統(tǒng),其特征在于所述元信息包括文件名、文件大小、文件關(guān) 鍵詞。
10.如權(quán)利要求4所述的系統(tǒng),其特征在于所述文檔密鑰和所述元信息密鑰由所述安 全云客戶端生成。
全文摘要
本發(fā)明公開(kāi)了一種云計(jì)算數(shù)據(jù)安全支撐平臺(tái),屬于信息安全技術(shù)領(lǐng)域。本平臺(tái)包括云計(jì)算或云存儲(chǔ)系統(tǒng)、云數(shù)據(jù)安全服務(wù)系統(tǒng)、安全云客戶端;所述云計(jì)算或云存儲(chǔ)系統(tǒng)、云數(shù)據(jù)安全服務(wù)系統(tǒng)、安全云客戶端之間通過(guò)網(wǎng)絡(luò)互連;安全云客戶端用于將數(shù)據(jù)加密后上傳給云計(jì)算或云存儲(chǔ)系統(tǒng),同時(shí)提取上傳數(shù)據(jù)的元信息,并利對(duì)提取的元信息加密后發(fā)送給云數(shù)據(jù)安全服務(wù)系統(tǒng);云計(jì)算或云存儲(chǔ)系統(tǒng)用于存儲(chǔ)安全云客戶端上傳的數(shù)據(jù);云數(shù)據(jù)安全服務(wù)系統(tǒng)用于存儲(chǔ)安全云客戶端加密上傳的元信息和密鑰信息,并提供文件訪問(wèn)支持,以及密文檢索和數(shù)據(jù)驗(yàn)證服務(wù)支持。本平臺(tái)大大提高了數(shù)據(jù)的安全性,具有計(jì)算效率高、安全性好等優(yōu)點(diǎn)。
文檔編號(hào)G06F21/00GK102075542SQ201110029138
公開(kāi)日2011年5月25日 申請(qǐng)日期2011年1月26日 優(yōu)先權(quán)日2011年1月26日
發(fā)明者馮登國(guó), 張敏, 徐震, 蔡克, 陳馳 申請(qǐng)人:中國(guó)科學(xué)院軟件研究所