隐语小课|两方安全计算ABY2.0 高效的2PC协议

“隐语”是开源的可信隐私计算框架,内置 MPC、TEE、同态等多种密态计算虚拟设备供灵活选择,提供丰富的联邦学习算法和差分隐私机制。

开源项目:
https://github.com/secretflow
https://gitee.com/secretflow

一、介绍

ABY2.0定义了新的sharing,扩展两输入乘法门到多输入乘法门,且其online阶段通信量与输入个数无关。在此基础上,构造了各种高效的原语,如内积、矩阵乘、比较、最大/小池化、相等判断等。
ABY2.0与ABY均是在半诚实模型下的两方安全计算框架,分为setup和online阶段,ABY2.0相比ABY提高了online阶段的效率。

二、更高效的2PC

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第1张图片
ABY2.0与ABY的区别在于Arithmetic Share和Boolean Share,而Yao Share并无区别。
Boolean Share的技术与Arithmetic Share一致,只是环图片图片的区别,本文只介绍Arithmetic Share。

1、Sharing Semantics
图片:对于图片,有图片图片持有图片图片:对于图片,有图片图片
可结合下图理解:

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第2张图片
ABY用的是[ ]-sharing,ABY2.0用的是< >-sharing。
并且,< >可以本地转换为[ ],比如使
图片
[ ]转换为< >需要通信,是通过之后讲述的Sharing Protocol来实现的。
论文中某些计算就是通过把< >转换为[ ]后,采用之前的方法计算,而后直接或者变相把[ ]转换为< >。

2、Sharing Protocol
Setup阶段:图片生成随机数图片
共同生成随机数图片,因此,图片知道值图片
Online阶段:
图片
3、Reconstruction Protocol
Online阶段:
图片

4、Additional ProtocolOnline阶段:
图片

5、Multiplication Protocol
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第3张图片
setupMULT协议用来生成乘法三元组,即根据图片生成图片,并且满足图片,有基于OT和HE两种方式,细节见论文。

6、High level overview of Multiplication Gate
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第4张图片
上面左图中是ABY中的MULT,对输入[a]、[b]使用随机数mask后,调用Reconstruction协议恢复出图片然后求结果[c]。
上面右图中是ABY2.0中的MULT,图片变为已知,本地计算即可求出[c],调用Reconstruction协议恢复出图片,从而求出
新MULT明显的优点是通信量减半,缺点是乘法三元组需要根据具体的电路结构提前生成好,而不能再随便取一个乘法三元组来计算了。

7、Multi-Input Multiplication Protocol
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第5张图片
公式的推导如下图:
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第6张图片
Setup阶段:需要生成四个[ ]-sharing,其中的setupMULT3与setupMULT类似。与MULT相比较,生成的sharing个数从1变为了4。
Online阶段:优点是Constant Communication。
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第7张图片

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第8张图片
Setup阶段:需要生成11个[ ]-sharing,已经有点夸张了。
Online阶段:优点依然是Constant Communication。
由MULT3和MULT4可看出,对于多输入乘法,Online阶段的通信量始终是Constant,只是Setup阶段的预计算量会呈指数增长图片

三、更高效的ABY Share转换

在大多数转换协议中,ABY需要在online阶段调用OT操作,而ABY2.0只需在setup阶段调用OT操作,因此提高了效率。转换协议细节见论文,此处略去。

更高效的基本操作
在前述协议的基础上,文中构建了多个高效的基本操作。高效的原因有两点:

  • 新形的sharing允许合并一些计算与通信
  • 使用Multi-input MULT/AND Gate可以减少电路层数

简要介绍如下:

1、Scalar Product

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第9张图片
与单个MULT类似,内积其实是执行了多个MULT,并且合并图片使得只需一次通信即可。

2、Matrix Multiplication

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第10张图片
Setup:使用setupMULT生成矩阵相乘时两两元素的乘法三元组,在此基础上构造出结果矩阵的[]-shares。
Online:对于pq矩阵与qr矩阵的乘法,结果矩阵的维度是p*r,通信量是O(pr),相比之前协议的O(pqr)有了很大的提升。

3、Depth-Optimized Circuits

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第11张图片
通过使用多输入门可以减少电路层数。
上图中的8-bit PPA加法器,通过使用MULT3/MULT4,从3层电路变为了2层电路。64-bit电路、求最高位电路与此类似。

4、Comparison

为求图片,先计算图片,转换图片,再把图片通过Share Protocol转换为图片,然后就可以使用Depth-optimized Circuits中的求最高位电路。

5、Truncation

< >-sharing转换为[ ]-sharing,使用论文SecureML中的本地截断方法,然后再转回< >-sharing。

6、MAX2/MIN2

使用了Comparison。

7、MAX3/MIN3

使用了Comparison。

8、Non-linear Activation Functions

ReLU使用了上述的MAX: ReLU(v) = max(0, v)Sigmoid用了分段函数:
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第12张图片

9、Maxpool and Minpool

使用了MAX3/MIN3构造三叉树,来减少树的层数。

10、Equality Testing

对两操作数先求异或,再对所有位执行与操作。
使用了AND4 gate(AND4即为图片下的MULT4)来减少树的层数。

四、性能

文中测试了LR与NN的性能,与SecureML做了对比,性能有大幅提高,如下图:
隐语小课|两方安全计算ABY2.0 高效的2PC协议_第13张图片

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第14张图片

隐语小课|两方安全计算ABY2.0 高效的2PC协议_第15张图片

五、与Cheetah对比

ABY2.0 Cheetah
Semi-honest secure
Two-party computation
Mixed-Protocol
(A、B、Y)
Hybrid system
(HE-based Linear Layers and Secret Sharing-based Non-linear Layers) or (A、B、H)
Use IKNP-style OT Use Silent-OT
Function-dependent Preprocessing No Preprocessing
General Protocol for MPC
(e.g. ABY、Turbospdz 、 ABY2.0)
Special Protocol for DNN Inference
(e.g. Delphi、CryptFlow2、Cheetah)

总之,ABY2.0与Cheetah都是高效的半诚实两方协议,实现技术不同,目标也不同,有点类似于CPU与GPU的对比。

六、总结

ABY2.0具有以下优缺点,其预计算过程需事先知道要计算的函数,这是使用时需要注意的地方。
优点:

  • Constant online cost of 2 ring elements for N-input MUL/AND Gates
  • Better mixed protocol conversions
  • Set of efficient building blocks

缺点:

  • Function-dependent preprocessing
  • More complicated preprocessing

七、参考文献

ABY2.0
https://www.usenix.org/system/files/sec21summer_patra.pdf

ABY2.0_slides
https://www.usenix.org/system/files/sec21_slides_patra.pdf

Cheetah
https://www.usenix.org/system/files/sec22-huang-zhicong.pdf

隐语社区:
https://github.com/secretflow
https://gitee.com/secretflow
https://www.secretflow.org.cn(官网)

欢迎关注:
公众号:隐语的小剧场
B站:隐语secretflow
邮箱:[email protected]

你可能感兴趣的:(隐私计算机科学协议)