Oblivious RAM: From Theory to Large-scale Real-world Deployment

Discover the theory and real-world deployment of Oblivious RAM, a secure and private data structure, and learn how it can be used in large-scale applications such as cloud services and blockchain.

Key takeaways
  • Oblivious RAM (ORAM) is a binary tree-based data structure that ensures the security and privacy of user data.
  • PathORAM is a type of ORAM that uses a tree-like structure to obfuscate access patterns.
  • ORAM can be used in large-scale real-world deployment to ensure the security and privacy of user data.
  • The key idea behind tree-based ORAM is to map every block to a random path from the root, making it difficult to access specific data.
  • The position map is an essential component of ORAM, as it keeps track of the mapping between logical addresses and physical locations.
  • The eviction process is a crucial step in ORAM, as it ensures that no bucket will ever overflow.
  • To improve the efficiency of ORAM, it is possible to use customized oblivious counterparts for specific data structures, such as sets and priority queues.
  • ORAM can be used in various applications, including cloud services, blockchain, and Signal’s use case.
  • The use of trusted hardware, such as Intel SGX, can improve the security and efficiency of ORAM.
  • The overhead of ORAM can be reduced by using techniques such as block-based access and path compression.
  • The choice of ORAM scheme depends on the specific use case and requirements.
  • There are also various open-source implementations of ORAM available.
  • The concept of ORAM has been around since the 1980s, but it is gaining more attention in recent years due to the increasing importance of data security and privacy.