胡予濮,董思越,王保倉,劉 君
西安電子科技大學 綜合業務網理論與關鍵技術國家重點實驗室,西安710071
Garbling 是一個有著多重應用的密碼原語.Garbling 主要適用于權力受限的場景,其中最早的應用是安全多方計算(MPC)[1,2].隨后出現的應用有屬性加密(ABE)和函數加密(FE),有意思的是garbling和FE 常常互為底層結構[3,4].Garbling 還被應用于不可區分混淆(indistinguishability obfuscation,IO)[5-7].注意到garbling 和obfuscation 的中文翻譯同為“混淆”,說明garbling 和IO 有相似的功能,但后者的定義更強大.
Garbling 的所有應用都源于以下兩個基本場景,是這兩個基本場景的組合或變形.
關于上述兩個基本場景,我們有以下三個注解.
注解1 基本場景一中的“定向選擇不經意傳輸” 是容易實現的.
注解2 基本場景一就是多方安全計算的底層結構.以用戶U1和用戶U2的兩方安全計算為例,設用戶U1知道x1,用戶U2知道x2,雙方都知道電路C(·,·).雙方希望共同計算C(x1,x2) 的值,但U1需要隱藏x1,U2需要隱藏x2.于是,首先取f(·)C(x1,·),U1和U2在基本場景一中分別扮演Alice 和Bob,使U2獲得f(x2)C(x1,x2).其次取f(·)C(·,x2),U1和U2位置互換,在基本場景一中分別扮演Bob 和Alice,使U1獲得f(x1)C(x1,x2).兩次使用基本場景一,就使用戶U1和用戶U2都得到C(x1,x2)(正確性);但U1不知道x2,U2不知道x1(隱私性).
注解3 基本場景二不能成為多方安全計算的底層結構.這是因為在基本場景二中,一方擁有的知識包含了另一方擁有的知識,不符合多方安全計算的場景設置.
2013 年以前的garbling 方案[1,2,8,9]都是一次性garbling.即一次編碼(基本場景一或基本場景二)只能計算一個f和一個x的組合值f(x),否則將……