Skip to main content
QUICK REVIEW

[论文解读] Privado: Practical and Secure DNN Inference with Enclaves

Karan Grover, Shruti Tople|arXiv (Cornell University)|Oct 1, 2018
Network Security and Intrusion Detection参考文献 66被引用 29
一句话总结

Privado 是一种系统,通过消除输入相关的内存访问模式,实现基于 Intel SGX 机密环境的实用且安全的 DNN 推理。它在 11 个现代 DNN 上实现了平均 17.18% 的性能开销,同时阻止了通过观察访问模式实现的侧信道攻击,该攻击在 MNIST 和 CIFAR-10 上的准确率分别达到 97% 和 71%。

ABSTRACT

Cloud providers are extending support for trusted hardware primitives such as Intel SGX. Simultaneously, the field of deep learning is seeing enormous innovation as well as an increase in adoption. In this paper, we ask a timely question: "Can third-party cloud services use Intel SGX enclaves to provide practical, yet secure DNN Inference-as-a-service?" We first demonstrate that DNN models executing inside enclaves are vulnerable to access pattern based attacks. We show that by simply observing access patterns, an attacker can classify encrypted inputs with 97% and 71% attack accuracy for MNIST and CIFAR10 datasets on models trained to achieve 99% and 79% original accuracy respectively. This motivates the need for PRIVADO, a system we have designed for secure, easy-to-use, and performance efficient inference-as-a-service. PRIVADO is input-oblivious: it transforms any deep learning framework that is written in C/C++ to be free of input-dependent access patterns thus eliminating the leakage. PRIVADO is fully-automated and has a low TCB: with zero developer effort, given an ONNX description of a model, it generates compact and enclave-compatible code which can be deployed on an SGX cloud platform. PRIVADO incurs low performance overhead: we use PRIVADO with Torch framework and show its overhead to be 17.18% on average on 11 different contemporary neural networks.

研究动机与目标

  • 解决在不受信任的云平台中提供安全 DNN 推理即服务时的关键差距,即必须保护模型权重和输入数据的机密性。
  • 证明即使在输入被加密的情况下,SGX 机密环境中的 DNN 推理仍可能因基于内存访问模式的侧信道攻击而受到威胁。
  • 设计一种系统,实现输入无关性(即无数据依赖的访问模式),且无需开发者投入,同时保持极小的可信计算基(TCB)。
  • 通过最小化开销来实现实际可用的性能,同时对能够观察机密环境内存访问模式的强大攻击者提供强有力的安全部署。
  • 提供一个完全自动化、端到端的解决方案,将 ONNX 模型转换为可部署于 SGX 平台的机密兼容、输入无关的代码。

提出的方法

  • Privado 采用两组件架构:Privado-Converter 负责分析并转换模型计算图为数据无关代码,Privado-Generator 负责生成紧凑的、可兼容机密环境的 C/C++ 代码。
  • 它识别出‘赋值或无操作’型访问模式——即条件分支要么赋值,要么立即退出——从而实现对数据依赖内存访问模式的自动消除。
  • 系统应用诸如内存访问的随机化和填充等输入无关原语,以掩盖数据依赖的访问模式,确保所有内存访问与输入值无关。
  • Privado 通过 ONNX 支持任意 DNN 框架,实现与现有模型和工具(如 PyTorch (Torch))的零影响集成,无需模型微调或手动代码修改。
  • 通过最小化机密环境的攻击面,系统确保了极小的 TCB,仅在机密环境中运行必要的推理逻辑,而将 I/O 和系统操作委托给不受信任的主机。
  • 它利用 Intel SGX 的硬件隔离机制,保护模型权重和输入免受云管理员和受损软件栈的威胁,同时通过认证和安全通道实现端到端信任。

实验结果

研究问题

  • RQ1即使输入被加密,基于内存访问模式的侧信道攻击是否仍能威胁 SGX 机密环境中的 DNN 推理?
  • RQ2DNN 中的数据依赖访问模式在多大程度上可以被自动消除,以实现输入无关的执行?
  • RQ3是否可以构建一个系统,实现对访问模式泄露的强安全防护,同时保持极低的性能开销和零开发者投入?
  • RQ4与现有解决方案相比,完全自动化、输入无关的 DNN 推理系统在现代真实 DNN 架构上的性能表现如何?
  • RQ5是否可能在不牺牲易用性的前提下,通过可信硬件在 DNN 推理即服务中同时实现强安全性和实际可用性能?

主要发现

  • 即使模型在 MNIST 和 CIFAR-10 上的原始准确率分别为 99% 和 79%,攻击者仅通过观察推理过程中的内存访问模式,仍能以 97% 和 71% 的准确率分类加密输入。
  • Privado 通过自动化转换 DNN 计算图,完全消除了所有数据依赖的访问模式,实现了输入无关性,且无需手动代码修改。
  • 在使用 PyTorch 框架时,Privado 在 11 个现代 DNN 上仅带来平均 17.18% 的性能开销,证明了其在真实世界部署中的实用性。
  • Privado 支持任何以 ONNX 格式描述的模型,实现了与现有深度学习框架和工具的无缝集成,且无需开发者投入。
  • 系统通过最小化机密环境的攻击面,保持了极小的可信计算基(TCB),仅将必要的推理逻辑隔离在机密环境中。
  • Privado 是首个在单一、完全自动化的流水线中,同时解决输入无关性、极小 TCB、易用性和低性能开销的 DNN 推理系统。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。