本公開(kāi)涉及執(zhí)行完全同態(tài)加密(fhe)以映射無(wú)約束2的冪fhe多項(xiàng)式的可重配置計(jì)算電路。
背景技術(shù):
1、同態(tài)加密是一種加密形式,它允許對(duì)加密數(shù)據(jù)執(zhí)行計(jì)算,而無(wú)需首先對(duì)其進(jìn)行解密。計(jì)算對(duì)多項(xiàng)式執(zhí)行。多項(xiàng)式的次數(shù)(degree)是多項(xiàng)式的具有非零系數(shù)的個(gè)體項(xiàng)的最高次數(shù)。項(xiàng)的次數(shù)是項(xiàng)中的變量的指數(shù)之和。多項(xiàng)式的次數(shù)是多項(xiàng)式中的最高指數(shù)。
2、例如,多項(xiàng)式5x2y4+3x-10具有三個(gè)項(xiàng)、兩個(gè)變量(x、y)和兩個(gè)系數(shù)(與變量相乘的數(shù))。第一項(xiàng)的次數(shù)為6(指數(shù)2和指數(shù)4之和),第二項(xiàng)的次數(shù)為1,并且第三項(xiàng)的次數(shù)為0。多項(xiàng)式的次數(shù)為6(多項(xiàng)式中的最高指數(shù))。
3、完全同態(tài)加密(fully?homomorphic?encryption,fhe)使得能夠?qū)用軘?shù)據(jù)或密文進(jìn)行計(jì)算,而不是對(duì)明文或未加密數(shù)據(jù)進(jìn)行計(jì)算,從而使得數(shù)據(jù)始終受到保護(hù)。fhe使用網(wǎng)格加密技術(shù),這給潛在的攻擊者帶來(lái)了復(fù)雜的數(shù)學(xué)挑戰(zhàn)。
4、fhe標(biāo)準(zhǔn)支持各種各樣的多項(xiàng)式,多項(xiàng)式的次數(shù)在從1024(1k)到128k的范圍內(nèi),并且多項(xiàng)式中的每個(gè)系數(shù)可在從32比特到2k比特的范圍內(nèi),這取決于多項(xiàng)式的次數(shù)。
技術(shù)實(shí)現(xiàn)思路
1、本公開(kāi)的一個(gè)方面提供了一種裝置,包括:可重配置完全同態(tài)加密加速器,包括:多個(gè)計(jì)算元件,用于支持對(duì)次數(shù)為(n*m)*1024的多項(xiàng)式的操作,m大于1;瓦片的陣列,每個(gè)瓦片包括所述多個(gè)計(jì)算元件中的一個(gè)或多個(gè);其中,所述計(jì)算元件執(zhí)行以下操作:對(duì)次數(shù)為n*1024的一個(gè)或多個(gè)獨(dú)立多項(xiàng)式執(zhí)行數(shù)論變換(ntt)和逆ntt操作,并且將所述一個(gè)或多個(gè)獨(dú)立多項(xiàng)式的輸出系數(shù)轉(zhuǎn)換為字交錯(cuò)形式,其中所述多個(gè)計(jì)算元件在旁路模式中操作以將所述輸出系數(shù)的字交錯(cuò)形式轉(zhuǎn)換到連續(xù)形式,而不修改且不影響所述輸出系數(shù)的值;以及便箋式存儲(chǔ)器,用于存儲(chǔ)由所述多個(gè)計(jì)算元件用于執(zhí)行數(shù)論變換(ntt)和逆ntt(intt)操作的系數(shù);以及存儲(chǔ)器,用于存儲(chǔ)要由所述可重配置完全同態(tài)加密加速器處理的數(shù)據(jù)。
2、本公開(kāi)的另一方面提供了一種系統(tǒng),包括:處理器核心;可重配置完全同態(tài)加密加速器,包括:多個(gè)計(jì)算元件,用于支持對(duì)次數(shù)為(n*m)*1024的多項(xiàng)式的操作,m大于1;瓦片的陣列,每個(gè)瓦片包括所述多個(gè)計(jì)算元件中的一個(gè)或多個(gè);其中,所述計(jì)算元件執(zhí)行以下操作:對(duì)次數(shù)為n*1024的一個(gè)或多個(gè)獨(dú)立多項(xiàng)式執(zhí)行數(shù)論變換(ntt)和逆ntt操作,并且將所述一個(gè)或多個(gè)獨(dú)立多項(xiàng)式的輸出系數(shù)轉(zhuǎn)換為字交錯(cuò)形式,其中所述多個(gè)計(jì)算元件在旁路模式中操作以將所述輸出系數(shù)的字交錯(cuò)形式轉(zhuǎn)換到連續(xù)形式,而不修改且不影響所述輸出系數(shù)的值;以及便箋式存儲(chǔ)器,用于存儲(chǔ)由所述多個(gè)計(jì)算元件用于執(zhí)行數(shù)論變換(ntt)和逆ntt(intt)操作的系數(shù);以及存儲(chǔ)器,用于存儲(chǔ)要由所述可重配置完全同態(tài)加密加速器處理的數(shù)據(jù)。
3、本公開(kāi)的又一方面提供了一種方法,包括:可重配置完全同態(tài)加密加速器,包括:通過(guò)所述可重配置完全同態(tài)加密加速器中的瓦片的陣列中的多個(gè)計(jì)算元件來(lái)支持對(duì)次數(shù)為(n*m)*1024的多項(xiàng)式的操作,m大于1;通過(guò)所述計(jì)算元件對(duì)次數(shù)為n*1024的一個(gè)或多個(gè)獨(dú)立多項(xiàng)式執(zhí)行數(shù)論變換(ntt)和逆ntt操作;通過(guò)所述計(jì)算元件將所述一個(gè)或多個(gè)獨(dú)立多項(xiàng)式的輸出系數(shù)轉(zhuǎn)換為字交錯(cuò)形式,其中,所述多個(gè)計(jì)算元件在旁路模式中操作以將所述輸出系數(shù)的字交錯(cuò)形式轉(zhuǎn)換到連續(xù)形式,而不修改且不影響所述輸出系數(shù)的值;在便箋式存儲(chǔ)器中存儲(chǔ)由所述多個(gè)計(jì)算元件用于執(zhí)行數(shù)論變換(ntt)和逆ntt(intt)操作的系數(shù);以及在存儲(chǔ)器存儲(chǔ)要由所述可重配置完全同態(tài)加密加速器處理的數(shù)據(jù)。
4、本公開(kāi)的又一方面提供了一種設(shè)備,包括用于執(zhí)行任一方面所述的方法的裝置。
5、本公開(kāi)的又一方面提供了一種機(jī)器可讀介質(zhì),包括代碼,所述代碼在被執(zhí)行時(shí)使得機(jī)器執(zhí)行如任一方面所述的方法。
1.一種裝置,包括:
2.如權(quán)利要求1所述的裝置,其中,所述可重配置完全同態(tài)加密加速器響應(yīng)于接收到的多項(xiàng)式intt數(shù)據(jù)移動(dòng)指令而將所述多個(gè)計(jì)算元件配置為在旁路模式中操作。
3.如權(quán)利要求2所述的裝置,還包括:
4.如權(quán)利要求3所述的裝置,其中,當(dāng)被配置在旁路模式中時(shí),所述第一2:1多路復(fù)用器選擇所述第一輸入并且所述第二2:1多路復(fù)用器選擇所述第二輸入。
5.如權(quán)利要求4所述的裝置,其中,所述第一輸入是a,所述第二輸入是b,所述第一輸出是a+b*旋轉(zhuǎn)因子,并且所述第二輸出是a-b*所述旋轉(zhuǎn)因子。
6.如權(quán)利要求5所述的裝置,其中,a是32比特并且b是32比特。
7.如權(quán)利要求1至6中任一項(xiàng)所述的裝置,其中,n在運(yùn)行時(shí)期間是固定的,并且在執(zhí)行工作負(fù)載之前被作為元數(shù)據(jù)包括在接收到的多項(xiàng)式intt數(shù)據(jù)移動(dòng)指令中。
8.如權(quán)利要求1至6中任一項(xiàng)所述的裝置,其中,計(jì)算元件的輸入是ntt/intt操作的多項(xiàng)式輸入系數(shù)。
9.如權(quán)利要求1至6中任一項(xiàng)所述的裝置,其中,m是16。
10.一種系統(tǒng),包括:
11.如權(quán)利要求10所述的系統(tǒng),其中,所述可重配置完全同態(tài)加密加速器響應(yīng)于接收到的多項(xiàng)式intt數(shù)據(jù)移動(dòng)指令而將所述多個(gè)計(jì)算元件配置為在旁路模式中操作。
12.如權(quán)利要求11所述的系統(tǒng),還包括:
13.如權(quán)利要求12所述的系統(tǒng),其中,當(dāng)被配置在旁路模式中時(shí),所述第一2:1多路復(fù)用器選擇所述第一輸入并且所述第二2:1多路復(fù)用器選擇所述第二輸入。
14.如權(quán)利要求13所述的系統(tǒng),其中,所述第一輸入是a,所述第二輸入是b,所述第一輸出是a+b*旋轉(zhuǎn)因子,并且所述第二輸出是a-b*所述旋轉(zhuǎn)因子。
15.如權(quán)利要求14所述的系統(tǒng),其中,a是32比特并且b是32比特。
16.如權(quán)利要求10至15中任一項(xiàng)所述的系統(tǒng),其中,n在運(yùn)行時(shí)期間是固定的,并且在執(zhí)行工作負(fù)載之前被作為元數(shù)據(jù)包括在接收到的多項(xiàng)式intt數(shù)據(jù)移動(dòng)指令中。
17.如權(quán)利要求10至15中任一項(xiàng)所述的系統(tǒng),其中,計(jì)算元件的輸入是ntt/intt操作的多項(xiàng)式輸入系數(shù)。
18.如權(quán)利要求10至15中任一項(xiàng)所述的系統(tǒng),其中,m是16。
19.如權(quán)利要求10至15中任一項(xiàng)所述的系統(tǒng),其中,所述可重配置完全同態(tài)加密加速器包括高帶寬存儲(chǔ)器。
20.如權(quán)利要求10至15中任一項(xiàng)所述的系統(tǒng),還包括與所述可重配置完全同態(tài)加密加速器耦合的高帶寬存儲(chǔ)器。
21.一種方法,包括:
22.如權(quán)利要求21所述的方法,還包括:
23.如權(quán)利要求21所述的方法,其中,n在運(yùn)行時(shí)期間是固定的,并且在執(zhí)行工作負(fù)載之前被作為元數(shù)據(jù)包括在接收到的多項(xiàng)式intt數(shù)據(jù)移動(dòng)指令中。
24.一種設(shè)備,包括用于執(zhí)行如權(quán)利要求21-23中任一項(xiàng)所述的方法的裝置。
25.一種機(jī)器可讀介質(zhì),包括代碼,所述代碼在被執(zhí)行時(shí)使得機(jī)器執(zhí)行如權(quán)利要求21-23中任一項(xiàng)所述的方法。