本發(fā)明屬于加密,尤其涉及一種國密混合同態(tài)加密方法及系統(tǒng)。
背景技術(shù):
1、本部分的陳述僅僅是提供了與本發(fā)明相關(guān)的背景技術(shù)信息,不必然構(gòu)成在先技術(shù)。
2、同態(tài)加密是隱私保護技術(shù)的重要組成部分,在隱私保護方面發(fā)揮了重要作用。全同態(tài)加密的概念最早由在1978年提出,它允許在加密狀態(tài)下對數(shù)據(jù)進行計算而無需解密,從而保證了數(shù)據(jù)在計算過程中的安全。
3、然而,全同態(tài)加密技術(shù)在實際應(yīng)用中也存在密文膨脹、運行效率低等問題,其導致巨大計算、傳輸和存儲成本是制約目前云服務(wù)器外包計算部署的重要瓶頸。在2011年提出了混合同態(tài)加密(hybrid?homomorphic?encryption),將全同態(tài)加密技術(shù)與傳統(tǒng)對稱加密結(jié)合來提升客戶端的運行效率。相較于直接同態(tài)加密消息,客戶端則首先使用同態(tài)算法加密對稱密鑰并傳輸給服務(wù)器,之后的秘密數(shù)據(jù)均只需利用對稱加密傳輸。而云服務(wù)器在進行數(shù)據(jù)處理前會需要同態(tài)地執(zhí)行對稱解密電路以獲取同態(tài)環(huán)境下的對稱明文。這種方案大大降低了客戶端消息加密和傳輸?shù)膹碗s度,但,對所使用的對稱密碼算法的性能提出了更高的要求。
4、sm4算法安全而高效,能抵抗現(xiàn)存的各種攻擊方式并且表現(xiàn)極為優(yōu)秀。目前,缺乏國密標準的混合同態(tài)加密算法,使得相關(guān)企業(yè)只能尋求其他標準的算法來滿足混合同態(tài)加密的需求,限制了在某些特定領(lǐng)域總使用國密算法的能力,同時也存在安全性問題。
技術(shù)實現(xiàn)思路
1、為了解決上述背景技術(shù)中存在的技術(shù)問題,本發(fā)明提供一種國密混合同態(tài)加密方法及系統(tǒng),基于國密算法和同態(tài)加密算法設(shè)計并實現(xiàn)混合同態(tài)加密,填補了在基于國密算法的混合同態(tài)加密上的空白。
2、為了實現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案:
3、本發(fā)明的第一個方面提供一種國密混合同態(tài)加密方法,應(yīng)用于服務(wù)器端,包括:
4、獲取對稱密文,所述對稱密文由明文經(jīng)過國密算法得到;
5、對所述對稱密文進行同態(tài)加密,得到對稱密文同態(tài)密文后,對所述對稱密文同態(tài)密文,運行對稱密碼算法解密電路,并進行同態(tài)解密,得到明文同態(tài)密文;
6、對所述明文同態(tài)密文進行同態(tài)計算操作,得到并發(fā)送加密運算結(jié)果,以對加密運算結(jié)果進行同態(tài)解密,得到運算結(jié)果。
7、進一步地,所述對稱密碼算法解密電路的運行和同態(tài)解密的進行,依據(jù)經(jīng)過同態(tài)加密的對稱密鑰。
8、進一步地,所述對稱密碼算法解密電路的布爾電路門總數(shù)量的減少,通過優(yōu)化對稱密碼算法的線性層和/或非線性層實現(xiàn)。
9、進一步地,所述非線性層的優(yōu)化是指,將對稱密碼算法的s盒劃分為初始的線性擴展、非線性壓縮和線性壓縮;
10、所述初始的線性擴展,通過字節(jié)代替和行位移,擴展s盒的輸入位數(shù);
11、所述非線性壓縮,通過非線性映射,將擴展后的輸入位進行壓縮;
12、所述線性壓縮,通過列混淆和輪密鑰加,將壓縮后的輸入位映射到s盒的輸出位。
13、本發(fā)明的第二個方面提供一種國密混合同態(tài)加密方法,應(yīng)用于客戶端,包括:
14、獲取明文;
15、通過國密算法對所述明文進行對稱加密,得到并發(fā)送對稱密文,以獲取返回的加密運算結(jié)果;
16、對加密運算結(jié)果進行同態(tài)解密,得到運算結(jié)果;
17、其中,加密運算結(jié)果通過對所述對稱密文依次進行同態(tài)加密、運行對稱密碼算法解密電路、進行同態(tài)解密和進行同態(tài)計算操作得到。
18、本發(fā)明的第三個方面提供一種國密混合同態(tài)加密方法,包括:
19、客戶端獲取明文,通過國密算法對所述明文進行對稱加密,得到對稱密文;
20、服務(wù)器端對所述對稱密文依次進行同態(tài)加密、運行對稱密碼算法解密電路、進行同態(tài)解密和進行同態(tài)計算操作,得到加密運算結(jié)果;
21、客戶端對加密運算結(jié)果進行同態(tài)解密,得到運算結(jié)果。
22、本發(fā)明的第四個方面提供一種國密混合同態(tài)加密系統(tǒng),包括客戶端和服務(wù)器端;
23、所述客戶端,用于獲取明文,通過國密算法對所述明文進行對稱加密,得到對稱密文;
24、所述服務(wù)器端,用于對所述對稱密文依次進行同態(tài)加密、運行對稱密碼算法解密電路、進行同態(tài)解密和進行同態(tài)計算操作,得到加密運算結(jié)果;
25、所述客戶端,還用于對加密運算結(jié)果進行同態(tài)解密,得到運算結(jié)果。
26、本發(fā)明的第五個方面提供一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,該程序被處理器執(zhí)行時實現(xiàn)如上述所述的一種國密混合同態(tài)加密方法中的步驟。
27、本發(fā)明的第六個方面提供一種計算機設(shè)備,包括計算機可讀存儲介質(zhì)、處理器及存儲在計算機可讀存儲介質(zhì)上并可在處理器上運行的計算機程序,所述處理器執(zhí)行所述程序時實現(xiàn)如上述所述的一種國密混合同態(tài)加密方法中的步驟。
28、本發(fā)明的第七個方面提供一種計算機程序產(chǎn)品,其為一種含有計算機程序的計算機程序產(chǎn)品,當處理器執(zhí)行所述計算機程序時,實現(xiàn)如上述所述的一種國密混合同態(tài)加密方法中的步驟。
29、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
30、本發(fā)明基于國密算法和同態(tài)加密算法設(shè)計并實現(xiàn)混合同態(tài)加密,填補了在基于國密算法的混合同態(tài)加密上的空白。
31、本發(fā)明采用布爾電路實現(xiàn)同態(tài)加密下的國密算法,由于在同態(tài)加密中與門和異或門的運算是通過門自舉或可編程自舉實現(xiàn)的,因此,經(jīng)過這兩種門運行時間都會顯著增加,本發(fā)明例針對國密算法的線性層和非線性層分別作出優(yōu)化,減少國密算法解密電路實現(xiàn)中的總門數(shù),大大提高了國密算法在同態(tài)加密算法下解密電路的性能。
1.一種國密混合同態(tài)加密方法,其特征在于,應(yīng)用于服務(wù)器端,包括:
2.如權(quán)利要求1所述的一種國密混合同態(tài)加密方法,其特征在于,所述對稱密碼算法解密電路的運行和同態(tài)解密的進行,依據(jù)經(jīng)過同態(tài)加密的對稱密鑰。
3.如權(quán)利要求1所述的一種國密混合同態(tài)加密方法,其特征在于,所述對稱密碼算法解密電路的布爾電路門總數(shù)量的減少,通過優(yōu)化對稱密碼算法的線性層和/或非線性層實現(xiàn)。
4.如權(quán)利要求3所述的一種國密混合同態(tài)加密方法,其特征在于,所述非線性層的優(yōu)化是指,將對稱密碼算法的s盒劃分為初始的線性擴展、非線性壓縮和線性壓縮;
5.一種國密混合同態(tài)加密方法,其特征在于,應(yīng)用于客戶端,包括:
6.一種國密混合同態(tài)加密方法,其特征在于,包括:
7.一種國密混合同態(tài)加密系統(tǒng),其特征在于,包括客戶端和服務(wù)器端;
8.一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,其特征在于,該程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1-4或權(quán)利要求5中任一項所述的一種國密混合同態(tài)加密方法中的步驟。
9.一種計算機設(shè)備,包括計算機可讀存儲介質(zhì)、處理器及存儲在計算機可讀存儲介質(zhì)上并可在處理器上運行的計算機程序,其特征在于,所述處理器執(zhí)行所述程序時實現(xiàn)如權(quán)利要求1-4或權(quán)利要求5中任一項所述的一種國密混合同態(tài)加密方法中的步驟。
10.一種計算機程序產(chǎn)品,其為一種含有計算機程序的計算機程序產(chǎn)品,其特征在于,當處理器執(zhí)行所述計算機程序時,實現(xiàn)如權(quán)利要求1-4或權(quán)利要求5中任一項所述的一種國密混合同態(tài)加密方法中的步驟。