查看原文
其他

SPDZ 学习笔记-part2

小明 隐私计算研习社 2023-04-07

安全多方计算(SecureMultipartyComputation,MPC)旨在解决多个参与方之间的安全计算问题,目的是使各参与方在不知晓其他参与方输入信息的前提下完成计算,并可保证计算过程不泄漏输入信息。我们接part1继续介绍SPDZ的离线和在线阶段的主要流程。
1

离线阶段
离线阶段主要借助同态加密、协议实现,其中同态加密主要保证秘密共享的同态加法、乘法性质,协议主要将秘密值进行分割,进行加法秘密共享,协议主要生成形式的秘密共享值,协议主要生成形式的秘密共享值。
同态加密同态加密方案未提出具体方案,可参考BGV[1]等同态加密方案(在后续SPDZ改进论文中,使用了一层的BGV方案)。
Reshare协议Reshare协议主要输入同态加密密文(明文为),以及一个参数,若,则输出为(由参与方持有 ),且有;若,则输出一个新的密文,新的密文仍然包含

1.各参与方随机选择,记

2.各参与方计算,并将结果发送给其他参与方。

3.各参与方生成的零知识证明,并发送给其他参与方进行验证(零知识证明为一种密码协议,可以在不泄漏秘密值的情况下证明秘密值的正确性)。

4.所有参与方计算  。

5.所有参与方运行分布式解密算法,解密,得到

6.参与方计算,其他参与方计算

7.若,则所有参与方计算


PBracket协议
PBracket协议输入为各参与方的秘密份额,以及一个公共密文(密文中包含  ),输出形式的秘密分享值。

1.对于, 所有参与方计算;各参与方计算,因此各参与方得到了的秘密值份额

2.输出


PAngle协议
PAngle协议输入为各参与方的秘密份额,以及一个公共密文(密文中包含  ),输出形式的秘密分享值。

1.所有参与方计算

2.各参与方计算,因此各参与方得到了的秘密值份额

3.输出


2

离线完整协议

1.初始化。生成全局MAC密钥和参与方密

  • 所有参与方运行分布式密钥生成算法,得到公钥

  • 各参与方生成; 

  • 各参与方生成,记为全局MAC密钥;

  • 各参与方计算并广播密文,,其中

  • 各参与方使用零知识证明协议验证,为正确性;

  • 所有参与方计算,生成秘密分享值

2.生成随机值的秘密共享值

  • 各参与方生成,记

  • 各参与方计算并广播密文,记; 

  • 各参与方使用零知识证明验证密文的正确性;

  • 所有参与方计算

3.生成乘法三元组

  • 各参与方生成,记

  • 各参与方计算并广播密文

  • 各参与方使用零知识证明协议验证密文的正确性; 

  • 所有参与方计算

  • 所有参与方计算; 

  • 所有参与方计算; 

  • 所有参与方计算

  • 所有参与方计算


3

在线阶段完整协议

在现阶段主要完成计算以及中间值和结果的MAC校验等,基础计算主要包括加法、乘法等。

在现阶段主要过程如下:

1. 初始化。准备全局MAC密钥,随机数秘密分享值,乘法三元组等参数。

2. 输入阶段。设参与方的输入为,向打开,然后广播,各参与方计算。输入阶段主要是将输入值分片,产生对应的秘密分享值。

3. 加法计算。设输入为,计算

4. 乘法计算。设输入为,则计算分为两步:1)使用三元组校验;2)计算

5. 输出阶段。再输出最终结果前,需要对中间值、结果进行MAC校验,SPDZ 协议 MAC 验证时为了提高效率,可以在打开多个秘密分享值后通过一次MAC批量校验。

  • 设在此次验证 MAC 前已有个秘密分享值被打开,即有个MAC 未验证,记为,其中对应的秘密分享值为,需要先打开一个随机值,然后各参与方计算,最后各参与方计算

  • 各参与方使用和输出值进行“承诺”,“承诺”函数包括承诺阶段和打开阶段,承诺阶段对秘密值进行“混淆”,生成承诺值,并发送给验证方;打开阶段,发送方将秘密值发送给验证方,验证方使用秘密值(通常也会加入随机数)验证承诺值。“承诺”函数可由Paillier加密、离散对数、哈希等方法构造。

  • 打开全局MAC密钥

  • 各参与方通过承诺函数,打开,然后所有参与方验证,若公式成立,则验证通过,即输出结果正确,否则,终止协议。

  • 打开最终结果前,需要对的承诺值进行验证。验证通过后,计算,然后验证,验证通过,则即为最终正确结果。

4

参考文献

[1] Z. Brakerski, C. Gentry, and V. Vaikuntanathan. (leveled) fully homomorphic encryption without bootstrapping. In ITCS, pages 309–325. ACM, 2012.


本文来自知乎作者:小明原文链接:https://zhuanlan.zhihu.com/p/534036153
END

往期推荐


横向联邦学习下隐私保护安全聚合:问题,方法,与展望
SPDZ学习笔记-part1
为下一代可信计算设计更好的数据中心(arxiv)
基于隐私保护的联邦推荐算法综述
欢迎投稿邮箱:pet@openmpc.com参与更多讨论,请添加小编微信加入交流群

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存