sieve cryptographically enforced access control for user
play

Sieve: Cryptographically Enforced Access Control for User Data in - PowerPoint PPT Presentation

Sieve: Cryptographically Enforced Access Control for User Data in Untrusted Clouds Frank Wang (MIT CSAIL) , James Mickens (Harvard), Nickolai Zeldovich (MIT CSAIL), Vinod Vaikuntanathan (MIT CSAIL) 1 Motivation Boston Marathon NY Marathon


  1. Sieve: Cryptographically Enforced Access Control for User Data in Untrusted Clouds Frank Wang (MIT CSAIL) , James Mickens (Harvard), Nickolai Zeldovich (MIT CSAIL), Vinod Vaikuntanathan (MIT CSAIL) 1

  2. Motivation Boston Marathon NY Marathon FitBit Cloud Server Insurance 2

  3. Motivation Boston Marathon NY Marathon FitBit Cloud Server Insurance 2

  4. Motivation Boston Marathon NY Marathon FitBit Cloud Server Insurance 2

  5. Motivation Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 2

  6. Problem: Curious storage provider or external attacker Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 3

  7. Problem: Curious storage provider or external attacker Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 3

  8. Naïve Approach: Encrypt Data under 1 key Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 4

  9. Naïve Approach: Encrypt Data under 1 key Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 4

  10. Naïve Approach: Encrypt Data under 1 key Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 4

  11. Naïve Approach: Encrypt Data under 1 key How does the user selectively disclose her data? Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 4

  12. Another Approach: Encrypt each piece of data individually Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 5

  13. Another Approach: Encrypt each piece of data individually Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 5

  14. Another Approach: Encrypt each piece of data individually Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 5

  15. Another Approach: Encrypt each piece of data individually Boston Marathon type=race type=running NY Marathon FitBit Cloud Server type=fitness Insurance 5

  16. Contributions • Sieve: a new platform that allows users to selectively and securely disclose their data – Sieve protects against server compromise – Sieve hides key management from users – Reasonable performance – Sieve supports revocation – Sieves allows users to recover from device loss – Good for web services that analyze user data 6

  17. Outline • Sieve – Protocol – Optimizations – Revocation – Device Loss • Implementation • Evaluation 7

  18. Sieve Overview 8

  19. Sieve Overview User Storage Provider Web services 8

  20. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon 8

  21. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Year=2012, Type=fitness Year=2015, Type=financial 8

  22. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Year=2012, Type=fitness Year=2015, Type=financial 8

  23. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Year=2012, Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) 8

  24. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Year=2012, Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) 8

  25. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Location=US, Year=2012, Year=2012, Type=fitness Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) 8

  26. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Location=US, Year=2012, Year=2012, Type=fitness Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) 8

  27. Sieve Overview User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, Location=US, Year=2012, Year=2012, Type=fitness Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) 8

  28. Threat Model • Storage provider is a passive adversary – Adversary can read all data – Follows protocol • Web services trusted with user data they are given access to • User and her devices trusted 9

  29. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • 10

  30. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey Encrypt Decrypt 10

  31. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 AND type=Fitness) Encrypt Decrypt 10

  32. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 (Year < 2013 AND AND type=Fitness) Type=Fitness ) Encrypt Decrypt 10

  33. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 (Year < 2013 AND AND type=Fitness) Type=Fitness ) public Encrypt Attributes : Location=US, Year=2012, Type=fitness Decrypt 10

  34. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 (Year < 2013 AND AND type=Fitness) Type=Fitness ) public Encrypt Attributes : Location=US, Year=2012, Location=US, Type=fitness Year=2012, Type=fitness Decrypt 10

  35. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 (Year < 2013 AND AND type=Fitness) Type=Fitness ) public Encrypt Attributes : Location=US, Year=2012, Location=US, Type=fitness Year=2012, Type=fitness Decrypt Location=US, (Year < 2013 AND Year=2012, Type=Fitness ) Type=fitness 10

  36. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 (Year < 2013 AND AND type=Fitness) Type=Fitness ) public Encrypt Attributes : Location=US, Year=2012, Location=US, Type=fitness Year=2012, Type=fitness Decrypt Location=US, (Year < 2013 AND Year=2012, Type=Fitness ) Type=fitness 10

  37. Our approach: Attribute-based encryption (ABE) Assume that user-specific ABE public/private key pair • Three main functions • GenerateDecKey private Policy : (Year < 2013 (Year < 2013 AND AND type=Fitness) Type=Fitness ) public Encrypt Attributes : Location=US, Year=2012, Location=US, Type=fitness Year=2012, Type=fitness Decrypt Location=US, (Year < 2013 AND Year=2012, Type=Fitness ) Type=fitness Note: attributes and policy are in cleartext 10

  38. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon 11

  39. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, ABE Year=2012, Encrypt Type=fitness Year=2015, Type=financial 11

  40. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, ABE Year=2012, Encrypt Type=fitness Year=2015, Type=financial 11

  41. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, ABE Year=2012, Encrypt Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) ABE GenerateDecKey 11

  42. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, ABE Year=2012, Encrypt Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) ABE GenerateDecKey 11

  43. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, ABE Location=US, Year=2012, Year=2012, Encrypt Type=fitness Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) ABE GenerateDecKey 11

  44. Sieve with ABE User Storage Provider Web services Sieve storage Sieve user client Sieve data import daemon Location=US, ABE Location=US, Year=2012, Year=2012, Encrypt Type=fitness Type=fitness Year=2015, Type=financial (Year < 2013 AND Type=Fitness ) ABE ABE GenerateDecKey Decrypt 11

  45. Challenges with ABE • Performance • Revocation • Device Loss 12

Recommend


More recommend