Slalom: Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware Kriti shreshtha.

Slides:



Advertisements
Similar presentations
ACHIEVING NETWORK LEVEL PRIVACY IN WIRELESS SENSOR NETWORKS.
Advertisements

Henry C. H. Chen and Patrick P. C. Lee
Efficient Information Retrieval for Ranked Queries in Cost-Effective Cloud Environments Presenter: Qin Liu a,b Joint work with Chiu C. Tan b, Jie Wu b,
Building web applications on top of encrypted data using Mylar Presented by Tenglu Liang Tai Liu.
1 SECURE-PARTIAL RECONFIGURATION OF FPGAs MSc.Fisnik KRAJA Computer Engineering Department, Faculty Of Information Technology, Polytechnic University of.
Hardware Cryptographic Coprocessor Peter R. Wihl Security in Software.
 Alexandra Constantin  James Cook  Anindya De Computer Science, UC Berkeley.
Security Issues and Challenges in Cloud Computing
Fundamentals of Computer Security Geetika Sharma Fall 2008.
CSCE 715 Ankur Jain 11/16/2010. Introduction Design Goals Framework SDT Protocol Achievements of Goals Overhead of SDT Conclusion.
November 1, 2006Sarah Wahl / Graduate Student UCCS1 Public Key Infrastructure By Sarah Wahl.
CS 550 Amoeba-A Distributed Operation System by Saie M Mulay.
Trusted Computing Technologies for Embedded Systems and Sensor Networks Adrian Perrig Carnegie Mellon University.
Cong Wang1, Qian Wang1, Kui Ren1 and Wenjing Lou2
Security and privacy in the age of software controlled surroundings Prashanth Mohan David Culler.
Load Balancing Dan Priece. What is Load Balancing? Distributed computing with multiple resources Need some way to distribute workload Discreet from the.
A Cloud is a type of parallel and distributed system consisting of a collection of inter- connected and virtualized computers that are dynamically provisioned.
Privacy-Preserving Public Auditing for Secure Cloud Storage
Project Presentation Students: Yan Michalevsky Asaf Cidon Supervisors: Alexander Shraer Assoc. Prof. Idit Keidar.
Improving Network I/O Virtualization for Cloud Computing.
Identity-Based Secure Distributed Data Storage Schemes.
Enabling Dynamic Data and Indirect Mutual Trust for Cloud Computing Storage Systems.
Frontiers in Massive Data Analysis Chapter 3.  Difficult to include data from multiple sources  Each organization develops a unique way of representing.
Presented by: Sanketh Beerabbi University of Central Florida.
Security Vulnerabilities in A Virtual Environment
Data Integrity Proofs in Cloud Storage Author: Sravan Kumar R and Ashutosh Saxena. Source: The Third International Conference on Communication Systems.
Attribute-Based Encryption With Verifiable Outsourced Decryption.
Harnessing the Cloud for Securely Outsourcing Large- Scale Systems of Linear Equations.
SSL(HandShake) Protocol By J.STEPHY GRAFF IIM.SC(C.S)
HardSSH Cryptographic Hardware Key Team May07-20: Steven Schulteis (Cpr E) Joseph Sloan (EE, Cpr E, Com S) Michael Ekstrand (Cpr E) Taylor Schreck (Cpr.
Database Laboratory Regular Seminar TaeHoon Kim Article.
System Models Advanced Operating Systems Nael Abu-halaweh.
Future Internet: Sensor Networks Security Yongkoo Han.
CMSC 818J: Privacy enhancing technologies Lecture 2.
Message Authentication Code
Chapter 6: Securing the Cloud
Searchable Encryption in Cloud
TensorFlow– A system for large-scale machine learning
Introduction to Operating Systems
How can we prove that cloud files are encrypted.?
Chilimbi, et al. (2014) Microsoft Research
Neural Network Implementations on Parallel Architectures
Hybrid Cloud Architecture for Software-as-a-Service Provider to Achieve Higher Privacy and Decrease Securiity Concerns about Cloud Computing P. Reinhold.
Outline What does the OS protect? Authentication for operating systems
Enabling machine learning in embedded systems
Hardware Cryptographic Coprocessor
Peer-to-peer networking
Virtualization, Cloud Computing and Big Data
Cloud Computing By P.Mahesh
Outline What does the OS protect? Authentication for operating systems
Privacy-preserving Machine Learning
Storage Virtualization
Cloud Testing Shilpi Chugh.
Virtual Private Servers – Types of Virtualization platforms Virtual Private ServersVirtual Private Servers, popularly known as VPS is considered one of.
Florian Tramèr (joint work with Dan Boneh)
Layer-wise Performance Bottleneck Analysis of Deep Neural Networks
Autonomous Aggregate Data Analytics in Untrusted Cloud
Cloud Security 李芮,蒋希坤,崔男 2018年4月.
Path key establishment using multiple secured paths in wireless sensor networks CoNEXT’05 Guanfeng Li  University of Pittsburgh, Pittsburgh, PA Hui Ling.
of the Artificial Neural Networks.
Sai Krishna Deepak Maram, CS 6410
ONLINE SECURE DATA SERVICE
Shielding applications from an untrusted cloud with Haven
Aimee Coughlin, Greg Cusack, Jack Wampler, Eric Keller, Eric Wustrow
Helen: Maliciously Secure Coopetitive Learning for Linear Models
Kostas Kolomvatsos, Christos Anagnostopoulos
Pass-the-Hash.
SPIRAL: Security Protocols for Cerberus
Akram Bitar and Larry Manevitz Department of Computer Science
Presentation transcript:

Slalom: Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware Kriti shreshtha

What are neural networks Why do we need it? 3 main motivating scenarios How TEE offers a solution Approach Setting and Assumption Integrity and Privacy Slalom Quantization Input Privacy Implementation Future Work

Neural Networks Vaguely inspired by the biological network of neurons. It is a type of machine learning that models itself after human brain.

Why do we need it? Because Machine learning it getting applied to security critical and sensitive domains to make sensitive decisions Growth in both cloud offerings and software stack complexity widens the attack surface for ML applications Need for integrity and privacy guarantees for the ML computations running in untrusted environment Raises questions about the trust put in the execution environment where ML models are run

3 Main motivating scenarios Outsourced ML : Users must trust the cloud services (to which the ML computations are outsourced) for correct execution. Cloud may also learn the sensitive data provided by the client. Federated Learning : Centralized aggregation of model updates trained on user end-devices enables efficient distributed training. Privacy can be achieved but integrity can not be assured. Infected Hosts : The software and hardware stack in both local and outsourced settings, has to be trusted to be malware free

How TEE offers a solution It could attest to a remote client that it executed a given ML model correctly in the cloud collect data from trusted sensors and attest to the central server that model updates were correctly computed run sensitive ML computations in isolation from a possibly infected host But, the isolation guarantees of TEEs also come at a price in performance

Approach We try to efficiently leverage TEEs for secure machine learning computations Wherein a Deep Neural Network (DNN) execution is partially outsourced from a trusted processor to a co-located, untrusted but faster device Slalom : a framework for efficient DNN evaluations in any trusted execution environment

Setting and Assumption PU and PT are two untrusted and trusted processors respectively a user U delegates the execution of a DNN F(x) : X → Y to the trusted processor PT PT might guarantee two properties i.e. Privacy and Integrity The problem we consider is that of efficiently evaluating the DNN F in PT , by selectively leveraging the fast but untrusted processor PU , without having to sacrifice integrity or privacy.

Integrity and Privacy For integrity, we use Freivald’s algorithm : Matrix multiplication, the main computational bottleneck in DNNs, admits for a simple and concretely efficient secure delegation scheme Blinding : Input privacy for outsourcing a linear function could be achieved using cryptographic techniques, but the overhead is prohibitive in our setting. We instead propose a two-stage approach in which the trusted processor computes linear layers on random inputs in an offline phase, and uses the obtained results to blind (i.e., encrypt) a user’s inputs in a later on-line phase.

Slalom Inputs and weights are quantized and embedded in a field F Linear layers are outsourced to an untrusted device and verified Inputs of linear layers can be blinded with random masks to guarantee privacy of the DNN’s input

Quantization For integrity and privacy (Freivald’s algorithm and blinding) we need to work over a finite field, so floating point is inconvenient Therefore, all inputs and weights of a DNN are quantized so as to operate over integers

Input Privacy To hide user inputs, we use precomputed blinding factors for each outsourced computation The trusted processor PT uses a cryptographic Pseudorandom Number Generator (PRNG) to generate blinding factors The precomputed “unblinding factors” are encrypted and stored in untrusted memory or disk In the online phase, PT regenerates the blinding factors using the same PRNG seed and blinds the inputs sent to the untrusted processor Upon receiving a blinded result, PT loads, decrypts and applies the precomputed unblinding factors

Implementation A lightweight C++ library is designed for feed-forward networks based on Eigen, a linear-algebra library which TensorFlow uses as a CPU backend For integrity, Freivald’s check is applied twice to every layer For privacy AES-CTR and AES-GCM are used to generate, encrypt and authenticate blinding factors For two canonical DNNs, VGG16 and MobileNet, we obtain 20× and 6× increases in throughput for verifiable inference, and 10× and 3.5× for verifiable and private inference Slalom can work with any trusted execution environment. linear DNN layers can be reliably outsourced to boost inference throughput without compromising integrity and even privacy

Future work The techniques described for verifiable outsourcing of DNN forward operations could also be applied to DNN training. Indeed, the backward pass in a DNN essentially makes use of similar linear operators as in the forward pass, and could thus be verified using Freivald’s algorithm.