Skip to main content
QUICK REVIEW

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

Shruti Tople, Karan Grover|arXiv (Cornell University)|Oct 1, 2018
Security and Verification in Computing参考文献 31被引用 28
一句话总结

Privado 通过消除输入相关的内存访问模式,将 ONNX 模型自动、零成本地转换为紧凑且安全的 C 代码,实现了基于 Intel SGX 的实用、安全的 DNN 推理即服务。它在 10 个现代神经网络上实现了平均 20.77% 的性能开销,同时确保对侧信道攻击的输入无关性。

ABSTRACT

Recently, cloud providers have extended support for trusted hardware primitives such as Intel SGX. Simultaneously, the field of deep learning is seeing enormous innovation and increase in adoption. In this paper, we therefore ask the question: Can third-party cloud services use SGX to provide practical, yet secure DNN Inference-as-a-service? Our work addresses the three main challenges that SGX-based DNN inferencing faces, namely, security, ease-of-use, and performance. We first demonstrate that side-channel based attacks on DNN models are indeed possible. We show that, by observing access patterns, we can recover inputs to the DNN model. This motivates the need for Privado, a system we have designed for secure inference-as-a-service. Privado is input-oblivious: it transforms any deep learning framework written in C/C++ to be free of input-dependent access patterns. Privado is fully-automated and has a low TCB: with zero developer effort, given an ONNX description, it generates compact C code for the model which can run within SGX-enclaves. Privado has low performance overhead: we have used Privado with Torch, and have shown its overhead to be 20.77\% on average on 10 contemporary networks.

研究动机与目标

  • 为解决在不受信任的云环境中使用 Intel SGX 等可信硬件保护 DNN 推理的挑战。
  • 消除利用 DNN 推理中输入相关内存访问模式的侧信道攻击。
  • 提供完全自动化的、低信任代码基的解决方案,实现模型部署时零开发人员投入。
  • 在不牺牲安全性的前提下,实现 SGX 上推理的高性能效率。
  • 实现具备强安全保证的 DNN 推理即服务的实用化部署。

提出的方法

  • Privado 通过消除输入相关的内存访问模式,将任何基于 C/C++ 的深度学习模型转换为输入无关的形式。
  • 它使用针对 ONNX 模型的静态分析与代码转换流水线,生成可在 SGX 信封内执行的紧凑、安全的 C 代码。
  • 该系统确保内存访问模式不会泄露关于模型输入的信息,从而防止侧信道泄露。
  • Privado 拥有极小的可信计算基(TCB),仅依赖 SGX 硬件和一个小型、形式化可验证的运行时。
  • 它通过接受 ONNX 作为输入并生成优化后的信封兼容代码,与 PyTorch 等现有深度学习框架无缝集成。
  • 该转换完全自动化,无需手动代码修改或开发人员干预。

实验结果

研究问题

  • RQ1基于内存访问模式的侧信道攻击是否能够破坏 SGX 保护下的 DNN 推理中输入的机密性?
  • RQ2如何使 DNN 推理实现输入无关性,以防止 SGX 信封中的此类侧信道泄露?
  • RQ3使用自动化、零投入转换在 SGX 中保护 DNN 推理的性能开销是多少?
  • RQ4能否构建一个结合强安全性、低 TCB 和实用性能的系统,用于 DNN 推理即服务?
  • RQ5现有深度学习框架在多大程度上可以安全且高效地通过 ONNX 作为中间表示部署在 SGX 上?

主要发现

  • 基于内存访问模式的侧信道攻击能够成功恢复 DNN 模型的输入,表明对安全推理构成真实威胁。
  • Privado 有效消除了输入相关的访问模式,使系统具备输入无关性,对这类侧信道泄露具有抵抗力。
  • 当使用 PyTorch 模型部署时,Privado 在 10 个当代深度神经网络上实现了平均 20.77% 的性能开销。
  • Privado 实现了零开发人员投入,可自动将 ONNX 模型转换为适用于 SGX 执行的安全紧凑 C 代码。
  • Privado 的可信计算基极小,仅由 SGX 硬件和一个小型、形式化可验证的运行时组件构成。
  • 该方法实现了具备强机密性保证的实用化安全 DNN 推理即服务部署。

更好的研究,从现在开始

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

无需绑定信用卡

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