完全安全的多方计算与密码学的计算开销
1. 电路基础概念
在进行安全计算时,我们需要了解电路的一些基本概念。对于一个电路 (C),其大小 (|C|) 定义为门的数量加上线的数量,而深度则是从输入到输出的最长路径的长度。在分层电路中,深度等于层数。
由于每个服务器读取整个电路 (C) 的描述会使效率目标难以实现,因此我们将协议编译和协议执行分开。协议编译器根据算术电路 (C)(其输入和输出在客户端之间划分)和服务器数量 (n),生成协议中每个参与者的“代码”。在分析协议复杂度时,我们仅计算协议执行的成本(所有参与者的总和),不过协议编译的渐近计算成本与执行协议相同。
2. 打包秘密共享
我们采用 Franklin 和 Yung 引入的打包秘密共享技术,它类似于在 (\mathbb{Z}_p) 上的标准 Shamir 秘密共享,但可以一次性共享一个包含 (l) 个不同值 ((x_1, \cdots, x_l)) 的块,通过一个在 (l) 个不同点取值为 (x_1, \cdots, x_l) 的多项式来实现。为保证隐私,若有 (t) 个参与者被破坏,多项式的次数最多为 (d = t + l - 1)。
当我们有 (n) 个参与者的份额,其中最多 (t) 个是错误的,即使多项式的次数高达 (2d),也能高效地确定正确的秘密块。为此,我们设置 (t = n/8) 且 (l = n/4),同时需要 (p > 2n) 以确保有足够的不同求值点。
用 ([x]_d) 表示使用次数最多为 (d) 的多项式对块 (x) 进行的打包秘密共享。若 (n) 个服务器之间的份额向量 ({s_1, \cdots, s_n}) 能正确匹配一个
超级会员免费看
订阅专栏 解锁全文
36

被折叠的 条评论
为什么被折叠?



