本申請涉及同態(tài)加密,尤其涉及一種bfv全同態(tài)加密自舉的方法、裝置、設備和存儲介質(zhì)。
背景技術(shù):
1、全同態(tài)加密(fully?homomorphic?encryption,fhe)是一類特殊的加密方案,任何人可以在不持有解密密鑰的情況下在加密的數(shù)據(jù)上進行無限次數(shù)的計算。fhe在隱私計算領域有廣泛應用,其中,最典型的應用場景是外包計算:用戶將大量同態(tài)加密的數(shù)據(jù)上傳到云服務器,利用云服務器的強大算力在密文上進行復雜的計算,最后云服務器將計算結(jié)果以同態(tài)加密密文的形式返回給用戶。在這個過程中,云服務器只能看到用戶的密文,因此用戶的數(shù)據(jù)隱私得到了保護,目前主流的fhe方案包括ckks(cheon-kim-kim-song)、bgv(brakerski-gentry-vaikuntanathan)、bfv(brakerski-fan-vercauteren)和tfhe(troy-fan-homomorphic?encryption)。
2、自舉(bootstrapping)是fhe方案中的重要算法,如果不進行自舉,fhe方案則只能進行有限次數(shù)的同態(tài)計算,自舉通常是全同態(tài)計算中最耗時的環(huán)節(jié),是fhe方案的效率瓶頸。目前ckks、tfhe和bgv自舉的效率已經(jīng)相對較高,但是bfv自舉的效率仍然較為低下,尤其是在bfv的明文模數(shù)有較大的素數(shù)因子(以下將其稱為明文素數(shù))時。
技術(shù)實現(xiàn)思路
1、本申請實施例提供一種bfv全同態(tài)加密自舉的方法、裝置、設備和存儲介質(zhì),該方法可以提高bfv自舉的效率。
2、本申請的技術(shù)方案是這樣實現(xiàn)的:
3、第一方面,提供了一種bfv全同態(tài)加密自舉的方法,包括:
4、對待自舉的初始bfv密文?進行多次模數(shù)轉(zhuǎn)換處理,得到第一bfv密文;所述初始bfv密文中包括對第一明文多項式加密的初始密鑰;
5、基于從第一密鑰到所述初始密鑰的密鑰轉(zhuǎn)換公鑰和所述第一bfv密文,確定第二bfv密文;所述第一密鑰為對所述初始密鑰進行轉(zhuǎn)換后得到的,所述第二bfv密文的密文模數(shù)大于所述第一bfv密文的密文模數(shù);
6、基于所述第二bfv密文中的第二明文多項式對應的零化多項式,對所述第二明文多項式進行系數(shù)低數(shù)位移除,得到自舉后的密文。
7、第二方面,提供了一種bfv全同態(tài)加密自舉的裝置,包括:
8、第一處理模塊,用于對待自舉的初始bfv密文進行多次模數(shù)轉(zhuǎn)換處理,得到第一bfv密文;所述初始bfv密文中包括對第一明文多項式加密的初始密鑰;
9、第一確定模塊,用于基于從第一密鑰到所述初始密鑰的密鑰轉(zhuǎn)換公鑰和所述第一bfv密文,確定第二bfv密文;所述第一密鑰為對所述初始密鑰進行轉(zhuǎn)換后得到的,所述第二bfv密文的密文模數(shù)大于所述第一bfv密文的密文模數(shù);
10、第二處理模塊,用于基于所述第二bfv密文中的第二明文多項式對應的零化多項式,對所述第二明文多項式進行系數(shù)低數(shù)位移除,得到自舉后的密文;其中,所述自舉后的密文中的明文多項式為所述第一明文多項式,所述第一明文多項式的系數(shù)為所對所述第二明文多項式進行系數(shù)低數(shù)位移除后得到的系數(shù)。
11、第三方面,提供了一種bfv全同態(tài)加密自舉的設備,包括:處理器和存儲器;其中,
12、所述存儲器,用于存儲能夠在所述處理器上運行的計算機程序;
13、所述處理器,用于在運行所述計算機程序時,執(zhí)行本申請實施例提供的bfv全同態(tài)加密自舉的方法。
14、第四方面,提供了一種計算機可讀存儲介質(zhì),存儲介質(zhì)上存儲有計算機程序代碼,當所述計算機程序代碼被計算機執(zhí)行時,執(zhí)行本申請實施例提供的bfv全同態(tài)加密自舉的方法。
15、本申請實施例中提供了一種bfv全同態(tài)加密自舉的方法,包括:對待自舉的初始bfv密文進行多次模數(shù)轉(zhuǎn)換處理,得到第一bfv密文;基于從第一密鑰到初始密鑰的密鑰轉(zhuǎn)換公鑰和第一bfv密文,確定第二bfv密文;第一密鑰為對初始密鑰進行轉(zhuǎn)換后得到的,第二bfv密文的密文模數(shù)大于第一bfv密文的密文模數(shù);對第二bfv密文中的第二明文多項式進行系數(shù)低位數(shù)移除,得到自舉后的密文。如此,由于第二bfv密文的密文模數(shù)大于第一bfv密文的密文模數(shù),因此可以將初始bfv密文轉(zhuǎn)換到更大的密文模數(shù)上,進一步,通過第二明文多項式對應的零化多項式對第二明文多項式進行系數(shù)低位數(shù)移除,可以減小第二明文多項式的系數(shù),從而降低算法的計算復雜度,更快地確定出自舉后的密文,提高bfv自舉的效率。
1.一種bfv全同態(tài)加密自舉的方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對待自舉的初始bfv密文進行多次模數(shù)轉(zhuǎn)換處理,得到第一bfv密文,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于從第一密鑰到所述初始密鑰的密鑰轉(zhuǎn)換公鑰和所述第一bfv密文,確定第二bfv密文,包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述第二bfv密文中的第二明文多項式對應的零化多項式,對所述第二明文多項式進行系數(shù)低位數(shù)移除,得到自舉后的密文,包括:
5.根據(jù)權(quán)利要求1至4任一項所述的方法,其特征在于,所述自舉后的密文的密文模數(shù)大于所述第二bfv密文的密文模數(shù)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述將所述第一bgv密文進行自舉,得到第二bgv密文,包括:
8.一種bfv全同態(tài)加密自舉的裝置,其特征在于,包括:
9.一種bfv全同態(tài)加密自舉的設備,其特征在于,包括:處理器和存儲器;其中,
10.一種計算機可讀存儲介質(zhì),其特征在于,所述存儲介質(zhì)上存儲有計算機程序代碼,當所述計算機程序代碼被計算機執(zhí)行時,執(zhí)行權(quán)利要求1至7中任一項所述的方法。