skip to main content
10.1145/2043556.2043566acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
research-article

CryptDB: protecting confidentiality with encrypted query processing

Published:23 October 2011Publication History

ABSTRACT

Online applications are vulnerable to theft of sensitive information because adversaries can exploit software bugs to gain access to private data, and because curious or malicious administrators may capture and leak data. CryptDB is a system that provides practical and provable confidentiality in the face of these attacks for applications backed by SQL databases. It works by executing SQL queries over encrypted data using a collection of efficient SQL-aware encryption schemes. CryptDB can also chain encryption keys to user passwords, so that a data item can be decrypted only by using the password of one of the users with access to that data. As a result, a database administrator never gets access to decrypted data, and even if all servers are compromised, an adversary cannot decrypt the data of any user who is not logged in. An analysis of a trace of 126 million SQL queries from a production MySQL server shows that CryptDB can support operations over encrypted data for 99.5% of the 128,840 columns seen in the trace. Our evaluation shows that CryptDB has low overhead, reducing throughput by 14.5% for phpBB, a web forum application, and by 26% for queries from TPC-C, compared to unmodified MySQL. Chaining encryption keys to user passwords requires 11--13 unique schema annotations to secure more than 20 sensitive fields and 2--7 lines of source code changes for three multi-user web applications.

References

  1. R. Agrawal, J. Kiernan, R. Srikant, and Y. Xu. Order preserving encryption for numeric data. In Proceedings of the 2004 ACM SIGMOD International Conference on Management of Data, Paris, France, June 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. G. Amanatidis, A. Boldyreva, and A. O'Neill. Provably-secure schemes for basic query support in outsourced databases. In Proceedings of the 21st Annual IFIP WG 11.3 Working Conference on Database and Applications Security. Redondo Beach, CA, July 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. F. Bao, R. H. Deng, X. Ding, and Y. Yang. Private query on encrypted data in multi-user settings. In Proceedings of the 4th International Conference on Information Security Practice and Experience, Sydney. Australia, April 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. A. Boldyreva, N. Chenette, Y. Lee, and A. O'Neill. Order-preserving symmetric encryption. In Proceedings of the 28th Annual International Conference on the Theory and Applications of Cryptographic Techniques (EUROCRYPT), Cologne, Germany, April 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. D. Boneh and B. Waters. Conjunctive, subset, and range queries on encrypted data. In Proceedings of the 4th Conference on Theory of Cryptography, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. A. Chen. GCreep: Google engineer stalked teens, spied on chats. Gawker, September 2010. http://gawker.com/5637234/.Google ScholarGoogle Scholar
  7. A. Chlipala. Static checking of dynamically-varying security policies in database-backed applications. In Proceedings of the 9th Symposium on Operating Systems Design and Implementation, Vancouver, Canada, October 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. S. S. M. Chow, J.-H. Lee, and L. Subramanian. Two-party computation model for privacy-preserving queries over distributed databases. In Proceedings of the 16th Network and Distributed System Security Symposium, February 2009.Google ScholarGoogle Scholar
  9. V. Ciriani, S. D. C. di Vimercati, S. Foresti, S. Jajodia, S. Paraboschi, and P. Samarati. Keep a few: Outsourcing data while maintaining confidentiality. In Proceedings of the 14th European Symposium on Research in Computer Security, September 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. Cooney. IBM touts encryption innovation; new technology performs calculations on encrypted data without decrypting it. Computer World, June 2009.Google ScholarGoogle Scholar
  11. C. Curino, E. P. C. Jones, R. A. Popa, N. Malviya, E. Wu, S. Madden, H. Balakrishnan, and N. Zeldovich. Relational cloud: A database-as-a-service for the cloud. In Proceedings of the 5th Biennial Conference on Innovative Data Systems Research, pages 235--241, Pacific Grove, CA, January 2011.Google ScholarGoogle Scholar
  12. E. Damiani, S. D. C. di Vimercati, S. Jajodia, S. Paraboschi, and P. Samarati. Balancing confidentiality and efficiency in untrusted relational DBMSs. In Proceedings of the 10th ACM Conference on Computer and Communications Security, Washington, DC, October 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. Desai. New paradigms for constructing symmetric encryption schemes secure against chosen-ciphertext attack. In Proceedings of the 20th Annual International Conference on Advances in Cryptology, pages 394--412, August 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. C. Dwork. Differential privacy: a survey of results. In Proceedings of the 5th International Conference on Theory and Applications of Models of Computation, Xi'an, China, April 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. S. Evdokimov and O. Guenther. Encryption techniques for secure database outsourcing. Cryptology ePrint Archive, Report 2007/335.Google ScholarGoogle Scholar
  16. A. J. Feldman, W. P. Zeller, M. J. Freedman, and E. W. Felten. SPORC: Group collaboration using untrusted cloud resources. In Proceedings of the 9th Symposium on Operating Systems Design and Implementation, Vancouver, Canada, October 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. T. Ge and S. Zdonik. Answering aggregation queries in a secure system model. In Proceedings of the 33rd International Conference on Very Large Data Bases, Vienna, Austria, September 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. R. Gennaro, C. Gentry, and B. Parno. Non-interactive verifiable computing: Outsourcing computation to untrusted workers. In Advances in Cryptology (CRYPTO), Santa Barbara, CA, August 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. C. Gentry. Fully homomorphic encryption using ideal lattices. In Proceedings of the 41st Annual ACM Symposium on Theory of Computing, Bethesda, MD, May-June 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. O. Goldreich. Foundations of Cryptography: Volume I Basic Tools. Cambridge University Press, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. A. Greenberg. DARPA will spend 20 million to search for crypto's holy grail. Forbes, April 2011.Google ScholarGoogle Scholar
  22. H. Hacigumus, B. Iyer, C. Li, and S. Mehrotra. Executing SQL over encrypted data in the database-service-provider model. In Proceedings of the 2002 ACM SIGMOD International Conference on Management of Data, Madison, WI, June 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. A. Halderman, S. D. Schoen, N. Heninger, W. Clarkson, W. Paul, J. A. Calandrino, A. J. Feldman, J. Appelbaum, and E. W. Felten. Lest we remember: Cold boot attacks on encryption keys. In Proceedings of the 17th Usenix Security Symposium, San Jose, CA, July-August 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. S. Halevi and P. Rogaway. A tweakable enciphering mode. In Advances in Cryptology (CRYPTO), 2003.Google ScholarGoogle ScholarCross RefCross Ref
  25. V. Kachitvichyanukul and B. W. Schmeiser. Algorithm 668: H2PEC: Sampling from the hypergeometric distribution. ACM Transactions on Mathematical Software, 14(4):397--398, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. M. Kantarcioglu and C. Clifton. Security issues in querying encrypted data. In Proceedings of the 19th Annual IFIP WG 11.3 Working Conference on Database and Applications Security, Storrs, CT, August 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. E. Kohler. Hot crap! In Proceedings of the Workshop on Organizing Workshops, Conferences, and Symposia for Computer Systems, San Francisco, CA, April 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. J. Li, M. Krohn, D. Mazieres, and D. Shasha. Secure untrusted data repository (SUNDR). In Proceedings of the 6th Symposium on Operating Systems Design and Implementation, pages 91--106, San Francisco, CA, December 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. V. B. Livshits and M. S. Lam. Finding security vulnerabilities in Java applications with static analysis. In Proceedings of the 14th Usenix Security Symposium, pages 271--286, Baltimore, MD, August 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. P. Mahajan, S. Setty, S. Lee, A. Clement, L. Alvisi, M. Dahlin, and M. Walfish. Depot: Cloud storage with minimal trust. In Proceedings of the 9th Symposium on Operating Systems Design and Implementation, Vancouver, Canada, October 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. M. Martin, B. Livshits, and M. Lam. Finding application errors and security flaws using PQL: a program query language. In Proceedings of the 2005 Conference on Object-Oriented Programming, Systems, Languages and Applications, pages 365--383, San Diego, CA, October 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. National Vulnerability Database. CVE statistics. http://web.nvd.nist.gov/view/vuln/statistics, February 2011.Google ScholarGoogle Scholar
  33. V. H. Nguyen, T. K. Dang, N. T. Son, and J. Kung. Query assurance verification for dynamic outsourced XML databases. In Proceedings of the 2nd Conference on Availability, Reliability and Security, Vienna, Austria, April 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Oracle Corporation. Oracle advanced security. http://www.oracle.com/technetwork/database/options/advanced-security/.Google ScholarGoogle Scholar
  35. P. Paillier. Public-key cryptosystems based on composite degree residuosity classes. In Proceedings of the 18th Annual International Conference on the Theory and Applications of Cryptographic Techniques (EUROCRYPT), Prague, Czech Republic, May 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. B. Parno, J. M. McCune, D. Wendlandt, D. G. Andersen, and A. Perrig. CLAMP: Practical prevention of large-scale data leaks. In Proceedings of the 30th IEEE Symposium on Security and Privacy, Oakland, CA, May 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. R. A. Popa, C. M. S. Redfield, N. Zeldovich, and H. Balakrishnan. CryptDB web site. http://css.csail.mit.edu/cryptdb/.Google ScholarGoogle Scholar
  38. R. A. Popa, J. R. Lorch, D. Molnar, H. J. Wang, and L. Zhuang. Enabling security in cloud storage SLAs with CloudProof. In Proceedings of 2011 USENIX Annual Technical Conference, Portland, OR, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. R. A. Popa, N. Zeldovich, and H. Balakrishnan. CryptDB: A practical encrypted relational DBMS. Technical Report MIT-CSAIL-TR-2011-005, MIT Computer Science and Artificial Intelligence Laboratory, Cambridge, MA, January 2011.Google ScholarGoogle Scholar
  40. Privacy Rights Clearinghouse. Chronology of data breaches. http://www.privacyrights.org/data-breach.Google ScholarGoogle Scholar
  41. S. Rizvi, A. Meridelzon, S. Sudarshan, and P. Roy. Extending query rewriting techniques for fine-grained access control. In Proceedings of the 2004 ACM SIGMOD International Conference on Management of Data, Paris, France, June 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. H. Shacham, N. Modadugu, and D. Boneh. Sirius: Securing remote untrusted storage. In Proceedings of the 10th Network and Distributed System Security Symposium, 2003.Google ScholarGoogle Scholar
  43. E. Shi, J. Bethencourt, H. Chan, D. Song, and A. Perrig. Multidimensional range query over encrypted data. In Proceedings of the 28th IEEE Symposium on Security and Privacy, Oakland, CA, May 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. V. Shoup. NTL: A library for doing number theory. http://www.shoup.net/ntl/, August 2009.Google ScholarGoogle Scholar
  45. R. Sion. Query execution assurance for outsourced databases. In Proceedings of the 31st International Conference on Very Large Data Bases, pages 601--612. Trondheim, Norway, August-September 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. D. X. Song, D. Wagner, and A. Perrig. Practical techniques for searches on encrypted data. In Proceedings of the 21st IEEE Symposium on Security and Privacy, Oakland, CA, May 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. M. Taylor. MySQL proxy. https://launchpad.net/mysql-proxy.Google ScholarGoogle Scholar
  48. B. Thompson, S. Haber, W. G. Horne, T. S. and D. Yao. Privacy-preserving computation and verification of aggregate queries on outsourced databases. Technical Report HPL-2009-119, HP Labs, 2009.Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. E. P. Wobber, M. Abadi, M. Burrows, and B. Lampson. Authentication in the Taos operating system. ACM Transactions on Computer Systems, 12(1):3--32, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. L. Xiong, S. Chitti, and L. Liu. Preserving data privacy for outsourcing data aggregation services. Technical Report TR-2007-013, Emory University, Department of Mathematics and Computer Science, 2007.Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Z. Yang, S. Zhong, and R. N. Wright. Privacy-preserving queries on encrypted data. In European Symposium on Research in Computer Security, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. A. Yip, X. Wang, N. Zeldovich, and M. F. Kaashoek. Improving application security with data flow assertions. In Proceedings of the 22nd ACM Symposium on Operating Systems Principles, pages 291--304, Big Sky, MT, October 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. CryptDB: protecting confidentiality with encrypted query processing

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SOSP '11: Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
        October 2011
        417 pages
        ISBN:9781450309776
        DOI:10.1145/2043556

        Copyright © 2011 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 23 October 2011

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate131of716submissions,18%

        Upcoming Conference

        SOSP '24

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader