一種基于同態(tài)加密的分權(quán)密鑰管理方法
【專利摘要】本發(fā)明公開了一種基于同態(tài)加密的分權(quán)密鑰管理方法,包括如下步驟:步驟一、用戶主密鑰生成;步驟二、云服務(wù)實例密鑰生成;步驟三、針對不同的數(shù)據(jù)實例進行密鑰分發(fā)。本發(fā)明的積極效果是:本發(fā)明利用同態(tài)加密的密文計算特點實現(xiàn)了安全的密鑰管理,分散了密鑰管理中心的密鑰權(quán)限,提升了用戶的控制權(quán)。密鑰管理中心在不用獲取用戶主密鑰的情況,能夠完成對云計算服務(wù)密鑰的分發(fā);實現(xiàn)云服務(wù)密鑰的可變性和細粒度的密鑰分發(fā)功能,可根據(jù)不同的云服務(wù)類型、業(yè)務(wù)數(shù)據(jù)類型,分發(fā)不同的密鑰;部門審計可以隨時對用戶的業(yè)務(wù)行為和數(shù)據(jù)的監(jiān)控;密鑰管理中心只能完成密鑰管理功能,無法獲知用戶主密鑰、以及云計算服務(wù)的密鑰。
【專利說明】-種基于同態(tài)加密的分權(quán)密鑰管理方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及一種基于同態(tài)加密的分權(quán)密鑰管理方法。
【背景技術(shù)】
[0002] 1、云計算密鑰管理的特點
[0003] 云計算是能夠動態(tài)伸縮的虛擬化資源,通過互聯(lián)網(wǎng)W服務(wù)的方式提供給用戶的一 種計算模式。在云計算模式下,用戶不必構(gòu)建或管理該些資源,而是可W直接按需付費使用 云計算服務(wù)商提供的資源。云計算把IT資源、數(shù)據(jù)、應(yīng)用作為一種服務(wù),通過網(wǎng)絡(luò)提供給用 戶,該是服務(wù)方式的變革,是共享數(shù)據(jù)模式的改變。在該種模式下云環(huán)境中密鑰管理主要特 點是:
[0004] (1)用戶等級多樣,對密碼和密鑰的安全要求等級也不盡相同,安全要求包括加密 算法的形式,密鑰的長度、安全強度、管理力度等方面。
[0005] (2)密鑰種類繁多,由于云中應(yīng)用千差萬別,應(yīng)用密碼的需求也是多種多樣,因此 需要實現(xiàn)對對稱、公鑰密碼等多種密碼體制的密鑰管理,密鑰種類包括對稱密鑰和公鑰,公 鑰又包括簽名認證密鑰、會話加密密鑰和存儲加密密鑰。
[0006] (3)密鑰數(shù)據(jù)量龐大,云計算運行在一個不斷復(fù)雜化、多用戶的環(huán)境中,每一個用 戶在云中可能需要多個密鑰實現(xiàn)數(shù)據(jù)加密存儲、加密傳輸?shù)榷喾N功能。
[0007] (4)密碼應(yīng)用場景復(fù)雜,相對于現(xiàn)有密碼應(yīng)用場景,云環(huán)境的密碼應(yīng)用場景比較復(fù) 雜,需要采用密碼技術(shù)實現(xiàn)對云環(huán)境中用戶虛擬機的標識和認證,實現(xiàn)對用戶虛擬機的加 密,包括虛擬機鏡像存儲、虛擬機遷移過程和虛擬機之間通訊的加密。
[000引 2、云計算密鑰管理需求
[0009] 云計算作為一種新興的計算模式,利用虛擬化技術(shù),將大量計算資源構(gòu)成可共享、 可分配的資源池,使各種應(yīng)用能夠按需獲取計算資源、存儲資源和信息資源,針對軍隊不同 系統(tǒng)用戶的信息也將在"云端"實現(xiàn)集中,軍用云計算安全需要特點主要有W下幾個方面:
[0010] (1) 一個獨立的云計算密鑰管理中屯、。
[0011] 云計算主要特點是用戶等級多樣,為了保證用戶私密信息的安全,因此我們需要 對用戶的數(shù)據(jù)進行加密,但是由于數(shù)據(jù)種類的多樣性W及用戶對密鑰的安全要求等級不盡 相同,云計算中的密鑰種類繁多,密鑰數(shù)據(jù)量龐大。為了應(yīng)對龐大密鑰量的管理問題,應(yīng)該 采用中屯、化的密鑰管理中屯、來統(tǒng)一管理云計算中產(chǎn)生的各種密鑰。除此之外,為了能夠抵 抗云計算平臺可W獲得用戶的私密信息,因此,我們需要一個獨立于云計算平臺的密鑰管 理平臺用于單獨保護用戶在加密過程中產(chǎn)生的各種密鑰。
[0012] (2)用戶不同的應(yīng)用產(chǎn)生的數(shù)據(jù)使用不同的加密密鑰加密。
[0013] 在云計算平臺中,每個用戶都會根據(jù)自己的需求使用各種不同的應(yīng)用,同時將該 些應(yīng)用使用過程中產(chǎn)生的數(shù)據(jù)進行存儲,為了提高安全性,云計算平臺希望用戶的不同應(yīng) 用產(chǎn)生的數(shù)據(jù)使用不同的加密密鑰。同時用戶自身所掌握的密鑰應(yīng)該盡可能簡單,也就是 說,用戶可W通過一個主密鑰擴展出多個針對于不同應(yīng)用的加密密鑰。
[0014] (3)軍方部口可w對本部口的用戶數(shù)據(jù)進行監(jiān)控和審計。
[0015] 在保證安全性的過程中,每個用戶存儲在云端的數(shù)據(jù)都是經(jīng)過加密的,該樣可W 防止云端獲得用戶的秘密信息,但是軍方部口希望可W實現(xiàn)對本部口用戶的數(shù)據(jù)進行監(jiān)控 和審計,從而進一步地了解部口成員的工作狀況和生活動態(tài)。
[0016] W上便是軍用云計算安全的需求特點。
[0017] 3、云計算中密鑰管理國內(nèi)外現(xiàn)狀
[001引在云計算中,國內(nèi)外著名的云計算平臺有亞馬遜云(AWS:Amazon Web Serives), 谷歌云等,另外做云服務(wù)安全的企業(yè)有Dell, RSA,Symplified,HYTRUST,Safenet等。
[0019] 谷歌云服務(wù)的密鑰管理機制網(wǎng)上調(diào)查所得的資料相對較少,在谷歌云安全白皮 書中也沒有設(shè)及到有關(guān)密鑰管理方面的知識,因此此處也就不做相關(guān)介紹,亞馬遜云服 務(wù)密鑰管理機制是建立在Safenet云安全公司的密鑰管理機制上的,我們在后邊將會對 Safenet云密鑰管理機制進行相關(guān)介紹。
[0020] 在Dell云服務(wù)中通過建立化stratius機制從而保障其安全性,所有的通信過程 的安全均是采用SSH協(xié)議來完成的,而所有存儲在云端的文件都是通過加密的。其密鑰管 理措施主要是采用隔離的方式來進行保護的,任何云中的操作環(huán)境都不可能與云中的密鑰 進行接觸,密鑰管理設(shè)施W及云操作服務(wù)器是保證絕對分開的,同時采取密鑰備份技術(shù)用 于進行密鑰恢復(fù)。
[002U RSA云設(shè)施主要通過云連接網(wǎng)關(guān)(Clou化ink Gateways)來保證整個云服務(wù)的安 全,它將云連接網(wǎng)關(guān)中所使用到的加密密鑰存儲在RSA DPM(數(shù)據(jù)保護管理中屯、中),該種 機制可W保證在密鑰被保護的同時,方便云連接及時使用密鑰。
[0022] Symp 1 ified主要研究的是云中的訪問控制策略,它通過提供一個單點登錄的機 審IJ,從而讓用戶通過一個信息便可訪問云中所有關(guān)于他的信息W及應(yīng)用。同時隨著云中應(yīng) 用的逐漸增多,每一個用戶的應(yīng)用W及數(shù)據(jù)都會隨之增加,Symplified同時為用戶W后應(yīng) 用和數(shù)據(jù)的增加也預(yù)留了一定的空間。
[0023] HyTrust通過建立一個安全高效的密鑰管理系統(tǒng)HyTrustIfeyControl。該個管理 系統(tǒng)主要的特點易于配置和便于使用,并且它是一個便于管理的虛擬應(yīng)用,可W將其配置 在物理設(shè)備上。由于HyTrustKeyControl的特點,那么它的安裝位置是可變的,也就是說, 我們既可W將其安裝在企業(yè)內(nèi)部,也可W將其布置在服務(wù)提供商上。至于密鑰管理中的密 鑰的周期W及生成方式可W根據(jù)具體的應(yīng)用進行改變從而滿足各種應(yīng)用的需求。
[0024] Safenet為亞馬遜云服務(wù)建立了虛擬密鑰安全管理機制,通過加入虛擬密鑰安全 (Virtual Keysecure)進行加密密鑰管理和存儲,同時該虛擬密鑰機制同時也支持亞馬遜 云中的相關(guān)硬件資源服務(wù),在Safenet云安全防護系統(tǒng)中每個用戶只需要持有一個主密 鑰,并且可W通過簡單的操作將主密鑰配置在云硬件資源中,用于相關(guān)數(shù)據(jù)的加密和解密。 在亞馬遜云硬件資源中也可W安全地存儲通過虛擬密鑰安全機制的密鑰加密過的數(shù)據(jù)。另 夕F,Safenet 還提供一種互用型密鑰管理協(xié)議(KMIP:Ifey Management Interoperability Protocol),該協(xié)議允許在不進行委托的條件下安全地運行在各種不同的密碼環(huán)境中,同時 支持不同的密鑰管理者。
[0025] 國內(nèi)的云計算比較著名的廠家主要有阿里云、百度云等。由于國內(nèi)的云計算發(fā)展 相對國外較晚,目前所主要推廣的產(chǎn)品還是W存儲為主,對云中大規(guī)模的應(yīng)用及開發(fā)的推 廣還處于試驗階段,并沒有投入實際的生產(chǎn)和生活中,該便也決定了目前國內(nèi)云計算主要 解決的問題還是云服務(wù)可靠性,訪問控制W及通信方面,對于云服務(wù)中產(chǎn)生的相關(guān)數(shù)據(jù)的 安全性防護及加密都設(shè)及相對較少,因此對于云密鑰管理的方案還沒有被真正的提出,更 難說應(yīng)用。
[0026] W阿里云來說,它的白皮書中主要包含的內(nèi)容是組織安全,合規(guī)安全,數(shù)據(jù)安全, 訪問控制,人員安全,物力和環(huán)境安全,基礎(chǔ)安全,系統(tǒng)和軟件開發(fā)及維護安全,災(zāi)難恢復(fù)及 業(yè)務(wù)連續(xù)性等。其數(shù)據(jù)安全主要從訪問與隔離、存儲與銷毀兩個方面來談的,其中提到"阿 里云管理的數(shù)據(jù)資產(chǎn),包括客戶和企業(yè)自身在安全政策下管理的數(shù)據(jù)資產(chǎn)。所有阿里云員 工在處理數(shù)據(jù)資產(chǎn)時,必須遵守數(shù)據(jù)分類原則下的數(shù)據(jù)處理流程和準則。阿里云的數(shù)據(jù)分 類不同于傳統(tǒng)IT環(huán)境下基于數(shù)據(jù)密級的分類模式,不但在分類對象方面覆蓋數(shù)據(jù)資產(chǎn)和 包含數(shù)據(jù)的對象,而且在數(shù)據(jù)類型方面也通過明確定義數(shù)據(jù)處理權(quán)限、管理者的區(qū)域、前后 關(guān)系、法律上的約束條件、合同上的限定條件、第=方的義務(wù)來防止數(shù)據(jù)未經(jīng)授權(quán)地披露或 濫用",從該個方面來看,阿里云的數(shù)據(jù)安全還是對于阿里云服務(wù)提供商自己是公開的,因 此也不可W防止來自于阿里云內(nèi)部的攻擊,他們只是通過一定的訪問控制和分權(quán)去實現(xiàn)數(shù) 據(jù)的一定程度安全。
[0027] 而目前的百度云主要為用戶提供的是存儲服務(wù),而且推廣還不錯,在國內(nèi)的用戶 也很多,但是用戶存儲在百度云中的數(shù)據(jù)完全是不加密的,極容易被竊取或者遭受到來自 于云內(nèi)部工作人員的泄露。
[002引總體來說,國內(nèi)云密鑰管理由于受到云計算發(fā)展緩慢的影響,目前的相關(guān)研究成 果較少。
[0029] 綜合上述分析,目前主流的云計算平臺,對密鑰的管理的方式,還是采用"加密孤 島"的方式,各個系統(tǒng)間獨立管理。該使得云計算密碼管理系統(tǒng)較復(fù)雜,而且不能動態(tài)伸縮。 另一方面,在現(xiàn)有的云計算密鑰管理方案中,用戶沒有擁有密鑰的控制權(quán),喪失了對數(shù)據(jù)安 全的控制,密鑰管理設(shè)施掌握了用戶數(shù)據(jù)的所有相關(guān)密鑰,容易引起密鑰泄露。再則,在私 用云中,企業(yè)、機構(gòu)、部口為了保護集體信息財產(chǎn),需要對用戶數(shù)據(jù)進行監(jiān)控,然而目前的云 計算密鑰管理方案還不具備該樣的功能。
【發(fā)明內(nèi)容】
[0030] 為了克服現(xiàn)有技術(shù)的上述缺點,本發(fā)明提供了一種基于同態(tài)加密的分權(quán)密鑰管理 方法,實現(xiàn)了:
[0031] (1)統(tǒng)一管理云計算的密鑰。為云計算平臺提供密鑰管理資源池。
[0032] (2)用戶掌控主密鑰。主密鑰用于派生出云計算中云服務(wù)的密鑰,但不泄露用戶主 密鑰。
[0033] (3)部口具有審計用戶的作用。便于部口掌控集體信息財產(chǎn)。
[0034] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是;一種基于同態(tài)加密的分權(quán)密鑰管理 方法,包括如下步驟:
[0035] 步驟一、用戶主密鑰生成:
[0036] (1)建立同態(tài)加密的系統(tǒng)參數(shù);
[0037] 似根據(jù)系統(tǒng)參數(shù),部口生成自己的公私鑰對(pkD,skD),并將公鑰pk。發(fā)送給用 戶;
[003引 做用戶A根據(jù)系統(tǒng)參數(shù),生成自己的公私鑰對(pkA,skA),并對自己的ID進行 hash運算,得到h ;并使用pk,對h進行加密i W,使用pk。對用戶的私鑰sk A進行加 密歷C而(也);然后將勵(如(/0、妨0地(叱)、pk,發(fā)送給部口;
[0039] (4)部口存儲。抑.4)、并根據(jù)密鑰申請時間t,選擇一個隨機數(shù) IV計算",=風(fēng)(如側(cè)?知如;存儲元組(ct,,rj,并將ct,發(fā)送給用戶A ;
[0040] 妨用戶A接收到ct,,并使用自己的私鑰sk,解密,獲得主密鑰K A;
[0041] 步驟二、云服務(wù)實例密鑰生成:
[0042] (1)建立同態(tài)加密的系統(tǒng)參數(shù);
[0043] (2)密鑰管理中屯、根據(jù)系統(tǒng)參數(shù)和云服務(wù)實例zeN,生成自己的公私鑰對 (pk。ski),并將公鑰pk發(fā)送給云服務(wù)實例;
[0044] (3)云服務(wù)實例將密鑰管理中屯、的公鑰地發(fā)送給用戶A ;
[0045] (4)用戶A隨機選擇一個隨機數(shù)IV計算K心=。^,然后使用公鑰pki對K A,進 行加密,得到地(心,?),將(心發(fā)送給云服務(wù)實例;
[0046] 妨云服務(wù)實例隨機選擇一個數(shù)丫 1,使用公鑰pki對其加密得到化),然后 計算作=仿('/,4 (/(-,,)? £>?('沖化),將cki發(fā)送給密鑰管理中屯、;
[0047] (6)密鑰管理中屯、使用私鑰ski解密ck 1,得到。。;
[0048] 步驟=、針對不同的數(shù)據(jù)實例進行密鑰分發(fā)。
[0049] 與現(xiàn)有技術(shù)相比,本發(fā)明的積極效果是;本發(fā)明利用同態(tài)加密的密文計算特點實 現(xiàn)了安全的密鑰管理,分散了密鑰管理中屯、的密鑰權(quán)限,提升了用戶的控制權(quán)。具體優(yōu)點如 下:
[0化0] (1)中屯、化密鑰管理。統(tǒng)一管理云服務(wù)的密鑰使用,但該中屯、重在密鑰管理,但無 法獲取云服務(wù)正在使用的密鑰。
[0051] (2)用戶私有保存主密鑰。密鑰管理中屯、在不用獲取用戶主密鑰的情況,能夠完成 對云計算服務(wù)密鑰的分發(fā)。
[0052] (3)實現(xiàn)云服務(wù)密鑰的可變性和細粒度的密鑰分發(fā)功能??筛鶕?jù)不同的云服務(wù)類 型、業(yè)務(wù)數(shù)據(jù)類型,分發(fā)不同的密鑰。
[0053] (4)部口審計可W隨時對用戶的業(yè)務(wù)行為和數(shù)據(jù)的監(jiān)控。在私有云中,具有規(guī)范用 戶行為的功能。
[0化4] (5)密鑰管理中屯、只能完成密鑰管理功能,無法獲知用戶主密鑰、W及云計算服務(wù) 的密鑰。
【具體實施方式】
[0化5] 密鑰管理的參與方有:
[0056] (1)用戶;云計算服務(wù)的使用者。
[0057] 似部口:用戶所歸屬的上級部口機構(gòu)。
[005引 做加密代理;為用戶提供數(shù)據(jù)加密服務(wù)
[0化9] (4)密鑰管理中屯、;云計算的第S方密鑰管理中屯、,為云服務(wù)提供密鑰管理服務(wù)。
[0060] (5)云服務(wù);用戶所獲取的云服務(wù)實例。
[0061] 同態(tài)加密,能夠在不解密情況下,進行密文計算,具有廣闊的應(yīng)用前景。目前,全同 態(tài)加密能進行任意的密文計算,但其效率非常低,不能用于現(xiàn)實系統(tǒng)。但是,單同態(tài)具有高 效率的特點,具有實用價值。在本技術(shù)方案中,將利用單同態(tài)加密來設(shè)計分權(quán)的密鑰管理方 案。下面介紹兩種常用的同態(tài)加密算法。該兩種算法都可W作為本技術(shù)方案的同態(tài)加密模 塊使用。
[0062] (l)RSA加密方案
[0063]
【權(quán)利要求】
1. 一種基于同態(tài)加密的分權(quán)密鑰管理方法,其特征在于:包括如下步驟: 步驟一、用戶主密鑰生成: (1) 建立同態(tài)加密的系統(tǒng)參數(shù); (2) 根據(jù)系統(tǒng)參數(shù),部門生成自己的公私鑰對(pkD,skD),并將公鑰pkD發(fā)送給用戶; (3) 用戶A根據(jù)系統(tǒng)參數(shù),生成自己的公私鑰對(pkA,skA),并對自己的ID進行hash 運算,得到h;并使用pkMh進行加密,使用pkD對用戶的私鑰sk4進行加密 崩(先);然后將仏cpA-^ (/〇、拉%-^ (也)、pkA發(fā)送給部門; ⑷部門存儲(先)、,并根據(jù)密鑰申請時間t,選擇一個隨機數(shù)rA,計算 d£氣.((/?)?£/?<;、, (/?,);存儲元組(ctA,rA),并將 ctA發(fā)送給用戶a; (5)用戶A接收到ctA,并使用自己的私鑰skA解密,獲得主密鑰KA; 步驟二、云服務(wù)實例密鑰生成: (1) 建立同態(tài)加密的系統(tǒng)參數(shù); (2) 密鑰管理中心根據(jù)系統(tǒng)參數(shù)和云服務(wù)實例〖eN,生成自己的公私鑰對(plski), 并將公鑰Ph發(fā)送給云服務(wù)實例; (3) 云服務(wù)實例將密鑰管理中心的公鑰ph發(fā)送給用戶A; (4) 用戶A隨機選擇一個隨機數(shù)ri,計算KA,i=KA 〇ri,然后使用公鑰pk#KA,i進行加 密,得到將發(fā)送給云服務(wù)實例; (5) 云服務(wù)實例隨機選擇一個數(shù)Yi,使用公鑰PM^t其加密得到(;〈_),然后計算 (:兔.=£/?(A'L/) ? £氣.,,;(;〈.),將也發(fā)送給密鑰管理中心; (6) 密鑰管理中心使用私鑰ski解密ck^得到KA 〇 & 〇yi; 步驟三、針對不同的數(shù)據(jù)實例進行密鑰分發(fā)。
2. 根據(jù)權(quán)利要求1所述的一種基于同態(tài)加密的分權(quán)密鑰管理方法,其特征在于:所述 密鑰分發(fā)的方式為在線式分發(fā),包括如下流程: (1) 數(shù)據(jù)實例j向密鑰管理中心發(fā)起密鑰請求; (2) 密鑰管理中心選擇一個隨機數(shù)a」,計算a/(KA〇ri〇Yi),并將I」發(fā)送 給數(shù)據(jù)實例; (3) 數(shù)據(jù)實例接收到h,計算Su= |3aj/O^ori),并將a」發(fā)送給密鑰管 理中心。
3. 根據(jù)權(quán)利要求1所述的一種基于同態(tài)加密的分權(quán)密鑰管理方法,其特征在于:所述 密鑰分發(fā)的方式為離線式分發(fā),包括如下流程: (1)數(shù)據(jù)實例j發(fā)起密鑰生成請求,并選取一個隨機數(shù)Su,然后計算SJYp最 后將0 ^發(fā)送給密鑰管理中心; ⑵密鑰管理中心接收到0ij后,計算a』=0ij〇 (KA〇ri〇y)。
【文檔編號】H04L9/08GK104486307SQ201410729943
【公開日】2015年4月1日 申請日期:2014年12月3日 優(yōu)先權(quán)日:2014年12月3日
【發(fā)明者】湯殿華, 安紅章, 白健, 何遠杭 申請人:中國電子科技集團公司第三十研究所