引導發生在哪裡,客戶端還是伺服器端?
在完全同態加密中,引導過程在客戶端還是伺服器端執行?
另外,哪一方持有密鑰和公鑰?
全同態加密 (FHE) 的目的是將計算外包,特別是外包到雲上或從小型計算設備安全地外包到功能更強大的設備中。FHE 是密碼學的聖杯,等待了大約 30 年才被發現,Rivest 提到了關於數據庫和隱私同態。
在 FHE 方案中,我們討論的是類似於電子學的電路計算,但這次是在數學上。為了語義安全,添加了雜訊,這是執行 FHE 操作時的主要問題——即處理雜訊。
當使用所使用的 FHE 方案執行電路操作時,雜訊會增加。尤其是乘法是有問題的——雜訊加倍。超過門檻值後,您將無法再解密密文。例如在整數上的完全同態加密中
$$ c \leftarrow m + 2r + 2x $$在哪裡 $ m \in {0,1} $ , $ r $ 是隨機(雜訊),並且 $ x $ 是公鑰(注意:這裡 $ x $ 部分是簡化的)
bootstrapping是 Gentry 給我們的新奇想法。在達到門檻值之前,Gentry 表明我們可以執行他的方案的解密算法電路,並為該解密電路提供密文並加密私鑰。最後,我們將獲得新的密文,但噪音消失了。
現在,如果我們轉向你的問題。實際上,對於 FHE 電路,您可以計算所選方案的深度要求和可能的技術,例如自舉、重新線性化、模數切換。一旦你設計並實現了你的電路,你將所有資訊發送給你的外包計算(在 FHE 術語中) $ \texttt{EVAL} $ )。如果您在某些時候需要自舉來降低雜訊,您已經提供了有關電路的必要資訊並使用自舉對其進行了設計。是的,實際上,自舉是電路的一部分。**不需要互動。**觸發並忘記,直到結果返回給您。
對於評論:
你準備好你的電路 $ \mathcal{C} $ 並提供評估所需的參數; $$ \texttt{EVAL} (k_{pub}, \mathcal{C}, c_1,\ldots,c_l, E_{k_{pub}}(prv)) $$在哪裡 $ c_1,\ldots,c_l $ 是明文的加密,即 $ c_i = E_{k_{prv}}(p_i) $ , $ k_{pub} $ 是你的公鑰,你的私鑰加密 $ E_{k_{pub}}(prv)) $ 如果需要引導。
一如既往;
- 您將私鑰保密,並且
- 公鑰是公開的。