如,數(shù)據(jù)訪問策 略可包括與數(shù)據(jù)可以在何時,如何以及被誰訪問相關(guān)聯(lián)的策略。
[0028] 如此,安全處理模塊221可被配置成管理加密以及解密數(shù)據(jù),用于上傳到云服務(wù) 102以及從云服務(wù)102檢索。安全處理模塊221可以進一步被配置成在密鑰服務(wù)器模塊232 被提供到云服務(wù)108之后管理請求并評估與密鑰服務(wù)器模塊232相關(guān)的認證信息。如此, 密碼密鑰管理可以與RKM服務(wù)器111和客戶機系統(tǒng)104a伴隨。
[0029] 圖3示出了示例云服務(wù)器300。云服務(wù)器300對應(yīng)于一個云服務(wù)器,例如,云服務(wù) 102中所包括的云服務(wù)器120a。當(dāng)與圖1和2 -起閱讀時,可以更好地理解下面的對云服 務(wù)器300的描述。云服務(wù)器300可包括處理器電路302、通信電路304和存儲器電路306。 存儲器電路306可包括操作系統(tǒng)308和一個或多個應(yīng)用310。處理器電路302可包括被配 置成執(zhí)行與云服務(wù)器300相關(guān)聯(lián)的操作的一個或多個處理器。通信電路304被配置成使用 一個或多個通信協(xié)議,通過網(wǎng)絡(luò)l〇6a,106b,與客戶機系統(tǒng)104a,...,104m,和/或一個或多 個存儲設(shè)備122a,. ..,122n,以有線和/或以無線方式進行通信,如此處所描述的。通信協(xié) 議可以包括,但不限于,Wi-Fi、3G、4G、以太網(wǎng)和/或某種其他通信協(xié)議。
[0030] 云服務(wù)器300可包括一個或多個受信任的執(zhí)行環(huán)境TEE320,322a,...,322m, 323a,. . .,323n。受信任的執(zhí)行環(huán)境320, 322a,. . .,322m,323a,. . .,323n被配置成提供受 信任的執(zhí)行和存儲環(huán)境,例如,可以符合可信平臺模塊(TPM)協(xié)議,如此處所描述的。TEE 320,322a,. . .,322m,323a,. . .,323n可以以各種形式存在或通過各種技術(shù)來提供,諸如位 于加利福尼亞州圣克拉拉市的英特爾公司所提供的受信任的執(zhí)行技術(shù)("TXT")、可管理性 引擎("ME")、位于英國劍橋的ARMHoldings所提供的TrustZone安全系統(tǒng)、虛擬化技術(shù) ("VT-x"),或微代碼實施的線程和存儲器訪問隔離。云服務(wù)器300示出了在密鑰服務(wù)器模 塊,例如,密鑰服務(wù)器模塊324,以及數(shù)據(jù)處理模塊,例如,數(shù)據(jù)處理模塊330a,...,330m被 加載到相應(yīng)的TEE320和/或322a,...,322m中之后云服務(wù)器的一個示例。在某些實施例 中,密鑰服務(wù)器模塊324以及數(shù)據(jù)處理模塊330a,...,330m可以被加載到TEE320中。
[0031]TEE323a,…,323n可以供其他云消費者(S卩,客戶機)和/或計算設(shè)備 112a,...,112n中的一個或多個使用。TEE323a,...,323n被配置成不會被,例如,TEE320 干擾。例如,如果計算設(shè)備112a與要被,例如,TEE322a,. . .,322m執(zhí)行的數(shù)據(jù)處理相關(guān)聯(lián), 那么,一個或多個其他計算設(shè)備,例如,112b,...,112n可以被配置成使用TEE323a,..., 323n中的一個或多個。如此,單個受信任的執(zhí)行環(huán)境被配置成與其他單個受信任的執(zhí)行環(huán) 境分開并不受它們的干擾。
[0032]TEE320被配置成在執(zhí)行密鑰服務(wù)器模塊324之前向網(wǎng)關(guān)服務(wù)器110提供密鑰服 務(wù)器模塊324的遠程證實。密鑰服務(wù)器模塊324可能已經(jīng)被RKM服務(wù)器111通過網(wǎng)關(guān)服務(wù) 器110,與數(shù)字簽名一起,提供給TEE320。數(shù)字簽名可包括通過非對稱的(即,公共/私有 的)密鑰對的私鑰加密的密鑰服務(wù)器模塊的散列。公鑰和私鑰可以被包括在存儲器電路 206中所包括的密碼密鑰234中。網(wǎng)關(guān)服務(wù)器110可以被配置成向TEE320提供公鑰/私 鑰對的公鑰,用于證實。在某些實施例中,公鑰可以被包括在由RKM服務(wù)器111和/或證書 頒發(fā)機構(gòu)簽名的證書中。在這些實施例中,證書公鑰可以在上傳密鑰服務(wù)器模塊324之前, 通過,例如,安全信道,被提供到TEE320。
[0033] 然后,TEE320可以被配置成散列密鑰服務(wù)器模塊324,并使用公鑰,解密簽名。如 果散列結(jié)果匹配,那么,TEE320被配置成關(guān)于密鑰服務(wù)器模塊324證實網(wǎng)關(guān)服務(wù)器110,由 此,RKM服務(wù)器111。在包括證書的各實施例中,TEE320可以被配置成首先在驗證密鑰服 務(wù)器模塊324之前確認,公鑰對應(yīng)于RKM服務(wù)器111的身份。如此,TEE320被配置成確認 密鑰服務(wù)器模塊324是通過網(wǎng)關(guān)服務(wù)器110從RKM服務(wù)器111上傳的密鑰服務(wù)器模塊232。
[0034] 然后,TEE320可以被配置成執(zhí)行密鑰服務(wù)器模塊324。然后,如果證實成功(即, 如果密鑰服務(wù)器模塊324被驗證),密鑰服務(wù)器模塊324可以被配置成與網(wǎng)關(guān)服務(wù)器110建 立安全通信信道??梢允褂靡阎夹g(shù),例如,密碼方法,來建立安全信道。然后,密鑰服務(wù)器 模塊324可以被配置成通過網(wǎng)關(guān)服務(wù)器110,從RKM服務(wù)器111接收一個或多個密碼密鑰 326,并安全地將密鑰存儲到TEE320中。
[0035]在某些實施例中,TEE320可基于密鑰服務(wù)器模塊324的功能,被配置成"主"受信 任的執(zhí)行環(huán)境。TEE322a,...,322m可被配置成相對于主TEE320的"子"受信任的執(zhí)行環(huán) 境,例如,由于TEE322a,...,322m分別包括可以依賴于密鑰服務(wù)器模塊324提供用于加密 和/或解密數(shù)據(jù)的密碼密鑰的數(shù)據(jù)處理模塊330a,...,330m,如此處所描述的。密鑰服務(wù) 器模塊324可以被配置成在建立受信任的信道之前驗證數(shù)據(jù)處理模塊330a,...,330m。密 鑰服務(wù)器模塊324可以被配置成與數(shù)據(jù)處理模塊330a,. . .,330m建立受信任的和/或安全 通信,以便密鑰服務(wù)器模塊324向TEE322a,...,322m提供密碼密鑰。
[0036]每一數(shù)據(jù)處理模塊330a,...,330m都被配置成在接收密碼密鑰之前提供證實。如 此,每一數(shù)據(jù)處理模塊330a,...,330m可能已經(jīng)與數(shù)字簽名一起被提供到云服務(wù)器300,數(shù) 字簽名可以用于(與公鑰和/或證書一起)驗證數(shù)據(jù)處理模塊330a,...,330m。例如,RKM 服務(wù)器111可以被配置成在網(wǎng)關(guān)服務(wù)器110向云服務(wù)器300提供數(shù)據(jù)處理模塊330a,..., 330m之前對每一數(shù)據(jù)處理模塊330a,...,330m進行簽名。在某些實施例中,數(shù)據(jù)處理模塊 330a,...,330m可以被配置成在密鑰服務(wù)器模塊324和相應(yīng)的數(shù)據(jù)處理模塊之間建立安全 信道之前證實密鑰服務(wù)器模塊324。如果證實成功,則每一TEE322a,...,322m被配置成 確認每一數(shù)據(jù)處理模塊330a,...,330m都對應(yīng)于通過網(wǎng)關(guān)服務(wù)器110從RKM服務(wù)器111上 傳的相應(yīng)的數(shù)據(jù)處理模塊330a,...,330m,并允許相應(yīng)的數(shù)據(jù)處理模塊330a,...,330m在 相應(yīng)的TEE322a,...,322m中執(zhí)行。在某些實施例中,密鑰服務(wù)器模塊324可以被配置成 向網(wǎng)關(guān)服務(wù)器110,并由此向RKM服務(wù)器111,傳遞數(shù)據(jù)處理模塊是否被驗證,如此處所描述 的。
[0037] 在操作中,每一數(shù)據(jù)處理模塊330a,...,330m都被配置成從云存儲設(shè)備 122a,...,122n中的一個或多個檢索一個或多個經(jīng)加密的數(shù)據(jù)塊,并將經(jīng)加密的數(shù)據(jù)加載 到相應(yīng)的TEE322a,...,322m中的相應(yīng)的經(jīng)加密的數(shù)據(jù)/結(jié)果存儲器338a,...,338m中。 每一數(shù)據(jù)處理模塊330a,...,330m都被配置成與TEE320建立安全通信信道,并從TEE320 中檢索一個或多個密碼密鑰。在某些實施例中,密碼密鑰可以是對稱的密鑰。可以使用對 稱的密鑰,因為它們是通過安全信道提供的,例如,通過網(wǎng)關(guān)服務(wù)器110,從RKM服務(wù)器111 到TEE320,并從TEE320到TEE322a,...,322m。使用對稱密鑰的加密和/或解密通常比 使用非對稱密鑰對的公鑰的加密和/或解密更快。
[0038] 每一TEE322a,...,322m都可包括被配置成對例如數(shù)據(jù)執(zhí)行加密和/或解密的 加密/解密模塊332a,...,332m。經(jīng)加密的數(shù)據(jù)338a,...,338m可以由相應(yīng)的密碼模塊 332a,. . .,332m來解密,經(jīng)解密的數(shù)據(jù)334a,. . .,334m可以被存儲在相應(yīng)的TEE322a,..., 322m中。然后,數(shù)據(jù)處理模塊330a,...,330m可以處理經(jīng)解密的數(shù)據(jù)334a,...,334m,并將 結(jié)果336a,. . .,336m存儲到TEE322a,. . .,322m安全存儲器中。然后,密碼模塊332a,..., 332m可以加密結(jié)果336a,...,336m,并在將經(jīng)加密的結(jié)果存儲在云存儲設(shè)備122a,..., 122n中的一個或多個中和/或?qū)⒔?jīng)加密的結(jié)果提供到網(wǎng)關(guān)服務(wù)器110之前將經(jīng)加密的結(jié) 果336a,...,336m存儲在TEE322a,...,322m中。在某些實施例中,經(jīng)加密的數(shù)據(jù)和經(jīng)加 密的結(jié)果可以不存儲在相應(yīng)的TEE322a,...,322m中。在這些實施例中,經(jīng)加密的數(shù)據(jù)可 以被加載到相應(yīng)的TEE322a,...,322m中,由密碼模塊332a,...,332m解密,并作為經(jīng)解密 的數(shù)據(jù)存儲在TEE322a,...,322m中。在處理之后,結(jié)果336a,...,336m可以由密碼模塊 332a,. . .,332m加密,并存儲在例如云存儲設(shè)備122a,. . .,122n中和/或提供給網(wǎng)關(guān)服務(wù) 器IlO0
[0039] 如此,上傳到云存儲設(shè)備122a,. ..,122n的數(shù)據(jù),在云存儲設(shè)備和TEE322a,..., 322m之間移動以及下載到網(wǎng)關(guān)服務(wù)器110的數(shù)據(jù)可以是加密的,相對來說免受來自的云服 務(wù)102的其他客戶機和/或云服務(wù)本身的干擾。當(dāng)在云中時,數(shù)據(jù)可以只在被配置成提供 安全存儲并被配置成云服務(wù)102的其他客戶機不可訪問的受信任的執(zhí)行環(huán)境中解密。
[0040] 如此,根據(jù)本發(fā)明的系統(tǒng)和方法被配置成通過確保不安全的存儲器中的和/或在 非安全的信道上傳播的數(shù)據(jù)是加密加密過的,促進公共云中的受信任的數(shù)據(jù)處理。數(shù)據(jù)在 受信任的執(zhí)行環(huán)境中被解密和處理。密鑰管理通過被配置成提供證實的密鑰服務(wù)器模塊來 提供,密碼密鑰由客戶機RKM服務(wù)器和經(jīng)過驗證的密鑰服務(wù)器模塊管理。
[0041] 圖4示出了根據(jù)本發(fā)明的實施例的示例性操作的流程圖400。操作可以例如由RKM 服務(wù)器111和/或消費者網(wǎng)關(guān)服務(wù)器110執(zhí)行。具體而言,流程圖400描繪了被配置成進 行一下操作的示例性操作:生成密碼密鑰,對數(shù)據(jù)進行加密,以及將經(jīng)加密的數(shù)據(jù),經(jīng)簽名 的密鑰服務(wù)器模塊和經(jīng)簽名的數(shù)據(jù)處理模塊提供給云。
[0042] 流程圖400的操作可以以開始402開始。操作404可包括生成密碼密鑰。例如, 密碼密鑰可以在RKM服務(wù)器111中的受信任的執(zhí)行環(huán)境中生成。在操作406中,可以對密 鑰服務(wù)器模塊進行數(shù)字簽名。例如,安全處理模塊221可以被配置成散列密鑰服務(wù)器模塊, 并使用非對稱密鑰對的私鑰對散列進行加密。操作408可包括將經(jīng)簽名的密鑰服務(wù)器模塊 上傳到云服務(wù)102。在操作410中,可以對數(shù)據(jù)進行加密。例如,可以使用密碼密鑰中的至 少一個,對數(shù)據(jù)進行加密。例如,密鑰可對應(yīng)于使用美國加密標準(AES)隨機地生成的對稱 密鑰。操作412可包括將經(jīng)加密的數(shù)據(jù)上傳到云,例如,云服務(wù)102。在操作414中,可以對 一個或多個數(shù)據(jù)處理模塊進行數(shù)字簽名。在操作416中,可以將經(jīng)簽名的數(shù)據(jù)處理模塊上 傳到云服務(wù)。在操作418中,程序流可以返回。
[0043] 如此,被上傳和/或存儲在云存儲設(shè)備中的數(shù)據(jù)在傳輸并存儲之前可以是加密 的??梢詫γ荑€服務(wù)器模塊和一個或多個數(shù)據(jù)處理模塊進行數(shù)字簽名,數(shù)字簽名被配置成 提供證實能力。
[0044] 操作406和408 -般比操作410到416在較少的時間內(nèi)執(zhí)行。換言之,密鑰服務(wù) 器模塊被配置成為多個數(shù)據(jù)處理模塊提供密鑰管理功能。如此,一旦密鑰服務(wù)器模塊被上 傳,它可以被配置為密鑰管理服務(wù)。類似地,例如,響應(yīng)于來自計算設(shè)備112a,...,112n的 進行數(shù)據(jù)處理的請求,已經(jīng)被上傳的經(jīng)加密的數(shù)據(jù)可以由數(shù)據(jù)處理模塊中的一個或多個重 復(fù)地處理。如果經(jīng)加密的數(shù)據(jù)已經(jīng)被上傳并存在于云服務(wù)102中,那么它不需要被再次上 傳。如此,被配置成提供密鑰管理功能的密鑰服務(wù)器模塊,經(jīng)加密的數(shù)據(jù)以及數(shù)據(jù)處理模塊 可以被上傳到云。
[0045] 圖5示出了根據(jù)本發(fā)明的實施例的示例性操作的流程圖500。操作可以例如由云 服務(wù)器120a、網(wǎng)關(guān)服務(wù)器110和/或RM服務(wù)器111來執(zhí)行。具體而言,流程圖500描繪了 被配置成提供密鑰服務(wù)器模塊以及數(shù)據(jù)處理模塊的證實的受信任的執(zhí)行環(huán)境的示例性操 作。示例性操作進一步被配置成通過網(wǎng)關(guān)服務(wù)器110和云服務(wù)器120a之間的以及密鑰服 務(wù)器模塊和數(shù)據(jù)處理模塊之間的安全信道,提供密碼密鑰。
[0046] 流程圖500的操作可以從開始502開始。在操作504中,可以驗證密鑰服務(wù)器模 塊。例如,密鑰服務(wù)器模塊可以被配置成使用由RKM服務(wù)器111通過網(wǎng)關(guān)服務(wù)器110所提 供的公鑰,證實網(wǎng)關(guān)服務(wù)器和/或RKM服務(wù)器,該公鑰對應(yīng)于用于對密鑰服務(wù)器模塊進行數(shù) 字簽名的私鑰。操作506可包括在云服務(wù)器受信任的執(zhí)行環(huán)境中啟動密鑰服務(wù)器模塊。