郝偉 楊曉元 王緒安 張英男 吳立強



摘要:為使移動設備更加方便快捷地解密存儲于云端的外包數據,根據基于身份的廣播加密(IBBE)系統和基于身份的加密(IBE)系統,使用Green等提出的解密外包的技術(GREEN M, HOHENBERGER S, WATERS B. Outsourcing the decryption of ABE ciphertexts. Proceedings of the 20th USENIX Conference on Security. Berkeley: USENIX Association, 2011: 34),提出一種改進的非對稱跨加密系統的代理重加密(MACPRE)方案。該方案更適合計算能力有限的移動設備安全共享云端數據。移動用戶在解密重加密后的數據時,運行一次指數運算和一次配對運算便可以將明文恢復,大大提高了移動用戶解密的效率,降低了移動用戶的能耗。該方案的安全性可以歸約到底層的IBE方案和IBBE方案的安全性。理論分析和實驗結果表明,該方案使得移動設備花費較少的時間便可以將存儲在云端的數據解密,緩解了移動設備計算能力的不足,實用性較強。
關鍵詞:代理重加密;基于身份的加密;基于身份的廣播加密;解密外包;數據共享
中圖分類號: TP309
文獻標志碼:A
0引言
隨著普適計算和無線通信技術的快速發展,智能手機、平板等移動設備被廣泛地應用于數據外包系統中,比如云存儲[1]。在這類應用中,用戶可以使用手機等移動設備,通過網絡或其他無線通信技術訪問固定設備外包的數據,即訪問由第三方存儲的數據。這類應用中最主要的問題就是數據安全問題。為了防止不可信的存儲服務器獲悉外包數據的內容,通常要將外包的數據加密[2]。資源豐富、計算能力強的數據擁有者通常喜歡使用基于身份的廣播加密(Identity-Based Broadcast Encryption, IBBE)[3]加密自己的信息,從而可以使大批用戶同時共享自己的信息。然而,資源有限、計算能力偏弱的移動終端用戶通常使用基于身份的加密(Identity-Based Encryption, IBE)[4]加密自己的信息,這樣可以避免繁瑣的公鑰證書發布問題。
目前,在上述實際應用中存在一個障礙。擁有強計算能力設備的用戶,比如臺式機用戶,想用耗能但方便的IBBE[5]加密外包的數據;而擁有有限計算能力的移動終端用戶,如手機用戶,想用節約資源的IBE加密自己的數據。然而,這就出現一個問題:該如何設計一個機制,使得安裝有IBE加密系統的設備直接訪問IBBE加密過的文件?
上述問題在記者的移動辦公中是非常常見的。新聞辦公室里的每個職員都有自己唯一的身份信息,他們的臺式計算機由于計算能力強,都安裝IBBE的加密系統。辦公室里的職員Alice為了讓其他所有同事同時安全地共享她的信息,同時節約內存,便可以用IBBE將她的信息加密并存儲在云端。然而,在外進行暗訪的記者Bob為了自身的安全,只能使用資源有限且比較小的智能設備,如手機,收集信息,同時使用節約資源的IBE加密方案加密自己的數據。當Alice(或辦公室里的其他同事)想讓Bob獲悉她(他)的加密數據,Alice又不想從云端下載數據然后解密,再用IBE加密發給Bob。一種更方便的方法是將Alice的密文直接轉換成Bob可以解密的密文。
此時,會想到用代理重加密技術[6]來解決該問題。代理重加密這個概念是由Blaze等[7]在1998年的歐洲密碼學年會上提出的。在代理重加密方案中,一個擁有一些額外信息的半可信代理者可以把用A的公鑰加密消息M所得到的密文轉換為用B的公鑰加密消息M所得到的密文,但是這個代理者并不能獲得關于消息M的任何信息,也不能獲得任何由A或者B的公鑰加密過的消息的任何信息。Chu等[8]在標準模型中構造了一個選擇密文攻擊(Chosen Ciphertext Attack, CCA)安全的基于身份的代理重加密方案。崔寧等[9]提出了一個基于雙線性映射的無證書代理重加密方案,將無證書密碼體制與代理重加密結合起來,并在標準模型下證明了該方案是抗適應性選擇消息攻擊的。Srinivasan等[10]利用標志控制技術提出了一個不用配對的無證書代理重加密方案。2014年,Liang等[11]提出了一個高效的可撤銷基于身份的代理重加密方案(Identity-Based Proxy Re-Encryption, IB-PRE),可以用于云數據共享以及其他網絡應用,只需要密鑰生成(Private Key Generator, PKG)中心在每個時間段內公開一段固定長度的字符串,該方案在標準模型下是可證明安全的。但上述方案都不能解決上述提到的問題。根據實際需要,基于文獻[3]的IBBE方案、文獻[4]的IBE方案的變形方案,Deng等[12]提出了非對稱、跨加密系統的重加密(Asymmetric Cross-Cryptosystem Re-Encryption, ACCRE)方案,該方案運用密鑰隱藏技術很好地解決了上述問題,即在轉換密鑰的生成過程中,數據擁有者借用一個隨機數隱藏他的IBBE私鑰,然后再用指定的數據共享者的身份通過IBE加密將該隨機數加密,代理者使用該轉換密鑰,用數據擁有者被隱藏的私鑰“部分地”解密IBBE密文,從而產生一個帶有該隨機數的IBE密文,被指定的數據共享者便可以用他的私鑰先恢復出該隨機數,然后得到明文。
但是,在Deng等[12]的方案中,移到端的用戶需要兩次配對運算才能將代理重加密后的密文解密,當移動用戶要頻繁地解密數據時,這對于計算資源有限的移動用戶來說是承擔不起的,而且效率會非常低,因此提高移動用戶的解密效率又成了一個突出問題。
針對該問題,本文結合Green等[13]的解密外包技術,提出改進的ACCRE方案即改進的非對稱跨加密系統的代理重加密(Modified Asymmetric Cross-cryptosystem Proxy Re-Encryption, MACPRE)方案,該方案使得移動用戶在解密代理重加密過的數據時,運行一次指數運算便可以將方案中對稱密鑰k恢復,然后只需運行一次配對運算便可以將明文恢復,這很好地解決了移動用戶計算能力不足的問題,進而大大提高了移動用戶解密的效率,節約了移動用戶的辦公時間,而且不會影響原方案的安全性,這在文獻[13]中已得到了證明。
1.2問題描述
兩個擁有不對稱計算能力的設備之間安全地共享信息。比如,移動設備是智能手機,固定設備是臺式計算機和服務器。臺式機計算機和服務器為了更好地分享外包的數據,使用IBBE加密各自的信息,而移動設備計算能力有限,使用IBE加密自己的信息。因此,該方案中有兩種形式的密文,即IBE密文和IBBE密文。當IBBE系統中的用戶,想讓IBE系統中的用戶分享自己的數據時,出現一個問題,即如何讓IBBE用戶將IBBE密文安全地轉換成IBE密文,限制條件如下:
1)IBE用戶不安裝IBBE加密系統;
2)IBBE用戶不安裝IBE加密系統;
3)想傳遞數據的IBBE用戶不需要解密他的IBBE密文。
1.3系統模型
使用一個全新的非對稱跨加密系統的代理重加密(MACPRE)方案解決上述的問題。結合ACCRE的系統結構[12],新系統結構如圖1所示。在該系統中有下面五個參與方:
1)管理器(Admin): 產生公共參數及私鑰。
2)云存儲提供商(Cloud Storage Provider, CSP):為數據擁有者提供存儲服務。
3)數據擁有者(Data Owner):使用IBBE加密自己的數據,然后外包給CSP。
4)數據共享者(Data Consumer):如果擁有管理器發布的正確的私鑰,便可以解密IBE密文。
5)代理者(Proxy):如果有數據擁有者產生的轉換密鑰,可以將IBBE加密的密文轉換成IBE加密的密文。
在MACPRE系統中,數據擁有者使用IBBE加密數據,數據共享者使用IBE加密數據。這里,忽略IBBE系統中的數據共享者和IBE系統中的數據擁有者。當數據擁有者想將存儲在CSP中的IBBE加密的數據,轉換成用數據共享者的身份進行IBE加密的數據時,數據擁有者不需要解密IBBE密文。他用自己的私鑰和數據共享者的身份信息產生一個轉換密鑰CK,然后將CK發送給代理者。代理者從CSP中下載數據擁有者的數據,然后用CK將IBBE形式的密文轉換成數據共享者可以解密的IBE形式的密文。在數據轉換的全過程中,CSP和數據共享者都不需要參與,而且數據擁有者僅僅需要在發送數據的過程中在線。加入解密外包技術后,當數據共享者解密數據時,他將部分解密外包數據的轉換密鑰TK發送給代理者,代理者進行部分解密,然后將部分解密的密文發回給數據共享者,數據共享者再用他保留的私鑰將明文恢復。
3.2安全性分析
原ACCRE方案的安全性在文獻[12]中已給出了詳細的證明,ACCRE方案是基于IBBE[3]和IBE[4]的變形方案構造的,因此ACCRE方案的安全性取決于它所依賴的IBBE方案和IBE變形方案的安全性。文獻[3]對IBBE方案的安全性進行了嚴格的證明,而方案中的IBE方案是文獻[4]中IBE方案的變形,變形后的IBE方案與原方案不同的只是,將原方案中私鑰的指數的分母替換成了H(ID)。將H作為一個隨機預言機,在私鑰的詢問過程中通過控制這個隨機值,仍然可以證明變形后的IBE方案是安全的。結果表明,攻擊者分別攻破IBBE和IBE方案的優勢之和,要遠小于攻擊者攻破ACCRE方案的優勢,然而攻擊者分別攻破IBBE和IBE方案的優勢又可以被忽略,所以攻破ACCRE方案的優勢也就可以被忽略,因此ACCRE方案是安全的。
在移動端的IBE系統中加入解密外包的技術后,并不會影響原方案的安全性,這在文獻[13]中也給出了詳細的說明。文獻[13]表明,加入解密權力外包的技術后,原IBE方案中的解密方,只是將他原來擁有的私鑰SK變換成了只有他自己才知道的隨機數z,使解密方在實施解密過程中減少配對運算。而執行部分解密的代理者,只是機械地、部分地解密文件,他既不會得知明文的信息,又不能得知解密方的私鑰,因此,在移動端加入解密外包的技術后的IBE系統,仍是安全的。
綜上所述,本文提出的MACPRE方案是安全可靠的。
3.3效率分析
3.3.1理論分析
由于對稱加解密的計算開銷僅僅與數據的大小有關,而且與ACPRE的代理重加密機制無關,因此不考慮它們的開銷。本文主要關注非對稱加密系統中開銷大的操作,即指數運算和雙線性配對。
從表1可以清楚地看到,對于計算能力有限的移動端,改進后的方案比原ACCRE方案具有更高的解密效率:改進后的方案中,移動端只需一次指數運算和一次配對運算便可以將轉換密文解密;而原方案中,移動端需要兩次配對運算才可以將轉換密文解密。雖然,引進文獻[13]的技術后,移動用戶在解密時需多執行一次外包密鑰產生算法,但這并不影響改進后的移動端解密的效率,因為該操作只在第一次解密時執行,在以后的轉換密文解密過程中,他不必再執行外包密鑰產生算法,僅僅需一次指數運算和一次配對運算便可以將轉換密文解密,因此可以忽略外包密鑰產生算法的時間。可見,對于轉換密鑰的頻繁解密,改進后的MACPRE方案比原方案的效率更高,實用性更強。
表2在方案的效率、是否需要交互、是否為跨加密系統等方面,將MACPRE方案與原ACCRE方案,及其他代理重加密方案進行了比較。盡管文獻[8]的方案中公私鑰長度、原始密文長度、轉換的后密文長度、轉換密鑰長度都是恒定的,但
是它只能在同樣的IBE系統中轉換密文,它不能一次性指定
一批用戶共享數據,而只能是單個用戶。文獻[14]允許在公鑰加密(Public Key Encryption, PKE)系統中加密的數據轉換成IBE系統中的數據,但是,在轉換過程中,數據擁有者需要與數據共享者交互。雖然基于ABE構造的文獻[15]允許多個用戶共享同一個數據,但是,在解密轉換密文的過程中,雙線性配對的個數會隨著屬性的個數N線性增長,這大大增加解密方的負擔。與文獻[15]相比,文獻[12]方案中原始密文長度、重加密密鑰、轉換后的密文長度都比較短。與文獻[8,14]相比,文獻[12]方案允許多個用戶同時共享原始數據。而且文獻[12]方案在重加密密鑰的生成過程中,不需要管理器和數據共享者的參與,同時該方案還支持跨加密系統的代理重加密。而MACPRE方案與文獻[12]相比,在原始密文長度、重加密密鑰、轉換后的密文長度等方面都相同,但在解密中,MACPRE方案只需一次配對運算,效率更高,更符合移動用戶計算能力有限的實際,更能夠滿足移動用戶的頻繁解密。這些特點都說明MACPRE方案的實用性。
表3在移動用戶的公私鑰長度、原始密文的長度、解密中需要的配對運算等方面,將MACPRE方案與其他方案進行了對比。MACPRE方案中移動用戶使用的IBE方案,與標準的IBE方案[4]相比,兩者的公鑰長度相同,但是,前者的解密密鑰小于后者的,前者在解密過程中不需要配對運算,同時前者還支持代理重加密。文獻[12]中末使用解密外包機制,需要進行兩次配對運算才能恢復出明文。而MACPRE方案使用解密外包機制,只需一次配對運算便能恢復明文。通過比較可以發現,本文的方案允許移動用戶花費較小的功耗就可以進行數據的解密,在需頻繁解密的數據外包環境中實用性較強。
3.3.2性能分析
基于文獻[16]的實驗結果,在使用因特爾四核i3-2130處理器,運行頻率為3.40GHz的臺式計算機模擬固定用戶,使用裝有安卓v4.1.2操作系統的三星Galaxy S3模擬移動用戶,使用斯坦福的基于雙線性對的密碼學(Pairing-Based Cryptography, PBC)庫[17]進行雙線性群的操作的環境下,一次配對運算的耗時為0.682s,一次GT中元素的模指數運算的耗時為0.139s,分別估算出MACPRE方案中移動用戶解密的耗時情況和文獻[12]的ACCRE方案中移動用戶解密的耗時情況,并作比較。移動用戶解密的耗時情況主要取決于使用臺式機的辦公用戶數n,因此分別取辦公用戶數n=10,20,…,100,觀察隨辦公用戶數增多,同一移動用戶分別使用ACCRE和MACPRE方案,解密轉換后密文的耗時情況,結果如圖2所示。
從圖2可以看出,隨著辦公室中辦公用戶數的增多,使用ACCRE方案或MACPRE方案解密的移動用戶,所消耗的時間均不變,但是,移動用戶使用MACPRE方案解密的耗時為0.821s,而使用ACCRE方案解密的耗時卻為1.364s,由此可見,相比ACCRE方案,使用MACPRE方案解密數據更加快捷,更適合移動用戶計算能力不足的情形。
基于上面的分析,在相同實驗條件下,觀察在多次解密情況下,移動用戶分別利用ACCRE方案和MACPRE方案解密外包數據的耗時情況。令l表示次數,取l=10,20,…,100,結果如圖3。
從圖3可以看出,在移動用戶頻繁解密外包數據的時候,相比使用ACCRE方案,使用MACPRE會為用戶節約大量的時間,同時也為移動設備節約更多的計算資源,更適合計算能力不足的移動設備使用,實用性更強。
4結語
結合原有的非對稱跨加密系統的非對稱重加密方案,使用現存的IBE方案的變形方案和IBBE方案,用解密外包機制,本文提出了一個便于移動用戶訪問外包數據的非對稱代理重加密方案,可以為兩個能力不對等的計算設備進行加密數據的轉換,為計算能力有限的移動設備訪問加密的外包數據提供了有效的實用途徑。但是,與現存的其他跨加密系統的方案相比,本文的方案雖然提高了移動用戶解密數據的速度,但是移動用戶解密時仍需要進行配對運算。因此,今后將進一步設計只需進行指數級運算便能實現解密方解密的非對稱代理重加密方案。
參考文獻:
[1]CHU C K, CHOW S S M, TZENG W G, et al. Key-aggregate cryptosystem for scalable data sharing in cloud storage [J]. IEEE Transactions on Parallel and Distributed Systems, 2014, 25(2): 468-477.
[2]LEE B. Unified public key infrastructure supporting both certificate-based and ID-based cryptography [C]// ARES 2010: Proceedings of the 2010 International Conference on Availability, Reliability, and Security. Piscataway,NJ: IEEE, 2010: 54-61.
[3]DELERABLE C. Identity-based broadcast encryption with constant size ciphertexts and private keys [C]// Proceedings of the 2007 13th International Conference on the Theory and Application of Cryptology and Information Security, LNCS 4833. Berlin: Springer, 2007: 200-215.
[4]BONEH D, BOYEN X. Efficient selective-id secure identity-based encryption without random oracles [C]// Proceedings of the 2004 International Conference on the Theory and Applications of Cryptographic Techniques, LNCS 3027. Berlin: Springer, 2004: 223-238.
[5]DENG H, WU Q D, QIN B, et al. Tracing and revoking leaked credentials: accountability in leaking sensitive outsourced data [C]// Proceedings of the 2014 9th ACM Symposium on Information Computer and Communications Security. New York: ACM, 2014: 425-434.
[6]WANG L H, WANG L C, MAMBO M, et al. Identity-based proxy cryptosystems with revocability and hierachical confidentialities [C]// ICICS 2010: Proceedings of the 12th International Conference on Information and Communications Security, LNCS 6476. Berlin: Springer, 2010: 383-400.
[7]BLAZE M, BLEUMER G, STRAUSS M. Divertible protocols and atomic proxy cryptography [C]// Proceedings of the 1998 International Conference on the Theory and Application of Cryptographic Techniques, LNCS 1403. Berlin: Springer, 1998: 127-144.
[8]CHU C K,TZENG W G. Identity-based proxy re-encryption without random oracles [C]// ISC 2007: Proceedings of the 10th International Conference on Information Security, LNCS 4779. Berlin: Springer, 2007: 189-202.
[9]崔寧,李艷瓊.基于雙線性對的無證書代理重加密方案[J].信息技術,2013 (7): 34-36.(CUI N, LI Y Q. A cerfiticateless proxy re-encryption scheme from pairings [J]. Information Technology, 2013(7): 34-36.)
[10]SRINIVASAN A, RANGAN C P. Certificateless proxy re-encryption without pairing: revisited [C]// SCC 2015: Proceedings of the 3rd International Workshop on Security in Cloud Computing. New York: ACM, 2015: 41-52.
[11]LIANG K, LIU J K, WONG D S, et al. An efficient cloud-based revocable identity-based proxy re-encryption scheme for public clouds data sharing [C]// Proceedings of the 2014 19th European Symposium on Research in Computer Security, LNCS 8712. Berlin: Springer, 2014: 257-272.
[12]DENG H, WU Q H, QIN B, et al. Asymmetric cross-cryptosystem re-encryption applicable to efficient and secure mobile access to outsourced data [C]// Proceedings of the 10th ACM Symposium on Information, Computer and Communications Security. New York: ACM, 2015: 393-404.
[13]GREEN M, HOHENBERGER S, WATERS B. Outsourcing the decryption of ABE ciphertexts [C]// Proceedings of the 20th USENIX Conference on Security. Berkeley: USENIX Association, 2011: 34.
[14]MATSUO T. Proxy re-encryption systems for identity-based encryption [C]// Proceedings of the First International Conference on Pairing-Based Cryptography, LNCS 4575. Berlin: Springer, 2007: 247-267.
[15]LUO S, HU J B, CHEN Z. Ciphertext policy attribute-based proxy re-encryption [C]// Proceedings of the 12th International Conference on Information and Communications Security, LNCS 6476. Berlin: Springer, 2010: 401-415.
[16]SHAO J, LU R X, LIN X D. Fine-grained data sharing in cloud computing for mobile devices [C]// Proceedings of the 2015 IEEE Conference on Computer Communications. Piscataway, NJ: IEEE, 2015: 2677-2685.
[17]LYNN B. The Stanford pairing based cryptography library [EB/OL]. [2015-11-20]. http://crypto.stanford.edu/pbc.