论文学习笔记 MUSE: Secure Inference Resilient to Malicious Clients

  • 一、背景介绍—神经网络推理
  • 二、在半诚实模型下的模型提取攻击
    • 2.1 模型结构
    • 2.2 半诚实安全推理协议
    • 2.3 针对半诚实安全推理协议的模型提取攻击
  • 三、论文出发点Delphi
  • 四、MUSE协议
    • 4.1 协议构建块(building blocks)
    • 4.2 MUSE
  • 五、总结

一、背景介绍—神经网络推理

这篇论文在2021年被USENIX接收,文章具体连接。

现如今越来越多的应用程序在用户交互中使用神经网络推理,如家庭监控(检测和识别访客)和婴儿监控(监测婴儿行为来及时通知家长)。在神经网络推理中,用户将自己的数据xxx输入服务器端的模型MMM中得到最终的预测输出M(x)M(x)M(x),如下图所示。

然而在实际推理场景中,用户的输入xxx和服务器的模型MMM都是敏感的,所以安全的推理过程要求
1)服务器不会学习到关于xxx的任何信息;
2)用户不会学习到关于MMM的任何信息。
为了实现安全的神经网络推理,大量的研究致力于两方安全协议的研究,提出两方的安全推理方案,如Delphi等。这些方案考虑的是半诚实模型semi-honest。在这种模型中,用户和服务器双方都诚实地遵循协议,并试图从公开的信息中恢复出对方的秘密信息如xxx或MMM。MUSE的第一个贡献便是揭露了,在半诚实的推理过程中恶意的用户可以恢复出服务器的模型信息(模型参数/权重)。第二个贡献便是在客户端恶意的模型中提出了安全的推理协议。贡献contributions概括如下:

  1. 一种针对在半诚实模型下安全推理协议的模型提取攻击(model-extraction attack);
  2. 提出了MUSE:一个高效的在客户端恶意(client-malicious)模型下安全推断协议。

二、在半诚实模型下的模型提取攻击

首先介绍下什么是模型提取攻击。这是一种用户通过与服务器多次交互构造出一个与模型MMM几乎相等的模型M′M'M′的攻击。更具体地,下面我们详细描述这篇论文提出的模型提取攻击是针对什么样的模型(模型结构)和什么样的半诚实安全推理协议。

2.1 模型结构

神经网络的结构如下所示,包含输入层和输出层,以及中间相互交替的线性和非线性层。

用数学符号可以表示为
M(x)=NN(x)=Ml(ReLU(⋯M2(ReLU(M1(x))))),M(x)=NN(x)=M_l(ReLU(\cdots M_2(ReLU(M_1(x))))), M(x)=NN(x)=Ml​(ReLU(⋯M2​(ReLU(M1​(x))))),
其中MiM_iMi​为每个线性层的模型权重,ReLUReLUReLU代表非线性层使用的激活函数为relu。

2.2 半诚实安全推理协议

基于加性秘密分享(additive secret-sharing)的半诚实安全推理协议(Semi-honest secure inference protocols )是指用户和服务器双方拥有每一层输出的一个加性分享。例如,如果第1个线性层的输出为L1(x)L_1(x)L1​(x),则协议执行后用户拥有[[L1(x)]]1[[L_1(x)]]_1[[L1​(x)]]1​、服务器拥有[[L1(x)]]2[[L_1(x)]]_2[[L1​(x)]]2​,其中[[L1(x)]]1+[[L1(x)]]2=L1(x)[[L_1(x)]]_1+[[L_1(x)]]_2 = L_1(x)[[L1​(x)]]1​+[[L1​(x)]]2​=L1​(x)。非线性层也采取类似的技术。在最后一层时,服务器将自己的分享发送给用户,用户执行加法就可以得到最终的输出。

2.3 针对半诚实安全推理协议的模型提取攻击

攻击如下图所示。用户输入xxx= 0,则原则上经历所有线性层和非线性层后最终的输出也是0 。然而,恶意的用户会通过锻造(修改)自己的分享来使得最终的输出为服务器模型权重的一部分。更具体地,在第l−1l-1l−1层时,用户通过将自己的分享第一维+1,使和服务器端分享相加后的值第一维变为1,则该向量与模型权重矩阵MlM_lMl​相乘便会暴露模型权重矩阵的第一列。其他列的模型权重也可以采取类似的手段。为了绕开非线性层对参数求解的阻碍,恶意的用户可以将自己的线性层输出值的分享加上一个锻造值使最终向量为正数,而relu激活函数保留正数,用户便可以稍后减去这个锻造值得到线性层的权重矩阵。通过这种方式,恶意的用户可以从最后一层开始逐渐攻击之前层的模型参数,最终实现整个模型的提取。

三、论文出发点Delphi

Delphi使2020年USENIX上提出的两方半诚实安全推理协议。大家可以点击这里获取更多细节描述。下面我们简单讲解下Delphi的协议过程。通过预处理和在线两个阶段,用户和服务器可以获得关于MixiM_ix_iMi​xi​的分享,即用户拥有的Miri−siM_ir_i-s_iMi​ri​−si​和服务器拥有的Mi(xi−ri)+siM_i(x_i-r_i)+s_iMi​(xi​−ri​)+si​,其中iii代表第iii层,sis_isi​为服务器选取的随机数,rir_iri​为用户选取的随机数。之所以可以把部分操作迁移到预处理阶段是这部分运算不依赖于用户的输出xxx,这样可以节约在线推理的计算和通信开销。正如下图Figure 5所示,双方要将自己线性层的分享输入到混淆电路中计算非线性层并获得非线性层输出的分享,即服务器获得xi+1−ri+1x_{i+1}-r_{i+1}xi+1​−ri+1​和用户获得ri+1r_{i+1}ri+1​。


我们上述的模型提取攻击正是源于客户端将自己的分享进行了锻造(修改),如修改ri+1r_{i+1}ri+1​或者Miri−siM_ir_i-s_iMi​ri​−si​,使最终的输出会泄露模型信息。MUSE主要解决的便是这个问题,该协议能够识别用户的恶意行为并进行协议终止,只有诚实的用户才能获得最终的预测结果。

四、MUSE协议

4.1 协议构建块(building blocks)

  1. 混淆电路

  2. 层级同态加密

  3. 消息认证码

  4. 认证秘密分享

  5. 零知识证明

4.2 MUSE

MUSE的框架(见下图)与Delphi类似,不同之处在于,在预处理阶段,线性层输出了关于两个分享(包括Miri−siM_ir_i-s_iMi​ri​−si​ 和rir_iri​)的认证分享,即<αri>b<\alpha r_{i}>_b<αri​>b​和<α(Miri−si)>b<\alpha (M_ir_i-s_i)>_b<α(Mi​ri​−si​)>b​,其中b∈{0,1}b \in \{0,1\}b∈{0,1}。在针对非线性层设计的混淆电路中,只有对线性层输出的认证分享验证通过才将正确的输入标签给用户,否则服务器终止协议。混淆电路与在线阶段的计算与Delphi几乎相同。



下面是实例化出的协议。第一个协议表示使用同态加密对线性层的输出进行2-out-of-2的秘密分享,第二个协议表示只有双方都输入正确的认证分享(注意,文中假设服务器是半诚实的,用户是恶意的,所以主要还是关注用户输入非法行为的情况),即得到的ρ\rhoρ和σ\sigmaσ都为0(对应两个分享都没作假),协议便会将正确的用户输入标签给用户,否则停止协议。

五、总结

这篇文章对现有的基于加性秘密分享的半诚实安全推理协议进行分析,提出了一种有效的模型提取攻击,使恶意的用户可以通过锻造自己的分享来恢复服务器的模型参数。为了抵御这种模型提取攻击,文章进一步提出了MUSE,一种在用户恶意情况下还能保护双方秘密信息的两方协议,实现安全的神经网络推理。

论文学习笔记 MUSE: Secure Inference Resilient to Malicious Clients相关推荐

  1. 论文学习笔记 SIMC: ML Inference Secure Against Malicious Clients at Semi-Honest Cost

    论文学习笔记 SIMC: ML Inference Secure Against Malicious Clients at Semi-Honest Cost 一.安全神经网络推理 二.论文主要思想 三 ...

  2. 动态环境下的SLAM:DynaSLAM 论文学习笔记

    动态环境下的SLAM:DynaSLAM 论文学习笔记 这篇文章 论文摘要 系统流程 相关环节的实现方法 神经网络检测图中动态物体(Mask R-CNN) Low-Cost Tracking 使用多视图 ...

  3. 识别和追踪主题层次的影响力者(来自2018 Machine Learning 论文学习笔记)

    本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com . 以下内容是个人的论文阅读笔记,内容可能有不到之处,欢迎交流. 未经本人允许禁止转载. 文章目录 论文来源 论 ...

  4. 论文学习笔记 POSEIDON: Privacy-Preserving Federated Neural Network Learning

    论文学习笔记 POSEIDON: Privacy-Preserving Federated Neural Network Learning NDSS 2021录用文章 目录 论文学习笔记 POSEID ...

  5. 【论文学习笔记-2】高分辨率3D深度重建

    [论文学习笔记-2] 高分辨率3D深度重建 背景介绍 模型 目标 Related Works 背景介绍 应用场景广泛:桥,电缆etc 高分辨率图像的特点:像素多,potential disparity ...

  6. Dual Graph Attention Networks for Deep Latent Representation of Multifaceted Social...》论文学习笔记

    Dual Graph Attention Networks for Deep Latent Representation of Multifaceted Social Effects in Recom ...

  7. 论文学习笔记: Learning Multi-Scale Photo Exposure Correction(含pytorch代码复现)

    论文学习笔记: Learning Multi-Scale Photo Exposure Correction--含pytorch代码复现 本章工作: 论文摘要 训练数据集 网络设计原理 补充知识:拉普 ...

  8. 网规第二版:第8章 网络规划与设计论文学习笔记(含历年真题)(完结)

    第8章 网络规划与设计论文学习笔记 8.1写作范围要求 1.网络技术应用与对比分析 2.网络技术对应用系统建设的影响 3.专用网络需求分析.设计.实施和项目管理 4.下一代网络技术分析 8.2论文考试 ...

  9. 【论文学习笔记-10】ActiveStereoNet(Google ECCV2018)主动式双目相机自监督学习立体匹配网络

    [论文学习笔记-10]ActiveStereoNet(Google ECCV2018)主动式双目相机自监督学习立体匹配网络) 自监督训练方法 Experiment ORAL 针对双目立体匹配中无监督存 ...

最新文章

  1. C#中Delegate和Event以及它们的区别(转载)
  2. UI组件:ext、JqueryEasyUI、miniui、dhtmlx及自定义页面
  3. 微信小程序一定要用https的理由,小程序使用HTTPS链接分析
  4. 使用Redis让单号从001递增
  5. Testner自动化测试平台免费开放啦
  6. linux操作系统之读写锁
  7. 快速理解bootstrap,bagging,boosting-三个概念
  8. C/C++ 获取目录下的文件列表信息
  9. 餐饮店楼梯空间的设计方案
  10. pythonname是什么意思_浅析Python __name__ 是什么
  11. Python-Matplotlib可视化(番外篇)——Matplotlib中的事件处理详解与实战
  12. RDMA的原理、传输与Verbs
  13. Android使用拖拽控件来布局界面并展示
  14. 计算机字体库位置,win7电脑的字体库在哪里?
  15. MacOS Ventura 13.0 Beta6 (22A5331f) 带 OC 0.8.4 三分区原版黑苹果镜像
  16. 考虑实时安全优化的自学习自适应交通信号控制
  17. FeedDemon 实务讲义
  18. [苹果开发者账号]06 转让开发者账号后,开发者年费自动续费问题
  19. vmware14克隆后UUID相同的解决方法
  20. matlab数组下标可为正整数和逻辑数

热门文章

  1. 不同label样本画图——颜色分配plt.cm.Spectral
  2. 预览pdf 印章不显示问题
  3. IT外企那点儿事(20): 程序员的大侠情结
  4. 华为物联网操作系统LiteOS内核教程02-HelloWorld
  5. Unity AI 语音识别、语音合成、人机交互(一)
  6. 算法给小码农八大排序 八奇计只为宝儿姐
  7. Vue 电话号码344分割
  8. 计算机专业本科生和研究生比较
  9. IE7、IE6和火狐兼容性问题
  10. 中国有句俗语叫“三天打鱼两天晒网”。 某人从2010年1月1日起开始“三天打鱼两天晒网”, 问这个人在以后的某一天中是“打鱼”还是“晒网”