Skip to main content

Authenticated LSM Trees with Minimal Trust

  • Conference paper
  • First Online:
Security and Privacy in Communication Networks (SecureComm 2019)

Abstract

In the age of user-generated contents, the workloads imposed on information-security infrastructures become increasingly write intensive. However, existing security protocols, specifically authenticated data structures (ADSs), are historically designed based on update-in-place data structures and incur overhead when serving write-intensive workloads.

In this work, we present LPAD (Log-structured Persistent Authenticated Directory), a new ADS protocol designed uniquely based on the log-structure merge trees (LSM trees) which recently gain popularity in the design of modern storage systems. On the write path, LPAD supports streaming, non-interactive updates with constant proof from trusted data owners. On the read path, LPAD supports point queries over the dynamic dataset with a polynomial proof. The key to enable this efficiency is a verifiable reorganization operation, called verifiable merge, in LPAD. Verifiable merge is secured by the execution in an enclave of trusted execution environments (TEE). To minimize the trusted computing base (TCB), LPAD places the code related to verifiable merge in enclave, and nothing else. Our implementation of LPAD on Google LevelDB codebase and on Intel SGX shows that the TCB is reduced by 20 times: The enclave size of LPAD is one thousand code lines out of more than twenty thousands code lines of a vanilla LevelDB. Under the YCSB workloads, LPAD improves the performance by an order of magnitude comparing with existing ADSs.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    LPAD stands for Log-structured Persistent Authenticated Dictionary which follows the naming of a common ADS protocol, PAD [20, 32].

  2. 2.

    The untrusted host can break the promise of serialized execution, but will eventually be detected through the in-enclave checks.

  3. 3.

    https://github.com/jtsui/ycsb-leveldb.

  4. 4.

    Note the smaller size a value is (e.g., 100 byte), the more challenging to serve for a storage system as small writes cause more random access IO.

References

  1. ARM TrustZone. https://www.arm.com/products/security-on-arm/trustzone

  2. Bitcoin core. https://bitcoin.org/en/bitcoin-core/

  3. Bitcoin. https://bitcoin.org/en/

  4. Certificate transparency

    Google Scholar 

  5. Certificate transparency, the internet standards

    Google Scholar 

  6. Dropbox. http://www.dropbox.com

  7. Ethereum project. https://www.ethereum.org/

  8. Facebook RocksDB. http://rocksdb.org/

  9. Google drive. https://www.google.com/drive/

  10. http://cassandra.apache.org/

  11. http://code.google.com/p/leveldb/

  12. http://hbase.apache.org/

  13. http://www.cryptopp.com/benchmarks.html

  14. IBM SCPU. http://www-03.ibm.com/security/cryptocards/

  15. Intel corp. software guard extensions programming reference, no. 329298–002 (2014)

    Google Scholar 

  16. Intel software guard extensions (Intel SGX) SDK

    Google Scholar 

  17. Intel TXT. http://www.intel.com/technology/security/downloads/trustedexecoverview.pdf

  18. Litecoin. https://litecoin.org/

  19. TPM. http://www.trustedcomputinggroup.org/tpm-main-specification/

  20. Anagnostopoulos, A., Goodrich, M.T., Tamassia, R.: Persistent authenticated dictionaries and their applications. In: Davida, G.I., Frankel, Y. (eds.) ISC 2001. LNCS, vol. 2200, pp. 379–393. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45439-X_26

    Chapter  Google Scholar 

  21. Anati, I., Gueron, S., Johnson, S.P., Scarlata, V.R.: Innovative technology for CPU based attestation and sealing (2013)

    Google Scholar 

  22. Arora, S., Lund, C., Motwani, R., Sudan, M., Szegedy, M.: Proof verification and the hardness of approximation problems. J. ACM 45(3), 501–555 (1998)

    Article  MathSciNet  Google Scholar 

  23. Arora, S., Safra, S.: Probabilistic checking of proofs: a new characterization of NP. J. ACM 45(1), 70–122 (1998)

    Article  MathSciNet  Google Scholar 

  24. Baumann, A., Peinado, M., Hunt, G.C.: Shielding applications from an untrusted cloud with haven. In: 11th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2014, Broomfield, CO, USA, 6–8 October 2014, pp. 267–283 (2014)

    Google Scholar 

  25. Braun, B., Feldman, A.J., Ren, Z., Setty, S.T.V., Blumberg, A.J., Walfish, M.: Verifying computations with state. In: Kaminsky, M., Dahlin, M., (eds.) ACM SIGOPS 24th Symposium on Operating Systems Principles, SOSP 2013, Farmington, PA, USA, 3–6 November 2013, pp. 341–357. ACM (2013)

    Google Scholar 

  26. Chakrabarti, S., Baker, B., Vij, M.: Intel SGX enabled key manager service with openstack barbican. CoRR, abs/1712.07694 (2017)

    Google Scholar 

  27. Chang, F., et al.: Bigtable: a distributed storage system for structured data (awarded best paper!). In OSDI, pp. 205–218 (2006)

    Google Scholar 

  28. Clarke, D., Devadas, S., van Dijk, M., Gassend, B., Suh, G.E.: Incremental multiset hash functions and their application to memory integrity checking. In: Laih, C.-S. (ed.) ASIACRYPT 2003. LNCS, vol. 2894, pp. 188–207. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-40061-5_12

    Chapter  Google Scholar 

  29. Cooper, B.F., Silberstein, A., Tam, E., Ramakrishnan, R., Sears, R.: Benchmarking cloud serving systems with YCSB. In: SoCC, pp. 143–154 (2010)

    Google Scholar 

  30. Devanbu, P., Gertz, M., Martel, C., Stubblebine, S.G.: Authentic data publication over the internet. J. Comput. Secur. 11, 2003 (2003)

    MATH  Google Scholar 

  31. Elbaz, R., Champagne, D., Gebotys, C.H., Lee, R.B., Potlapally, N.R., Torres, L.: Hardware mechanisms for memory authentication: a survey of existing techniques and engines. Trans. Comput. Sci. 4, 1–22 (2009)

    Google Scholar 

  32. Goodrich, M.T., Tamassia, R., Schwerin, A.: Implementation of an authenticated dictionary with skip lists and commutative hashing. In: Proceedings of DARPA Information Survivability Conference & Exposition II, DISCEX 2001, vol. 2, pp. 68–82. IEEE (2001)

    Google Scholar 

  33. Katz, J., Lindell, Y.: Introduction to Modern Cryptography. Chapman and Hall/CRC Press, Boca Raton (2007)

    Book  Google Scholar 

  34. Li, F., Hadjieleftheriou, M., Kollios, G., Reyzin, L.: Dynamic authenticated index structures for outsourced databases. In: SIGMOD Conference, pp. 121– 132 (2006)

    Google Scholar 

  35. Li, J., Krohn, M.N., Mazières, D., Shasha, D.: Secure untrusted data repository (SUNDR). In: OSDI, pp. 121–136 (2004)

    Google Scholar 

  36. Martel, C.U., Nuckolls, G., Devanbu, P.T., Gertz, M., Kwong, A., Stubblebine, S.G.: A general model for authenticated data structures. Algorithmica 39(1), 21–41 (2004)

    Article  MathSciNet  Google Scholar 

  37. Mazières, D., Shasha, D.: Building secure file systems out of Byantine storage. In: Proceedings of the Twenty-First Annual ACM Symposium on Principles of Distributed Computing, PODC 2002, Monterey, California, USA, 21–24 July 2002, pp. 108–117 (2002)

    Google Scholar 

  38. Melara, M.S., Blankstein, A., Bonneau, J., Felten, E.W., Freedman, M.J.: CONIKS: bringing key transparency to end users. In: Jung, J., Holz, T., (eds.) 24th USENIX Security Symposium, USENIX Security 2015, Washington, D.C., USA, 12–14 August 2015, pp. 383–398. USENIX Association (2015)

    Google Scholar 

  39. O’Neil, P.E., Cheng, E., Gawlick, D., O’Neil, E.J.: The log-structured merge-tree (LSM-TREE). Acta Inf. 33(4), 351–385 (1996)

    Article  Google Scholar 

  40. Pang, H., Tan, K.-L.: Authenticating query results in edge computing. In: Proceedings of the 20th International Conference on Data Engineering, ICDE 2004, Washington, DC, USA, p. 560. IEEE Computer Society (2004)

    Google Scholar 

  41. Papadopoulos, S., Yang, Y., Papadias, D.: CADS: continuous authentication on data streams. In: VLDB, pp. 135–146 (2007)

    Google Scholar 

  42. Papamanthou, C., Tamassia, R., Triandopoulos, N.: Authenticated hash tables. In: Ning, P., Syverson, P.F., Jha, S., (eds.) Proceedings of the 2008 ACM Conference on Computer and Communications Security, CCS 2008, Alexandria, Virginia, USA, 27–31 October 2008, pp. 437–448. ACM (2008)

    Google Scholar 

  43. Papamanthou, C., Tamassia, R., Triandopoulos, N.: Authenticated hash tables based on cryptographic accumulators. Algorithmica 74(2), 664–712 (2016)

    Article  MathSciNet  Google Scholar 

  44. Parno, B., Howell, J., Gentry, C., Raykova, M.: Pinocchio: nearly practical verifiable computation. In: 2013 IEEE Symposium on Security and Privacy, SP 2013, Berkeley, CA, USA, 19–22 May 2013, pp. 238–252. IEEE Computer Society (2013)

    Google Scholar 

  45. Rubinfeld, R., Shapira, A.: Sublinear time algorithms. SIAM J. Discrete Math. 25(4), 1562–1588 (2011)

    Article  MathSciNet  Google Scholar 

  46. Setty, S.T.V., Braun, B., Vu, V., Blumberg, A.J., Parno, B., Walfish, M.: Resolving the conflict between generality and plausibility in verified computation. In: Eighth Eurosys Conference, EuroSys 2013, Prague, Czech Republic, 14–17 April 2013, pp. 71–84 (2013)

    Google Scholar 

  47. Shinde, S., Tien, D.L., Tople, S., Saxena, P.: Panoply: Low-TCB Linux applications with SGX enclaves. In: 24th Annual Network and Distributed System Security Symposium, NDSS 2017, San Diego, California, USA, 26 February–1 March 2017 (2017)

    Google Scholar 

  48. Stefanov, E., van Dijk, M., Juels, A., Oprea, A.: Iris: a scalable cloud file system with efficient integrity checks. In: ACSAC, pp. 229–238 (2012)

    Google Scholar 

  49. Tamassia, R.: Authenticated data structures. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 2–5. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39658-1_2

    Chapter  Google Scholar 

  50. Wahby, R.S., Setty, S.T.V., Ren, Z., Blumberg, A.J., Walfish, M.: Efficient RAM and control flow in verifiable outsourced computation. In: 22nd Annual Network and Distributed System Security Symposium, NDSS 2015, San Diego, California, USA, 8–11 February 2014 (2015)

    Google Scholar 

  51. Xu, Y., Cui, W., Peinado, M.: Controlled-channel attacks: deterministic side channels for untrusted operating systems. In: 2015 IEEE Symposium on Security and Privacy, SP 2015, San Jose, CA, USA, 17–21 May 2015, pp. 640–656. IEEE Computer Society (2015)

    Google Scholar 

  52. Yang, Y., Papadias, D., Papadopoulos, S., Kalnis, P.: Authenticated join processing in outsourced databases. In: Çetintemel, U., Zdonik, S.B., Kossmann, D., Tatbul, N. (eds.) Proceedings of the ACM SIGMOD International Conference on Management of Data, SIGMOD 2009, Providence, Rhode Island, USA, 29 June–2 July 2009, pp. 5–18. ACM (2009)

    Google Scholar 

  53. Yang, Y., Papadopoulos, S., Papadias, D., Kollios, G.: Authenticated indexing for outsourced spatial databases. VLDB J. 18(3), 631–648 (2009)

    Article  Google Scholar 

  54. Zhang, Y., Katz, J., Papamanthou, C.: IntegriDB: verifiable SQL for outsourced databases. In: Ray, I., Li, N., Kruegel, C. (eds.) Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, Denver, CO, USA, 12–16 October 2015, pages 1480–1491. ACM (2015)

    Google Scholar 

Download references

Acknowledgement

Yuzhe Tang’s work is supported by National Science Foundation under Grant CNS1815814 and a gift from Intel.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yuzhe Tang .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 ICST Institute for Computer Sciences, Social Informatics and Telecommunications Engineering

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Tang, Y., Li, K., Chen, J. (2019). Authenticated LSM Trees with Minimal Trust. In: Chen, S., Choo, KK., Fu, X., Lou, W., Mohaisen, A. (eds) Security and Privacy in Communication Networks. SecureComm 2019. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 305. Springer, Cham. https://doi.org/10.1007/978-3-030-37231-6_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-37231-6_27

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-37230-9

  • Online ISBN: 978-3-030-37231-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics