Skip to main content

Verifying the Consistency of Remote Untrusted Services with Commutative Operations

  • Conference paper
Principles of Distributed Systems (OPODIS 2014)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8878))

Included in the following conference series:

Abstract

A group of mutually trusting clients outsources a computation service to a remote server, which they do not fully trust and that may be subject to attacks. The clients do not communicate with each other and would like to verify the correctness of the remote computation and the consistency of the server’s responses. This paper first presents the Commutative-Operation verification Protocol (COP) that ensures linearizability when the server is correct and preserves fork-linearizability in any other case. All clients that observe each other’s operations are consistent, in the sense that their own operations and those operations of other clients that they see are linearizable. Second, this work extends COP through authenticated data structures to Authenticated COP , which allows consistency verification of outsourced services whose state is kept only remotely, by the server. This yields the first fork-linearizable consistency verification protocol for generic outsourced services that (1) relieves clients from storing the state, (2) supports wait-free client operations, and (3) handles sequences of arbitrary commutative operations.

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 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aguilera, M.K., Frølund, S., Hadzilacos, V., Horn, S.L., Toueg, S.: Abortable and query-abortable objects and their efficient implementation. In: Proc. 26th ACM Symposium on Principles of Distributed Computing (PODC) (2007)

    Google Scholar 

  2. Braun, B., Feldman, A.J., Ren, Z., Setty, S.T.V., Blumberg, A.J., Walfish, M.: Verifying computations with state. In: Proc. 24th ACM Symposium on Operating Systems Principles (SOSP), pp. 341–357 (2013)

    Google Scholar 

  3. Cachin, C.: Integrity and consistency for untrusted services. In: Černá, I., Gyimóthy, T., Hromkovič, J., Jefferey, K., Králović, R., Vukolić, M., Wolf, S. (eds.) SOFSEM 2011. LNCS, vol. 6543, pp. 1–14. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  4. Cachin, C., Guerraoui, R., Rodrigues, L.: Introduction to Reliable and Secure Distributed Programming, 2nd edn. Springer (2011)

    Google Scholar 

  5. Cachin, C., Keidar, I., Shraer, A.: Fork sequential consistency is blocking. Information Processing Letters 109(7), 360–364 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  6. Cachin, C., Keidar, I., Shraer, A.: Fail-aware untrusted storage. SIAM Journal on Computing 40(2), 493–533 (2009), preliminary version appears In: Proc. DSN 2009

    Google Scholar 

  7. Cachin, C., Ohrimenko, O.: Verifying the consistency of remote untrusted services with commutative operations. Report arXiv:1302.4808v2, CoRR (December 2013), http://arxiv.org/abs/1302.4808v2

  8. Cachin, C., Shelat, A., Shraer, A.: Efficient fork-linearizable access to untrusted shared memory. In: Proc. 26th ACM Symposium on Principles of Distributed Computing (PODC), pp. 129–138 (2007)

    Google Scholar 

  9. Canetti, R., Paneth, O., Papadopoulos, D., Triandopoulos, N.: Verifiable set operations over outsourced databases. In: Krawczyk, H. (ed.) PKC 2014. LNCS, vol. 8383, pp. 113–130. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  10. Clements, A.T., Kaashoek, M.F., Zeldovich, N., Morris, R.T., Kohler, E.: The scalable commutativity rule: Designing scalable software for multicore processors. In: Proc. 24th ACM Symposium on Operating Systems Principles (SOSP), pp. 1–17 (2013)

    Google Scholar 

  11. Cormode, G., Mitzenmacher, M., Thaler, J.: Practical verified computation with streaming interactive proofs. In: Proc. 3rd Conference on Innovations in Theoretical Computer Science (ITCS), pp. 90–112 (2012)

    Google Scholar 

  12. Crosby, S.A., Wallach, D.S.: Authenticated dictionaries: Real-world costs and trade-offs. ACM Transactions on Information and System Security 14(2) (2011)

    Google Scholar 

  13. Feldman, A.J., Zeller, W.P., Freedman, M.J., Felten, E.W.: SPORC: Group collaboration using untrusted cloud resources. In: Proc. 9th Symp. Operating Systems Design and Implementation, OSDI (2010)

    Google Scholar 

  14. Gennaro, R., Gentry, C., Parno, B., Raykova, M.: Quadratic span programs and succinct NIZKs without PCPs. In: Johansson, T., Nguyen, P.Q. (eds.) EUROCRYPT 2013. LNCS, vol. 7881, pp. 626–645. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  15. Herlihy, M., Luchangco, V., Moir, M.: Obstruction-free synchronization: Double-ended queues as an example. In: Proc. 23rd Intl. Conference on Distributed Computing Systems (ICDCS) (2003)

    Google Scholar 

  16. Herlihy, M.P., Wing, J.M.: Linearizability: A correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems 12(3), 463–492 (1990)

    Article  Google Scholar 

  17. Kosba, A.E., Papadopoulos, D., Papamanthou, C., Sayed, M.F., Shi, E., Triandopoulos, N.: TRUESET: Nearly practical verifiable set computations. In: Proc. 23rd USENIX Security Symposium (2014)

    Google Scholar 

  18. Li, J., Krohn, M., Mazières, D., Shasha, D.: Secure untrusted data repository (SUNDR). In: Proc. 6th Symp. Operating Systems Design and Implementation (OSDI), pp. 121–136 (2004)

    Google Scholar 

  19. Li, J., Mazières, D.: Beyond one-third faulty replicas in Byzantine fault-tolerant systems. In: Proc. 4th Symp. Networked Systems Design and Implementation (NSDI) (2007)

    Google Scholar 

  20. Mahajan, P., Setty, S., Lee, S., Clement, A., Alvisi, L., Dahlin, M., Walfish, M.: Depot: Cloud storage with minimal trust. In: Proc. 9th Symp. Operating Systems Design and Implementation (OSDI) (2010)

    Google Scholar 

  21. Majuntke, M., Dobre, D., Serafini, M., Suri, N.: Abortable fork-linearizable storage. In: Abdelzaher, T., Raynal, M., Santoro, N. (eds.) OPODIS 2009. LNCS, vol. 5923, pp. 255–269. Springer, Heidelberg (2009)

    Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  23. Mazières, D., Shasha, D.: Building secure file systems out of Byzantine storage. In: Proc. 21st ACM Symposium on Principles of Distributed Computing (PODC) (2002)

    Google Scholar 

  24. Naor, M., Nissim, K.: Certificate revocation and certificate update. IEEE Journal on Selected Areas in Communications 18(4), 561–570 (2000)

    Article  Google Scholar 

  25. Papamanthou, C., Tamassia, R., Triandopoulos, N.: Optimal verification of operations on dynamic sets. In: Rogaway, P. (ed.) CRYPTO 2011. LNCS, vol. 6841, pp. 91–110. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  26. Setty, S., Vu, V., Panpalia, N., Braun, B., Blumberg, A.J., Walfish, M.: Taking proof-based verified computation a few steps closer to practicality. In: Proc. 21st USENIX Security Symposium (2012)

    Google Scholar 

  27. Shraer, A., Cachin, C., Cidon, A., Keidar, I., Michalevsky, Y., Shaket, D.: Venus: Verification for untrusted cloud storage. In: Proc. Cloud Computing Security Workshop (CCSW). ACM (2010)

    Google Scholar 

  28. Tamassia, R.: Authenticated data structures. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 2–5. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  29. Williams, P., Sion, R., Shasha, D.: The blind stone tablet: Outsourcing durability to untrusted parties. In: Proc. Network and Distributed Systems Security Symposium (NDSS) (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Cachin, C., Ohrimenko, O. (2014). Verifying the Consistency of Remote Untrusted Services with Commutative Operations. In: Aguilera, M.K., Querzoni, L., Shapiro, M. (eds) Principles of Distributed Systems. OPODIS 2014. Lecture Notes in Computer Science, vol 8878. Springer, Cham. https://doi.org/10.1007/978-3-319-14472-6_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-14472-6_1

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-14471-9

  • Online ISBN: 978-3-319-14472-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics