1. 概述
本文提出了一个高效并且准确的安全Transformer推理框架East。作者将该框架应用到BERT上面其推理精度与明文推理保持一致。
- 在激活函数上应用一种新的遗忘分段多项式求值算法
- 为softmax与LN精心设计安全协议
- 进行了几项提高效率的优化
威胁模型:
服务端拥有一个参数被加密的模型 P P P,用户拥有秘密的输入 X X X,同时服务端对 X X X未知并且用户对 P P P未知。我们提供针对一个静态半诚实的概率多项式时间敌手 A A A的安全性,遵循仿真范式。无论敌手多么聪明或者采用何种策略,都无法区分在真实交互中的观察结果和在理想交互中由模拟器生成的观察结果。换句话说,协议的行为在真实交互和理想交互中是等价的,因此敌手无法从交互中获取额外的信息来破解或者攻击协议。
静态半诚实(static semi-honest): 指的是敌手A在协议执行期间遵循协议的规则,但可能会尝试通过观察协议的交互来获取关于参与者的信息。半诚实敌手意味着他不会篡改或伪造通信内容,而是试图通过观察通信来获取信息。
概率多项式时间(probabilistic polynomial time): 指的是敌手A在多项式时间内(即运行时间与输入数据的大小成多项式关系),以一定的概率进行计算。这意味着敌手在有限时间内可能无法破解密码或攻击协议,但并不排除有一定的概率可以成功。
仿真范式(simulation paradigm): 指的是一种安全性证明方法,其中通过模拟敌手的行为来证明协议的安全性。在仿真范式中,假设有一个虚拟的“理想功能”可以实现与协议相同的功能,然后证明协议与理想功能之间的行为是等价的。
2.遗忘分段多项式求值算法(OPPE)
OPPE算法是NFGen的改进,下面将简要介绍NFGen
举例:
其中的比较是Bshare( boolean shares )而相减与相乘又是AShare(arithmetic shares
),其中就有B2A的转换。OPPE取消掉了其中的B2A并且使用多路器代替乘法运算,具有更低的通信量。
3.为softmax与LN精心设计安全协议
3.1 softmax优化
FXP(固定点表示法)
浮点表示法
当输入较大时,指数的结果将超过FXP的极限,另一个困难是计算秘密值的倒数。
3.2 LN优化
4.进一步优化
4.1 线性层的组合
4.2 截断优化
4.3 包通信的处理
当多组数据执行相同的计算时,最好可以同时执行,节省总体成本。
- 元素的计算可以同时进行
- 矩阵中不同行之间的计算可以同时进行
- LN中不同列之间的元素可以看作是不同通道的元素,这样最终的线性变换就等价于BN的线性变换
arXiv:2308.09923v1 [cs.CR] 19 Aug 2023
Subjects Cryptography and Security (cs.CR); Artificial Intelligence (cs.AI); Machine Learning (cs.LG)