revisiting square root oram
play

Revisiting Square Root ORAM Efficient Random Access in Multi-Party - PowerPoint PPT Presentation

Revisiting Square Root ORAM Efficient Random Access in Multi-Party Computation Samee Zahur Xiao Wang Mariana Raykova Adri Gascn Jack Doerner Jonathan Katz David Evans oblivc.org/sqoram Secure multi-party computation applications Set


  1. Revisiting Square Root ORAM Efficient Random Access in Multi-Party Computation Samee Zahur Xiao Wang Mariana Raykova Adrià Gascón Jack Doerner Jonathan Katz David Evans oblivc.org/sqoram

  2. Secure multi-party computation applications Set intersection Iris code matching [FNP04] [LCPLB12] Matrix factorization for recommendations [NIWJTB13] Median computation Linear ridge-regression [AMP04] [NWIJBT13]

  3. Random Access

  4. Hiding access pattern Linear scan Oblivious RAM Access every element Continually shuffle elements around Per-access cost: Θ(log 𝑞 𝑜) Per-access cost: Θ 𝑜

  5. Linear scan Figure from: Wang, Chan, Shi. Cir ircuit it Oram am . CCS’15

  6. (our work) 6

  7. Approach: revisit old schemes Classic “square root” scheme by Goldreich and Ostrovsky (1996). Considered slow for MPC because of per-access hash evaluation. Per-access amortized cost: Θ 𝑜 log 𝑜

  8. Four-element ORAM Larger Sizes

  9. 4-Block ORAM Cost: 5 𝐶 + 𝐶 +2 𝐶 +3 𝐶 + … = 11 𝐶 every 3 accesses

  10. Comparison Our scheme Linear scan Cost: 4 𝐶 = 12 𝐶 /3 Cost: 11 𝐶 /3

  11. Four-element ORAM Larger Sizes

  12. Position map 0 1 2 3 0 1 2 3 3 0 2 1 1 3 0 2

  13. Keeping position map updated Position map

  14. Keeping position map updated Position map

  15. Rinse and repeat 1. Shuffle elements 2. Recreate position map 3. Service 𝑈 = 𝑜 log 𝑜 accesses

  16. Creating position map

  17. Creating position map

  18. Inverse permutation 𝑞 𝜌 𝐵 ⋅ 𝑞 𝜌 𝐶 = 𝜌 𝐵 ⋅ 𝑞 𝜌 𝐵

  19. Inverse permutation 𝜌 𝐵 𝜌 𝐶 𝜌 𝐶 = 𝜌 𝐵 ⋅ 𝑞 𝜌 𝐵 Bob computes −1 ⋅ 𝜌 𝐵 −1 = 𝑞 −1 ⋅ 𝜌 𝐵 𝜌 𝐶 −1 𝜌 𝐶 = 𝑞 −1 ⋅ 𝜌 𝐵 −1 ⋅ 𝜌 𝐵 = 𝑞 −1

  20. Rinse and repeat 1. Shuffle elements at Θ 𝑜 log 𝑜 2. Recreate position map 3. Service 𝑈 = 𝑜 log 𝑜 accesses

  21. Access time

  22. Initialization cost

  23. Benchmarks Circuit Square-root Task Parameters Linear scan ORAM ORAM 2 10 searches 1020 s 5041 s 825 s Binary search 2 15 elements 2 10 vertices Breadth-first 4570 s 3750 s 680 s 2 13 edges search 2 9 pairs - 189000 s 119000 s Stable matching ≈ 7 days 2850 s 1920 s N = 2 14 scrypt hashing

  24. Conclusion We revisited a well-known scheme and used it to • Lower initialization cost • Improve breakeven point Shows that asymptotic costs are not the final word, concrete costs require more consideration.

  25. Download oblivc.org/sqoram Contact for help: Samee Zahur <samee@virginia.edu>

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend