Skip to main content

DORAM Revisited: Maliciously Secure RAM-MPC with Logarithmic Overhead

  • Conference paper
  • First Online:
Theory of Cryptography (TCC 2023)

Abstract

Distributed Oblivious Random Access Memory (DORAM) is a secure multiparty protocol that allows a group of participants holding a secret-shared array to read and write to secret-shared locations within the array. The efficiency of a DORAM protocol is measured by the amount of communication required per read/write query into the array. DORAM protocols are a necessary ingredient for executing Secure Multiparty Computation (MPC) in the RAM model.

Although DORAM has been widely studied, all existing DORAM protocols have focused on the setting where the DORAM servers are semi-honest. Generic techniques for upgrading a semi-honest DORAM protocol to the malicious model typically increase the asymptotic communication complexity of the DORAM scheme.

In this work, we present a 3-party DORAM protocol which requires \(O((\kappa + D)\log N)\) communication per query, for a database of size N with D-bit values, where \(\kappa \) is the security parameter. Our hidden constants in the big-O nation are small. We show that our protocol is UC-secure in the presence of a malicious, static adversary. This matches the communication complexity of the best semi-honest DORAM protocols, and is the first malicious DORAM protocol with this complexity.

M. Shtepel–Work done while at UCLA.

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 69.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 89.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.

    Most ORAM works assume \(D = \varOmega (\log N)\), so \(O((D + \log N)\log N) = O(D \log N)\) which is described as a logarithmic “overhead” or a logarithmic “blowup” over O(D) communication needed to make a query in the insecure setting.

  2. 2.

    Recall that we need to recurse on OMaps rather than ORAMs, since the smaller levels in the hierarchy need to be able to hold indices from the full space.

References

  1. Asharov, G., Komargodski, I., Lin, W.-K., Nayak, K., Peserico, E., Shi, E.: OptORAMa: optimal oblivious RAM. In: Canteaut, A., Ishai, Y. (eds.) EUROCRYPT 2020. LNCS, vol. 12106, pp. 403–432. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45724-2_14

    Chapter  Google Scholar 

  2. Asharov, G., Komargodski, I., Lin, W.-K., Shi, E.: Oblivious RAM with Worst-Case logarithmic overhead. In: Malkin, T., Peikert, C. (eds.) CRYPTO 2021. LNCS, vol. 12828, pp. 610–640. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-84259-8_21

    Chapter  Google Scholar 

  3. Apon, D., Katz, J., Shi, E., Thiruvengadam, A.: Verifiable oblivious storage. In: Krawczyk, H. (ed.) PKC 2014. LNCS, vol. 8383, pp. 131–148. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54631-0_8

    Chapter  Google Scholar 

  4. Albrecht, M.R., Rechberger, C., Schneider, T., Tiessen, T., Zohner, M.: Ciphers for MPC and FHE. In: Oswald, E., Fischlin, M. (eds.) EUROCRYPT 2015. LNCS, vol. 9056, pp. 430–454. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46800-5_17

    Chapter  Google Scholar 

  5. Banik, S., Barooti, K., Vaudenay, S., Yan, H.: New attacks on LowMC instances with a single plaintext/ciphertext pair. IACR ePrint 2021/1345 (2021)

    Google Scholar 

  6. Boyle, E., Gilboa, N., Ishai, Y.: Function secret sharing. In: Oswald, E., Fischlin, M. (eds.) EUROCRYPT 2015. LNCS, vol. 9057, pp. 337–367. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46803-6_12

    Chapter  Google Scholar 

  7. Beimel, A., Ishai, Y., Kushilevitz, E., Orlov, I.: Share conversion and private information retrieval. In: 2012 IEEE 27th Conference on Computational Complexity, pp. 258–268. IEEE (2012)

    Google Scholar 

  8. Bunn, P., Katz, J., Kushilevitz, E., Ostrovsky, R.: Efficient 3-party distributed ORAM. In: Galdi, C., Kolesnikov, V. (eds.) SCN 2020. LNCS, vol. 12238, pp. 215–232. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-57990-6_11

    Chapter  Google Scholar 

  9. Ben-Or, M., Goldwasser, S., Wigderson, A.: Completeness theorems for non-cryptographic fault-tolerant distributed computation. In: STOC, New York, NY, USA. ACM (1988)

    Google Scholar 

  10. Canetti, R.: Universally composable security: a new paradigm for cryptographic protocols. In: FOCS, pp. 136–145. IEEE (2001)

    Google Scholar 

  11. Chaum, D., Crépeau, C., Damgård, I.: Multiparty unconditionally secure protocols. In: STOC (1988)

    Google Scholar 

  12. Chase, M., et al.: Post-quantum zero-knowledge and signatures from symmetric-key primitives. IACR ePrint 2017/279 (2017)

    Google Scholar 

  13. Cramer, R., Damgård, I., Ishai, Y.: Share conversion, pseudorandom secret-sharing and applications to secure computation. In: Kilian, J. (ed.) TCC 2005. LNCS, vol. 3378, pp. 342–362. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-30576-7_19

    Chapter  Google Scholar 

  14. Cramer, R., Fehr, S., Padró, C.: Algebraic manipulation detection codes. Sci. China Math. 56, 1349–1358 (2013)

    Google Scholar 

  15. Chida, K., et al.: Fast large-scale honest-majority MPC for malicious adversaries. In: Shacham, H., Boldyreva, A. (eds.) CRYPTO 2018. LNCS, vol. 10993, pp. 34–64. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96878-0_2

    Chapter  Google Scholar 

  16. Casacuberta, S., Hesse, J., Lehmann, A.: SoK: oblivious pseudorandom functions. In: EuroS &P, pp. 625–646. IEEE (2022)

    Google Scholar 

  17. Damgård, I., Fitzi, M., Kiltz, E., Nielsen, J.B., Toft, T.: Unconditionally secure constant-rounds multi-party computation for equality, comparison, bits and exponentiation. In: Halevi, S., Rabin, T. (eds.) TCC 2006. LNCS, vol. 3876, pp. 285–304. Springer, Heidelberg (2006). https://doi.org/10.1007/11681878_15

    Chapter  Google Scholar 

  18. Drmota, M., Kutzelnigg, R.: A precise analysis of Cuckoo hashing. ACM Trans. Algorithms (TALG) 8(2), 1–36 (2012)

    Google Scholar 

  19. Dinur, I., Liu, Y., Meier, W., Wang, Q.: Optimized interpolation attacks on LowMC. IACR ePrint 2015/418 (2015)

    Google Scholar 

  20. Damgård, I., Nielsen, J.B.: Universally composable efficient multiparty computation from threshold homomorphic encryption. In: Boneh, D. (ed.) CRYPTO 2003. LNCS, vol. 2729, pp. 247–264. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45146-4_15

    Chapter  Google Scholar 

  21. Dittmer, S., Ostrovsky, R.: Oblivious tight compaction in O(n) time with smaller constant. In: Galdi, C., Kolesnikov, V. (eds.) SCN 2020. LNCS, vol. 12238, pp. 253–274. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-57990-6_13

    Chapter  Google Scholar 

  22. Damgård, I., Pastro, V., Smart, N., Zakarias, S.: Multiparty computation from somewhat homomorphic encryption. In: Safavi-Naini, R., Canetti, R. (eds.) CRYPTO 2012. LNCS, vol. 7417, pp. 643–662. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32009-5_38

    Chapter  Google Scholar 

  23. Doerner, J., Shelat, A.: Scaling ORAM for secure computation. In: CCS (2017)

    Google Scholar 

  24. Devadas, S., van Dijk, M., Fletcher, C.W., Ren, L., Shi, E., Wichs, D.: Onion ORAM: a constant bandwidth blowup oblivious RAM. In: Kushilevitz, E., Malkin, T. (eds.) TCC 2016. LNCS, vol. 9563, pp. 145–174. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49099-0_6

    Chapter  Google Scholar 

  25. Faber, S., Jarecki, S., Kentros, S., Wei, B.: Three-party ORAM for secure computation. In: Iwata, T., Cheon, J.H. (eds.) ASIACRYPT 2015. LNCS, vol. 9452, pp. 360–385. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-48797-6_16

    Chapter  Google Scholar 

  26. Furukawa, J., Lindell, Y., Nof, A., Weinstein, O.: High-throughput secure three-party computation for malicious adversaries and an honest majority. In: Coron, J.-S., Nielsen, J.B. (eds.) EUROCRYPT 2017. LNCS, vol. 10211, pp. 225–255. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-56614-6_8

    Chapter  Google Scholar 

  27. Hemenway Falk, B., Noble, D., Ostrovsky, R.: Alibi: a flaw in Cuckoo-hashing based hierarchical ORAM schemes and a solution. In: Canteaut, A., Standaert, F.-X. (eds.) EUROCRYPT 2021. LNCS, vol. 12698, pp. 338–369. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-77883-5_12

    Chapter  MATH  Google Scholar 

  28. Falk, B.H., Noble, D., Ostrovsky, R.: 3-party distributed ORAM from oblivious set membership. In: Galdi, C., Jarecki, S. (eds.) Security and Cryptography for Networks. SCN 2022. LNCS, vol. 13409, pp. 437–461. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-14791-3_19

  29. Fletcher, C.W., Naveed, M., Ren, L., Shi, E., Stefanov, E.: Bucket ORAM: single online roundtrip, constant bandwidth oblivious RAM. IACR ePrint 2015/1065 (2015)

    Google Scholar 

  30. Gentry, C., Halevi, S., Lu, S., Ostrovsky, R., Raykova, M., Wichs, D.: Garbled RAM revisited. In: Nguyen, P.Q., Oswald, E. (eds.) EUROCRYPT 2014. LNCS, vol. 8441, pp. 405–422. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-55220-5_23

    Chapter  Google Scholar 

  31. Gilboa, N., Ishai, Y.: Distributed point functions and their applications. In: Nguyen, P.Q., Oswald, E. (eds.) EUROCRYPT 2014. LNCS, vol. 8441, pp. 640–658. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-55220-5_35

    Chapter  Google Scholar 

  32. Gordon, S.D., et al.: Secure two-party computation in sublinear (amortized) time. In: CCS (2012)

    Google Scholar 

  33. Gordon, S.D., Katz, J., Wang, X.: Simple and efficient two-server ORAM. In: Peyrin, T., Galbraith, S. (eds.) ASIACRYPT 2018. LNCS, vol. 11274, pp. 141–157. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03332-3_6

    Chapter  Google Scholar 

  34. Goodrich, M.T., Mitzenmacher, M., Ohrimenko, O., Tamassia, R.: Privacy-preserving group data access via stateless oblivious RAM simulation. In: SODA (2012)

    Google Scholar 

  35. Goldreich, O., Micali, S., Wigderson, A.: How to play any mental game. In: STOC (1987)

    Google Scholar 

  36. Goldreich, O., Ostrovsky, R.: Software protection and simulation on oblivious RAMs. JACM 43(3), 431–473 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  37. Goldreich, O.: Towards a theory of software protection and simulation by oblivious RAMs. In: STOC 1987, pp. 182–194. ACM (1987)

    Google Scholar 

  38. Hamlin, A., Varia, M.: Two-server distributed ORAM with sublinear computation and constant rounds. IACR ePrint 2020/1547 (2020)

    Google Scholar 

  39. Ichikawa, A., Komargodski, I., Hamada, K., Kikuchi, R., Ikarashi, D.: 3-party secure computation for RAMs: optimal and concretely efficient. IACR ePrint 2023/516 (2023)

    Google Scholar 

  40. Ishai, Y., Katz, J., Kushilevitz, E., Lindell, Y., Petrank, E.: On achieving the “best of both worlds’’ in secure multiparty computation. SIAM J. Comput. 40(1), 122–141 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  41. Jarecki, S., Wei, B.: 3PC ORAM with low latency, low bandwidth, and fast batch retrieval. In: Preneel, B., Vercauteren, F. (eds.) ACNS 2018. LNCS, vol. 10892, pp. 360–378. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-93387-0_19

    Chapter  MATH  Google Scholar 

  42. Ji, K., Zhang, B., Lu, T., Ren, K.: Multi-party private function evaluation for RAM. IACR ePrint 2022/939 (2022)

    Google Scholar 

  43. Kushilevitz, E., Lu, S., Ostrovsky, R.: On the (in) security of hash-based oblivious RAM and a new balancing scheme. In: SODA (2012)

    Google Scholar 

  44. Kushilevitz, E., Mour, T.: Sub-logarithmic distributed oblivious RAM with small block size. In: Lin, D., Sako, K. (eds.) PKC 2019. LNCS, vol. 11442, pp. 3–33. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17253-4_1

    Chapter  Google Scholar 

  45. Kirsch, A., Mitzenmacher, M., Wieder, U.: More robust hashing: Cuckoo hashing with a stash. SIAM J. Comput. 39, 1543–1561 (2009)

    Google Scholar 

  46. Kushilevitz, E., Ostrovsky, R.: Replication is NOT needed: SINGLE database, computationally-private information retrieval. In: FOCS (1997)

    Google Scholar 

  47. Keller, M., Scholl, P.: Efficient, oblivious data structures for MPC. In: Sarkar, P., Iwata, T. (eds.) ASIACRYPT 2014. LNCS, vol. 8874, pp. 506–525. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45608-8_27

    Chapter  Google Scholar 

  48. Laud, P.: Parallel oblivious array access for secure multiparty computation and privacy-preserving minimum spanning trees. In: PoPETs (2015)

    Google Scholar 

  49. Liu, F., Isobe, T., Meier, W.: Cryptanalysis of full LowMC and LowMC-M with algebraic techniques. IACR ePrint 2020/1034 (2020)

    Google Scholar 

  50. Lindell, Y., Nof, A.: A framework for constructing fast MPC over arithmetic circuits with malicious adversaries and an honest-majority. In: CCS, pp. 259–276 (2017)

    Google Scholar 

  51. Larsen, K.G., Nielsen, J.B.: Yes, there is an oblivious RAM lower bound! In: Shacham, H., Boldyreva, A. (eds.) CRYPTO 2018. LNCS, vol. 10992, pp. 523–542. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96881-0_18

    Chapter  Google Scholar 

  52. Lu, S., Ostrovsky, R.: Distributed oblivious RAM for secure two-party computation. In: Sahai, A. (ed.) TCC 2013. LNCS, vol. 7785, pp. 377–396. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36594-2_22

    Chapter  Google Scholar 

  53. Laur, S., Willemson, J., Zhang, B.: Round-efficient oblivious database manipulation. In: Lai, X., Zhou, J., Li, H. (eds.) ISC 2011. LNCS, vol. 7001, pp. 262–277. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24861-0_18

    Chapter  Google Scholar 

  54. Mitzenmacher, M.: Some open questions related to Cuckoo hashing. In: Fiat, A., Sanders, P. (eds.) ESA 2009. LNCS, vol. 5757, pp. 1–10. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04128-0_1

    Chapter  Google Scholar 

  55. Mathialagan, S., Vafa, N.: MacORAMa: optimal oblivious RAM with integrity. IACR ePrint 2023/083 (2023)

    Google Scholar 

  56. Mitchell, J.C., Zimmerman, J.: Data-oblivious data structures. In: STACS. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2014)

    Google Scholar 

  57. NIST. Post-quantum cryptography PQC: Round 3 submissions (2021). https://csrc.nist.gov/Projects/post-quantum-cryptography/post-quantum-cryptography-standardization/round-3-submissions

  58. Noble, D.: Explicit, closed-form, general bounds for cuckoo hashing with a stash. IACR ePrint 2021/447 (2021)

    Google Scholar 

  59. Ostrovsky, R., Shoup, V.: Private information storage. In: STOC, vol. 97 (1997)

    Google Scholar 

  60. Ostrovsky, R.: Efficient computation on oblivious RAMs. In: STOC (1990)

    Google Scholar 

  61. Ostrovsky, R.: Software protection and simulation on oblivious RAMs. Ph.D. thesis, Massachusetts Institute of Technology (1992)

    Google Scholar 

  62. Patel, S., Persiano, G., Raykova, M., Yeo, K.: PanORAMa: oblivious RAM with logarithmic overhead. In: FOCS (2018)

    Google Scholar 

  63. Pagh, R., Rodler, F.F.: Cuckoo hashing. In: ESA (2001)

    Google Scholar 

  64. Pinkas, B., Reinman, T.: Oblivious RAM revisited. In: Rabin, T. (ed.) CRYPTO 2010. LNCS, vol. 6223, pp. 502–519. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14623-7_27

    Chapter  Google Scholar 

  65. Pinkas, B., Schneider, T., Segev, G., Zohner, M.: Phasing: private set intersection using permutation-based hashing. In: USENIX, pp. 515–530 (2015)

    Google Scholar 

  66. Ren, L., et al.: Ring ORAM: closing the gap between small and large client storage oblivious RAM. IACR ePrint 2014/997 (2014)

    Google Scholar 

  67. Stefanov, E., et al.: Path ORAM: an extremely simple oblivious RAM protocol. In: CCS (2013)

    Google Scholar 

  68. Toft, T.: Primitives and applications for multi-party computation. Unpublished doctoral dissertation, University of Aarhus, Denmark (2007)

    Google Scholar 

  69. Vadapalli, A., Henry, R., Goldberg, I.: Duoram: a bandwidth-efficient distributed ORAM for 2- and 3-party computation. IACR ePrint 2022/1747 (2022)

    Google Scholar 

  70. Vollmer, H.: Introduction to Circuit Complexity: A Uniform Approach. Springer, Cham (1999). https://doi.org/10.1007/978-3-662-03927-4

  71. Wang, X., Chan, H., Shi, E.: Circuit ORAM: on tightness of the Goldreich-Ostrovsky lower bound. In: CCS (2015)

    Google Scholar 

  72. Wang, X.S., Huang, Y., Chan, T.-H.H., Shelat, A., Shi, E.: SCORAM: oblivious RAM for secure computation. In: CCS (2014)

    Google Scholar 

  73. Yao, A.: Protocols for secure computations (extended abstract). In: FOCS (1982)

    Google Scholar 

  74. Yao, A.: How to generate and exchange secrets. In: FOCS (1986)

    Google Scholar 

  75. Zahur, S., et al.: Revisiting square-root ORAM: efficient random access in multi-party computation. In: S & P (2016)

    Google Scholar 

Download references

Acknowledgments

Supported in part by ONR under grant N00014-15-1-2750, Ripple Labs Inc., DARPA under Cooperative Agreement HR0011-20-2-0025, the Algorand Centers of Excellence programme managed by Algorand Foundation, NSF grants CNS-2001096 and CCF-2220450, US-Israel BSF grant 2015782, Amazon Faculty Award, Cisco Research Award and Sunday Group. Any views, opinions, findings, conclusions or recommendations contained herein are those of the author(s) and should not be interpreted as necessarily representing the official policies, either expressed or implied, of ONR, Ripple Labs Inc., DARPA, the Department of Defense, the Algorand Foundation, or the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints for governmental purposes not withstanding any copyright annotation therein.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Daniel Noble .

Editor information

Editors and Affiliations

1 Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (pdf 696 KB)

Rights and permissions

Reprints and permissions

Copyright information

© 2023 International Association for Cryptologic Research

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Falk, B., Noble, D., Ostrovsky, R., Shtepel, M., Zhang, J. (2023). DORAM Revisited: Maliciously Secure RAM-MPC with Logarithmic Overhead. In: Rothblum, G., Wee, H. (eds) Theory of Cryptography. TCC 2023. Lecture Notes in Computer Science, vol 14369. Springer, Cham. https://doi.org/10.1007/978-3-031-48615-9_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-48615-9_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-48614-2

  • Online ISBN: 978-3-031-48615-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics