Survey							
                            
		                
		                * Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Lecture 2 CMSC 818J: Privacy enhancing technologies Logistics  Piazza?  Short presentations sign-up [Recap] Privacy: End-to-End Solution Users Devices/ Client-side software Network Cloud platform Application (provides computation and storage) This Week  Software architectures that offer data protection from the ground up  For cloud services  On client devices  A more in-depth overview for the rest of the semester  Today: the vision, the glue, and the challenges  Rest of semester: components [Recap] Cloud computing  Cloud computing – storage and computation move into the cloud [Recap] Paradigm Shift Today Future Cloud Model User 7 Trust Model  Applications can be buggy, compromised, or malicious  Cloud platform may be buggy, compromised or malicious  including computation and storage provider  Cloud operators can be nosey or malicious How can we secure our data in the cloud? Why is the problem hard?  Solution 1: Encrypt data stored in cloud  How does the cloud compute over your data?  Fully homomorphic encryption?  Data mining over multiple users’ data?  Spam detection, advertising  Economics  Tension between privacy and utility Stake holders User Application provider Platform provider Usability, functionality, performance Easy app development, $$ $$ Cloud Model User 12 Key Challenges User How can we protect our data against compromised applications? How can we protect our data against a compromised computation provider? 13 How can we protect our data against a compromised storage provider? Roadmap  Step 1: Assume cloud platform is trusted, how can we secure against untrusted applications?  Application confinement  Information flow control/access control  Cloud platform is root of trust  Step 2: How to secure against an untrusted cloud platform?  Trusted computing and code attestation  Secure software systems  Secure storage Roadmap  Step 1: Assume cloud platform is trusted, how can we secure against untrusted applications?  Application confinement  Information flow control/access control  Cloud platform is root of trust  Step 2: How to secure against an untrusted cloud platform?  Trusted computing and code attestation  Secure software systems  Secure storage Untrusted Applications: The Threats Untrusted 3rd-party application User Tax filing app Trusted computation/storage provider Untrusted Applications: The Threats Untrusted 3rd-party application User Tax filing app Trusted computation/storage provider Application confinement User Tax filing app Trusted computation/storage provider Application confinement User Tax filing app Trusted computation/storage provider Access and information flow control User Share data with my doctor Medical advisory app Trusted computation/storage provider Access and information flow control User Share data with my friend Google docs Trusted computation/storage provider Access and information flow control User Application Finance Readers: [Alice] Photos Work Medical [Alice, Bob] [Alice, Charles] [Alice, David] Trusted computation/storage provider Pros, cons, and challenges Pros, cons, and challenges  Scalability, scalability, scalability!  Usability  Economics  Applicability  What about data mining applications?  What about applications and services that call each other (e.g., google maps API) Two Types of Applications Type 1: Silo-based applications Type 2: Data intelligence Bob Recommendations Traffic advice Bob’s financial documents 25 Alice Bob Charlie David …. Threats for statistical releases I want information about Batman’s whereabouts Alice Bob …… Location Database Data mining Mean, std Classification Clustering Is releasing aggregate statistics safe? People who bought also bought Amazon Defense: differential privacy, data sanitization Sealed container Recommendations Traffic advice Alice Bob Charlie …… Platform for Private Data (PPD) Roadmap  Step 1: Assume cloud platform is trusted, how can we secure against untrusted applications?  Application confinement  Information flow control/access control  Cloud platform is root of trust  Step 2: How to secure against an untrusted cloud platform?  Trusted computing and code attestation  Secure software systems  Secure storage How can you trust a remote system? Trusted Platform Module (TPM) Code attestation What code are you running? Trusted Platform Module (TPM) Here’s a digest of my code. Verifier Bootstrapping Trust Through Trusted Hardware Untrusted components Cloud Server Monitor, enforce! Privacy policy 32 Trusted Platform Module (TPM) Privacy evidence Securing storage  Confidentiality  Encryption  Integrity checking  Authenticated data structures  Hiding access patterns  Oblivious storage Support for untrusted storage backend modules File system, DB Key/value store Integrity check Putting it All Together: Platform for Private Data Sealed container Usable API User App developer • Monitor • Enforce Privacy policy TPM 35 Privacy evidence User Apps Secure data capsules Privacy evidence Isolation Information flow control Data sanitization Audit engine … BStore BStore authors’ slides BStore discussions: pros, cons, challenges? BStore discussions: pros, cons, challenges?  Pros:     Users can choose storage provider Centralizes access control Centralizes storage security Lowers bar of entry for small vendors?  Cons, challenges:     Does not support cross-user sharing Does not defend against untrusted apps Should users trust apps to delegate access rights? Incremental deployment?