Dates are inconsistent

Dates are inconsistent

174 results sorted by ID

2024/1255 (PDF) Last updated: 2024-08-08
Compass: Encrypted Semantic Search with High Accuracy
Jinhao Zhu, Liana Patel, Matei Zaharia, Raluca Ada Popa
Applications

We introduce Compass, a semantic search system over encrypted data that offers high accuracy, comparable to state-of-the-art plaintext search algorithms while protecting data, queries and search results from a fully compromised server. Compass also enables privacy-preserving RAG where both the RAG database and the query are protected. Compass's search index contributes a novel way to traverse the search graph in Hierarchical Navigable Small Worlds (HNSW), a top performing vector nearest...

2024/1029 (PDF) Last updated: 2024-06-25
Oblivious Single Access Machines: A New Model for Oblivious Computation
Ananya Appan, David Heath, Ling Ren
Cryptographic protocols

Oblivious RAM (ORAM) allows a client to securely outsource memory storage to an untrusted server. It has been shown that no ORAM can simultaneously achieve small bandwidth blow-up, small client storage, and a single roundtrip of latency. We consider a weakening of the RAM model, which we call the Single Access Machine (SAM) model. In the SAM model, each memory slot can be written to at most once and read from at most once. We adapt existing tree-based ORAM to obtain an oblivious SAM...

2024/988 (PDF) Last updated: 2024-07-03
Privacy-Preserving Dijkstra
Benjamin Ostrovsky
Cryptographic protocols

Given a graph $G(V,E)$, represented as a secret-sharing of an adjacency list, we show how to obliviously convert it into an alternative, MPC-friendly secret-shared representation, so-called $d$-normalized replicated adjacency list (which we abbreviate to $d$-normalized), where the size of our new data-structure is only 4x larger -- compared to the original (secret-shared adjacency list) representation of $G$. Yet, this new data structure enables us to execute oblivious graph algorithms that...

2024/753 (PDF) Last updated: 2024-06-25
Summation-based Private Segmented Membership Test from Threshold-Fully Homomorphic Encryption
Nirajan Koirala, Jonathan Takeshita, Jeremy Stevens, Taeho Jung
Cryptographic protocols

In many real-world scenarios, there are cases where a client wishes to check if a data element they hold is included in a set segmented across a large number of data holders. To protect user privacy, the client’s query and the data holders’ sets should remain encrypted throughout the whole process. Prior work on Private Set Intersection (PSI), Multi-Party PSI (MPSI), Private Membership Test (PMT), and Oblivious RAM (ORAM) falls short in this scenario in many ways. They either require...

2024/011 (PDF) Last updated: 2024-02-21
MetaDORAM: Info-Theoretic Distributed ORAM with Less Communication
Brett Hemenway Falk, Daniel Noble, Rafail Ostrovsky
Cryptographic protocols

This paper presents a Distributed Oblivious RAM (DORAM) protocol, MetaDORAM, that is information-theoretically secure and has lower communication cost than all previous info-theoretically secure DORAM protocols for small block sizes. Specifically, given a memory of $n$ locations, each of size $d$ bits, MetaDORAM requires only $O( (d \log^2(n)) \log(n)/\log(\log(n)) )$ bits of communication per query. When $d = \Theta(\log^2(n))$, this is a $\Theta(\log(n)/\log \log(n))$ \emph{overhead},...

2023/1969 (PDF) Last updated: 2023-12-29
Secure and Practical Functional Dependency Discovery in Outsourced Databases
Xinle Cao, Yuhan Li, Dmytro Bogatov, Jian Liu, Kui Ren
Cryptographic protocols

The popularity of cloud computing has made outsourced databases prevalent in real-world applications. To protect data security, numerous encrypted outsourced databases have been proposed for this paradigm. However, the maintenance of encrypted databases has scarcely been addressed. In this paper, we focus on a typical maintenance task --- functional dependency (FD) discovery. We develop novel FD protocols in encrypted databases while guaranteeing minimal leakages: nothing is revealed besides...

2023/1950 (PDF) Last updated: 2024-01-04
GigaDORAM: Breaking the Billion Address Barrier
Brett Falk, Rafail Ostrovsky, Matan Shtepel, Jacob Zhang
Cryptographic protocols

We design and implement GigaDORAM, a novel 3-server Distributed Oblivious Random Access Memory (DORAM) protocol. Oblivious RAM allows a client to read and write to memory on an untrusted server while ensuring the server itself learns nothing about the client's access pattern. Distributed Oblivious RAM (DORAM) allows a group of servers to efficiently access a secret-shared array at a secret-shared index. A recent generation of DORAM implementations (e.g. FLORAM, DuORAM) has focused on...

2023/1703 (PDF) Last updated: 2023-11-02
Memory Checking for Parallel RAMs
Surya Mathialagan
Cryptographic protocols

When outsourcing a database to an untrusted remote server, one might want to verify the integrity of contents while accessing it. To solve this, Blum et al. [FOCS `91] propose the notion of memory checking. Memory checking allows a user to run a RAM program on a remote server, with the ability to verify integrity of the storage with small local storage. In this work, we define and initiate the formal study of memory checking for Parallel RAMs (PRAMs). The parallel RAM...

2023/1676 (PDF) Last updated: 2023-11-09
FutORAMa: A Concretely Efficient Hierarchical Oblivious RAM
Gilad Asharov, Ilan Komargodski, Yehuda Michelson
Cryptographic protocols

Oblivious RAM (ORAM) is a general-purpose technique for hiding memory access patterns. This is a fundamental task underlying many secure computation applications. While known ORAM schemes provide optimal asymptotic complexity, despite extensive efforts, their concrete costs remain prohibitively expensive for many interesting applications. The current state-of-the-art practical ORAM schemes are suitable only for somewhat small memories (Square-Root ORAM or Path ORAM). This work presents a...

2023/1115 (PDF) Last updated: 2023-11-03
Two Shuffles Make a RAM: Improved Constant Overhead Zero Knowledge RAM
Yibin Yang, David Heath
Cryptographic protocols

We optimize Zero Knowledge (ZK) proofs of statements expressed as RAM programs over arithmetic values. Our arithmetic-circuit-based read/write memory uses only 4 input gates and 6 multiplication gates per memory access. This is an almost 3× total gate improvement over prior state of the art (Delpech de Saint Guilhem et al., SCN’22). We implemented our memory in the context of ZK proofs based on vector oblivious linear evaluation (VOLE), and we further optimize based on techniques...

2023/991 (PDF) Last updated: 2023-06-26
Fast ORAM with Server-aided Preprocessing and Pragmatic Privacy-Efficiency Trade-off
Vladimir Kolesnikov, Stanislav Peceny, Ni Trieu, Xiao Wang
Cryptographic protocols

Data-dependent accesses to memory are necessary for many real-world applications, but their cost remains prohibitive in secure computation. Prior work either focused on minimizing the need for data-dependent access in these applications, or reduced its cost by improving oblivious RAM for secure computation (SC-ORAM). Despite extensive efforts to improve SC-ORAM, the most concretely efficient solutions still require $\approx0.7$s per access to arrays of $2^{30}$ entries. This plainly...

2023/578 (PDF) Last updated: 2023-12-23
DORAM revisited: Maliciously secure RAM-MPC with logarithmic overhead
Brett Falk, Daniel Noble, Rafail Ostrovsky, Matan Shtepel, Jacob Zhang
Cryptographic protocols

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 and computation 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...

2023/572 (PDF) Last updated: 2024-06-06
Scalable Private Signaling
Sashidhar Jakkamsetti, Zeyu Liu, Varun Madathil
Cryptographic protocols

Private messaging systems that use a bulletin board, like privacy-preserving blockchains, have been a popular topic during the last couple of years. In these systems, typically a private message is posted on the board for a recipient and the privacy requirement is that no one can determine the sender and the recipient of the message. Until recently, the efficiency of these recipients was not considered, and the party had to perform a naive scan of the board to retrieve their messages. ...

2023/516 (PDF) Last updated: 2023-04-10
3-Party Secure Computation for RAMs: Optimal and Concretely Efficient
Atsunori Ichikawa, Ilan Komargodski, Koki Hamada, Ryo Kikuchi, Dai Ikarashi
Cryptographic protocols

A distributed oblivious RAM (DORAM) is a method for accessing a secret-shared memory while hiding the accessed locations. DORAMs are the key tool for secure multiparty computation (MPC) for RAM programs that avoids expensive RAM-to-circuit transformations. We present new and improved 3-party DORAM protocols. For a logical memory of size $N$ and for each logical operation, our DORAM requires $O(\log N)$ local CPU computation steps. This is known to be asymptotically optimal. Our...

2023/455 (PDF) Last updated: 2023-09-24
Tri-State Circuits: A Circuit Model that Captures RAM
David Heath, Vladimir Kolesnikov, Rafail Ostrovsky
Cryptographic protocols

We introduce tri-state circuits (TSCs). TSCs form a natural model of computation that, to our knowledge, has not been considered by theorists. The model captures a surprising combination of simplicity and power. TSCs are simple in that they allow only three wire values ($0,1,$ and undefined - $\mathcal{Z}$) and three types of fan-in two gates; they are powerful in that their statically placed gates fire (execute) eagerly as their inputs become defined, implying orders of execution that...

2023/350 (PDF) Last updated: 2023-03-10
Weighted Oblivious RAM, with Applications to Searchable Symmetric Encryption
Leonard Assouline, Brice Minaud
Cryptographic protocols

Existing Oblivious RAM protocols do not support the storage of data items of variable size in a non-trivial way. While the study of ORAM for items of variable size is of interest in and of itself, it is also motivated by the need for more performant and more secure Searchable Symmetric Encryption (SSE) schemes. In this article, we introduce the notion of weighted ORAM, which supports the storage of blocks of different sizes. In a standard ORAM scheme, each data block has a fixed size...

2023/291 (PDF) Last updated: 2023-02-26
PEO-Store: Practical and Economical Oblivious Store with Peer-to-Peer Delegation
Wenlong Tian, Jian Guo, Zhiyong Xu, Ruixuan Li, Weijun Xiao
Applications

The growing popularity of cloud storage has brought attention to critical need for preventing information leakage from cloud access patterns. To this end, recent efforts have extended Oblivious RAM (ORAM) to the cloud environment in the form of Oblivious Store. However, its impracticality due to the use of probability encryption with fake accesses to obfuscate the access pattern, as well as the security requirements of conventional obliviousness designs, which hinder cloud interests in...

2023/274 (PDF) Last updated: 2024-04-16
Panacea: Non-interactive and Stateless Oblivious RAM
Kelong Cong, Debajyoti Das, Georgio Nicolas, Jeongeun Park
Cryptographic protocols

Oblivious RAM (ORAM) allows a client to outsource storage to a remote server while hiding the data access pattern from the server. Many ORAM designs have been proposed to reduce the computational overhead and bandwidth blowup for the client. A recent work, Onion Ring ORAM (CCS'19), is able to achieve $O(1)$ bandwidth blowup in the online phase using fully homomorphic encryption (FHE) techniques, at the cost of a computationally expensive client-side offline phase. Furthermore, such a scheme...

2023/083 (PDF) Last updated: 2023-02-25
MacORAMa: Optimal Oblivious RAM with Integrity
Surya Mathialagan, Neekon Vafa
Cryptographic protocols

Oblivious RAM (ORAM), introduced by Goldreich and Ostrovsky (J. ACM `96), is a primitive that allows a client to perform RAM computations on an external database without revealing any information through the access pattern. For a database of size $N$, well-known lower bounds show that a multiplicative overhead of $\Omega(\log N)$ in the number of RAM queries is necessary assuming $O(1)$ client storage. A long sequence of works culminated in the asymptotically optimal construction of Asharov,...

2022/1747 (PDF) Last updated: 2023-02-26
Duoram: A Bandwidth-Efficient Distributed ORAM for 2- and 3-Party Computation
Adithya Vadapalli, Ryan Henry, Ian Goldberg
Cryptographic protocols

We design, analyze, and implement Duoram, a fast and bandwidth-efficient distributed ORAM protocol suitable for secure 2- and 3-party computation settings. Following Doerner and shelat's Floram construction (CCS 2017), Duoram leverages (2,2)-distributed point functions (DPFs) to represent PIR and PIR-writing queries compactly—but with a host of innovations that yield massive asymptotic reductions in communication cost and notable speedups in practice, even for modestly sized instances....

2022/1553 (PDF) Last updated: 2023-02-27
Lower Bound Framework for Differentially Private and Oblivious Data Structures
Giuseppe Persiano, Kevin Yeo
Cryptographic protocols

In recent years, there has been significant work in studying data structures that provide privacy for the operations that are executed. These primitives aim to guarantee that observable access patterns to physical memory do not reveal substantial information about the queries and updates executed on the data structure. Multiple recent works, including Larsen and Nielsen [Crypto'18], Persiano and Yeo [Eurocrypt'19], Hubáček et al. [TCC'19] and Komargodski and Lin [Crypto'21], have shown that...

2022/1506 (PDF) Last updated: 2024-02-26
ORTOA: One Round Trip Oblivious Access
Sujaya Maiyya, Yuval Steinhart, Divyakant Agrawal, Prabhanjan Ananth, Amr El Abbadi
Applications

Many applications relying on cloud storage services typically encrypt their data to ensure data privacy. However, reading or writing the encrypted data to serve client requests reveals the type of client operation to a potentially untrusted cloud. An adversary can exploit this information leak to compromise a user’s privacy by tracking read/write access patterns. Existing approaches such as Oblivious RAM (ORAM) schemes hide the type of client access by always reading and then writing the...

2022/982 (PDF) Last updated: 2022-07-31
Random-Index Oblivious RAM
Shai Halevi, Eyal Kushilevitz
Cryptographic protocols

We study the notion of Random-index ORAM (RORAM), which is a weak form of ORAM where the Client is limited to asking for (and possibly modifying) random elements of the $N$-items memory, rather than specific ones. That is, whenever the client issues a request, it gets in return a pair $(r,x_r)$ where $r\in_R[N]$ is a random index and $x_r$ is the content of the $r$-th memory item. Then, the client can also modify the content to some new value $x'_r$. We first argue that the limited...

2022/883 (PDF) Last updated: 2022-07-06
Differentially Oblivious Turing Machines
Ilan Komargodski, Elaine Shi
Foundations

Oblivious RAM (ORAM) is a machinery that protects any RAM from leaking information about its secret input by observing only the access pattern. It is known that every ORAM must incur a logarithmic overhead compared to the non-oblivious RAM. In fact, even the seemingly weaker notion of differential obliviousness, which intuitively ``protects'' a single access by guaranteeing that the observed access pattern for every two ``neighboring'' logical access sequences satisfy...

2022/858 (PDF) Last updated: 2022-07-04
Snapshot-Oblivious RAMs: Sub-Logarithmic Efficiency for Short Transcripts
Yang Du, Daniel Genkin, Paul Grubbs
Cryptographic protocols

Oblivious RAM (ORAM) is a powerful technique to prevent harmful data breaches. Despite tremendous progress in improving the concrete performance of ORAM, it remains too slow for use in many practical settings; recent breakthroughs in lower bounds indicate this inefficiency is inherent for ORAM and even some natural relaxations. This work introduces snapshot-oblivious RAMs, a new secure memory access primitive. Snapshot-oblivious RAMs bypass lower bounds by providing security only for...

2022/691 (PDF) Last updated: 2022-05-31
QuORAM: A Quorum-Replicated Fault Tolerant ORAM Datastore
Sujaya Maiyya, Seif Ibrahim, Caitlin Scarberry, Divyakant Agrawal, Amr El Abbadi, Huijia Lin, Stefano Tessaro, Victor Zakhary
Cryptographic protocols

Privacy and security challenges due to the outsourcing of data storage and processing to third-party cloud providers are well known. With regard to data privacy, Oblivious RAM (ORAM) schemes provide strong privacy guarantees by not only hiding the contents of the data (by encryption) but also obfuscating the access patterns of the outsourced data. But most existing ORAM datastores are not fault tolerant in that if the external storage server (which stores encrypted data) or the trusted proxy...

2022/590 (PDF) Last updated: 2024-02-04
Secure Merge in Linear Time and O(log log N) Rounds
Mark Blunk, Paul Bunn, Samuel Dittmer, Steve Lu, Rafail Ostrovsky
Cryptographic protocols

The problem of Secure Merge consists of combining two sorted lists (which are either held separately by two parties, or secret-shared among two or more parties), and outputting a single merged (sorted) list, secret-shared among all parties. Just as insecure algorithms for comparison-based sorting are slower than merging (i.e., for lists of size $n$, $\Theta(n \log n)$ versus $\Theta(n)$), we explore whether the analogous separation exists for secure protocols; namely, if there exist...

2022/316 (PDF) Last updated: 2022-03-08
Bounded Functional Encryption for Turing Machines: Adaptive Security from General Assumptions
Shweta Agrawal, Fuyuki Kitagawa, Anuja Modi, Ryo Nishimaki, Shota Yamada, Takashi Yamakawa
Public-key cryptography

The recent work of Agrawal et al., [Crypto '21] and Goyal et al. [Eurocrypt '22] concurrently introduced the notion of dynamic bounded collusion security for functional encryption (FE) and showed a construction satisfying the notion from identity based encryption (IBE). Agrawal et al., [Crypto '21] further extended it to FE for Turing machines in non-adaptive simulation setting from the sub-exponential learining with errors assumption (LWE). Concurrently, the work of Goyal et al. [Asiacrypt...

2022/051 (PDF) Last updated: 2022-01-18
Titanium: A Metadata-Hiding File-Sharing System with Malicious Security
Weikeng Chen, Thang Hoang, Jorge Guajardo, Attila A. Yavuz
Applications

End-to-end encrypted file-sharing systems enable users to share files without revealing the file contents to the storage servers. However, the servers still learn metadata, including user identities and access patterns. Prior work tried to remove such leakage but relied on strong assumptions. Metal (NDSS '20) is not secure against malicious servers. MCORAM (ASIACRYPT '20) provides confidentiality against malicious servers, but not integrity. Titanium is a metadata-hiding file-sharing system...

2021/1661 (PDF) Last updated: 2022-04-12
Waldo: A Private Time-Series Database from Function Secret Sharing
Emma Dauterman, Mayank Rathee, Raluca Ada Popa, Ion Stoica
Cryptographic protocols

Applications today rely on cloud databases for storing and querying time-series data. While outsourcing storage is convenient, this data is often sensitive, making data breaches a serious concern. We present Waldo, a time-series database with rich functionality and strong security guarantees: Waldo supports multi-predicate filtering, protects data contents as well as query filter values and search access patterns, and provides malicious security in the 3-party honest-majority setting. In...

2021/1519 (PDF) Last updated: 2021-11-20
Practical Garbled RAM: GRAM with $O(\log^2 n)$ Overhead
David Heath, Vladimir Kolesnikov, Rafail Ostrovsky
Cryptographic protocols

Garbled RAM (GRAM) is a powerful technique introduced by Lu and Ostrovsky that equips Garbled Circuit (GC) with a sublinear cost RAM without adding rounds of interaction. While multiple GRAM constructions are known, none are suitable for practice, due to costs that have high constants and poor scaling. We present the first GRAM suitable for practice. For computational security parameter $\kappa$ and for a size-$n$ RAM that stores blocks of size $w = \Omega(\log^2 n)$ bits, our GRAM incurs...

2021/1463 (PDF) Last updated: 2021-11-06
3-Party Distributed ORAM from Oblivious Set Membership
Brett Hemenway Falk, Daniel Noble, Rafail Ostrovsky
Cryptographic protocols

Distributed Oblivious RAM (DORAM) protocols allow a group of participants to obliviously access a secret-shared array at a secret-shared index, and DORAM is the key tool for secure multiparty computation (MPC) in the RAM model. In this work, we present a novel 3-party semi-honest DORAM protocol with O((κ D) log N) communication per access, where N is the size of the memory, κ is a security parameter and D is the block size. Our protocol performs polylogarithmic computation and does not...

2021/1280 (PDF) Last updated: 2021-11-12
Snoopy: Surpassing the Scalability Bottleneck of Oblivious Storage
Emma Dauterman, Vivian Fang, Ioannis Demertzis, Natacha Crooks, Raluca Ada Popa
Cryptographic protocols

Existing oblivious storage systems provide strong security by hiding access patterns, but do not scale to sustain high throughput as they rely on a central point of coordination. To overcome this scalability bottleneck, we present Snoopy, an object store that is both oblivious and scalable such that adding more machines increases system throughput. Snoopy contributes techniques tailored to the high-throughput regime to securely distribute and efficiently parallelize every system component...

2021/1266 (PDF) Last updated: 2021-09-22
Update-Sensitive Structured Encryption with Backward Privacy
Zhiqiang Wu, Jin Wang, Keqin Li
Cryptographic protocols

Many recent studies focus on dynamic searchable encryption (DSE), which provides efficient data-search and data-update services directly on outsourced private data. Most encryption schemes are not optimized for update-intensive cases, which say that the same data record is frequently added and deleted from the database. How to build an efficient and secure DSE scheme for update-intensive data is still challenging. We propose UI-SE, the first DSE scheme that achieves single-round-trip...

2021/1123 (PDF) Last updated: 2022-03-08
Oblivious RAM with Worst-Case Logarithmic Overhead
Gilad Asharov, Ilan Komargodski, Wei-Kai Lin, Elaine Shi
Cryptographic protocols

We present the first Oblivious RAM (ORAM) construction that for $N$ memory blocks supports accesses with worst-case $O(\log N)$ overhead for any block size $\Omega(\log N)$ while requiring a client memory of only a constant number of memory blocks. We rely on the existence of one-way functions and guarantee computational security. Our result closes a long line of research on fundamental feasibility results for ORAM constructions as logarithmic overhead is necessary. The previous best...

2021/1049 (PDF) Last updated: 2021-11-20
Binary Search in Secure Computation
Marina Blanton, Chen Yuan
Cryptographic protocols

Binary search is one of the most popular algorithms in computer science. Realizing it in the context of secure multiparty computation which demands data-oblivious execution, however, is extremely non-trivial. It has been previously implemented only using oblivious RAM (ORAM) for secure computation and in this work we initiate the study of this topic using conventional secure computation techniques based on secret sharing. We develop a suite of protocols with different properties and of...

2021/587 (PDF) Last updated: 2021-09-14
PrORAM: Fast $O(\log n)$ Private Coin ZK ORAM
David Heath, Vladimir Kolesnikov
Cryptographic protocols

We construct a concretely efficient Zero Knowledge (ZK) Oblivious RAM (ORAM) that consumes $2 \log n$ oblivious transfers (OTs) of length-$2\sigma$ secrets per access of an arithmetic value, for statistical security parameter $\sigma$ and array size $n$. This is an asymptotic and concrete improvement over previous best (concretely efficient) ZK ORAM Bub- bleRAM of Heath and Kolesnikov ([HK20a], CCS 2020), whose access cost is $1/2 \log^2 n$ OTs of length-$2\sigma$ secrets. ZK ORAM is...

2021/447 (PDF) Last updated: 2023-06-16
Explicit, Closed-form, General bounds for Cuckoo Hashing with a Stash
Daniel Noble
Foundations

Cuckoo Hashing is a dictionary data structure in which a data item is stored in a small constant number of possible locations. It has the appealing property that a data structure of size $2m$ can hold up to $n = \frac{1}{d} m$ elements for any constant $d > 1$; i.e. the data structure size is a small constant times larger than the combined size of all inserted data elements. However, the probability that a cuckoo hash table build fails is $\Theta(\frac{1}{m})$. This is too high for many...

2021/274 (PDF) Last updated: 2021-08-18
Large Message Homomorphic Secret Sharing from DCR and Applications
Lawrence Roy, Jaspal Singh
Cryptographic protocols

We present the first homomorphic secret sharing (HSS) construction that simultaneously (1) has negligible correctness error, (2) supports integers from an exponentially large range, and (3) relies on an assumption not known to imply FHE --- specifically, the Decisional Composite Residuosity (DCR) assumption. This resolves an open question posed by Boyle, Gilboa, and Ishai (Crypto 2016). Homomorphic secret sharing is analogous to fully-homomorphic encryption, except the ciphertexts are shared...

2021/244 (PDF) Last updated: 2022-03-07
Forward Secret Encrypted RAM: Lower Bounds and Applications
Alexander Bienstock, Yevgeniy Dodis, Kevin Yeo
Cryptographic protocols

In this paper, we study forward secret encrypted RAMs (FS eRAMs) which enable clients to outsource the storage of an n-entry array to a server. In the case of a catastrophic attack where both client and server storage are compromised, FS eRAMs guarantee that the adversary may not recover any array entries that were deleted or overwritten prior to the attack. A simple folklore FS eRAM construction with $O(\log n)$ overhead has been known for at least two decades. Unfortunately, no progress...

2021/231 Last updated: 2021-08-26
LL-ORAM: A Forward and Backward Private Oblivious RAM
Zhiqiang Wu, Xiaoyong Tang, Jin Wang, Tan Deng
Secret-key cryptography

Oblivious RAM (ORAM) enables a user to read/write her outsourced cloud data without access-pattern leakage. Not all users want a fully functional ORAM all the time since it always creates inefficiency. We show that forward-private/backward-private (FP/BP) ORAMs are also good alternatives for reducing the search-pattern leakage of dynamic searchable encryption (DSE). We introduce the FP/BP-ORAM definitions and present LL-ORAM, the first FP/BP-ORAM that achieves near-zero client storage,...

2020/1551 (PDF) Last updated: 2020-12-13
Multi-Client Oblivious RAM with Poly-Logarithmic Communication
Sherman S. M. Chow, Katharina Fech, Russell W. F. Lai, Giulio Malavolta

Oblivious RAM enables oblivious access to memory in the single-client setting, which may not be the best fit in the network setting. Multi-client oblivious RAM (MCORAM) considers a collaborative but untrusted environment, where a database owner selectively grants read access and write access to different entries of a confidential database to multiple clients. Their access pattern must remain oblivious not only to the server but also to fellow clients. This upgrade rules out many techniques...

2020/1547 (PDF) Last updated: 2020-12-13
Two-server Distributed ORAM with Sublinear Computation and Constant Rounds
Ariel Hamlin, Mayank Varia
Cryptographic protocols

Distributed ORAM (DORAM) is a multi-server variant of Oblivious RAM. Originally proposed to lower bandwidth, DORAM has recently been of great interest due to its applicability to secure computation in the RAM model, where circuit complexity and rounds of communication are equally important metrics of efficiency. In this work, we construct the first DORAM schemes in the 2-server, semi-honest setting that simultaneously achieve sublinear server computation and constant rounds of...

2020/1387 Last updated: 2022-06-27
FB-Tree: Highly Efficient Tree-Based Index for Encrypted Boolean Queries in Smart Cities
Zhiqiang Wu, Kenli Li, Jin Wang, Naixue Xiong
Cryptographic protocols

To expand capacity, many resource-constrained industrial devices encrypt and outsource their private data to public clouds, employing a searchable encryption (SE) scheme that provides efficient search service directly to encrypted data. Current tree-based SE schemes can do this and support sublinear encrypted Boolean queries. However, they all suffer from log n overhead in a search procedure. To resolve the challenge, in this paper, we propose a new tree structure called the four-branch tree...

2020/1292 (PDF) Last updated: 2023-10-04
Optimal Oblivious Parallel RAM
Gilad Asharov, Ilan Komargodski, Wei-Kai Lin, Enoch Peserico, Runting Shi
Cryptographic protocols

An oblivious RAM (ORAM), introduced by Goldreich and Ostrovsky (STOC '87 and J. ACM '96), is a technique for hiding RAM's access pattern. That is, for every input the distribution of the observed locations accessed by the machine is essentially independent of the machine's secret inputs. Recent progress culminated in a work of Asharov et al. (EUROCRYPT '20), obtaining an ORAM with (amortized) logarithmic overhead in total work, which is known to be optimal. Oblivious Parallel RAM...

2020/1195 (PDF) Last updated: 2020-10-06
A Lower Bound for One-Round Oblivious RAM
David Cash, Andrew Drucker, Alexander Hoover
Cryptographic protocols

We initiate a fine-grained study of the round complexity of Oblivious RAM (ORAM). We prove that any one-round balls-in bins ORAM that does not duplicate balls must have either \Omega(\sqrt{N}) bandwidth or \Omega(\sqrt{N}) client memory, where N is the number of memory slots being simulated. This shows that such schemes are strictly weaker than general (multi-round) ORAMs or those with server computation, and in particular implies that a one-round version of the original square-root ORAM of...

2020/1132 (PDF) Last updated: 2021-06-21
A Logarithmic Lower Bound for Oblivious RAM (for all parameters)
Ilan Komargodski, Wei-Kai Lin
Foundations

An Oblivious RAM (ORAM), introduced by Goldreich and Ostrovsky (J. ACM 1996), is a (probabilistic) RAM that hides its access pattern, i.e., for every input the observed locations accessed are similarly distributed. In recent years there has been great progress both in terms of upper bounds as well as in terms of lower bounds, essentially pinning down the smallest overhead possible in various settings of parameters. We observe that there is a very natural setting of parameters in which no...

2020/997 (PDF) Last updated: 2021-03-23
Alibi: A Flaw in Cuckoo-Hashing based Hierarchical ORAM Schemes and a Solution
Brett Hemenway Falk, Daniel Noble, Rafail Ostrovsky
Cryptographic protocols

There once was a table of hashes That held extra items in stashes It all seemed like bliss But things went amiss When the stashes were stored in the caches The first Oblivious RAM protocols introduced the ``hierarchical solution,'' (STOC '90) where the servers store a series of hash tables of geometrically increasing capacities. Each ORAM query would read a small number of locations from each level of the hierarchy, and each level of the hierarchy would be reshuffled and rebuilt at...

2020/858 (PDF) Last updated: 2020-12-07
Client-oblivious OPRAM
Gareth T. Davies, Christian Janson, Daniel P. Martin
Cryptographic protocols

Oblivious Parallel RAM (OPRAM) enables multiple clients to synchronously make read and write accesses to shared memory (more generally, any data-store) whilst hiding the access patterns from the owner/provider of that shared memory. Prior work is best suited to the setting of multiple processors (or cores) within a single client device, and consequently there are shortcomings when applying that work to the multi-client setting where distinct client devices may not trust each other, or may...

2020/807 (PDF) Last updated: 2020-10-06
Secure merge with $O(n \log \log n)$ secure operation
Brett Hemenway Falk, Rafail Ostrovsky
Cryptographic protocols

Data-oblivious algorithms are a key component of many secure computation protocols. In this work, we show that advances in secure multiparty shuffling algorithms can be used to increase the efficiency of several key cryptographic tools. The key observation is that many secure computation protocols rely heavily on secure shuffles. The best data-oblivious shuffling algorithms require $O(n \log n)$, operations, but in the two-party or multiparty setting, secure shuffling can be achieved with...

2020/653 (PDF) Last updated: 2020-06-03
MemPoline: Mitigating Memory-based Side-Channel Attacks through Memory Access Obfuscation
Zhen Hang Jiang, Yunsi Fei, Aidong Adam Ding, Thomas Wahl
Implementation

Recent years have seen various side-channel timing attacks demonstrated on both CPUs and GPUs, in diverse settings such as desktops, clouds, and mobile systems. These attacks observe events on different shared resources on the memory hierarchy from timing information, and then infer secret-dependent memory access pattern to retrieve the secret through statistical analysis. We generalize these attacks as memory-based side-channel attacks. In this paper, we propose a novel software...

2020/604 (PDF) Last updated: 2021-05-12
Perfectly Oblivious (Parallel) RAM Revisited, and Improved Constructions
T-H. Hubert Chan, Elaine Shi, Wei-Kai Lin, Kartik Nayak
Cryptographic protocols

Oblivious RAM (ORAM) is a technique for compiling any RAM program to an oblivious counterpart, i.e., one whose access patterns do not leak information about the secret inputs. Similarly, Oblivious Parallel RAM (OPRAM) compiles a {\it parallel} RAM program to an oblivious counterpart. In this paper, we care about ORAM/OPRAM with {\it perfect security}, i.e., the access patterns must be {\it identically distributed} no matter what the program's memory request sequence is. In the past, two...

2020/377 (PDF) Last updated: 2020-06-08
Oblivious tight compaction in O(n) time with smaller constant
Samuel Dittmer, Rafail Ostrovsky
Cryptographic protocols

Oblivious compaction is a crucial building block for hash-based oblivious RAM. Asharov et al. recently gave a O(n) algorithm for oblivious tight compaction. Their algorithm is deterministic and asymptotically optimal, but it is not practical to implement because the implied constant is $\gg 2^{38}$. We give a new algorithm for oblivious tight compaction that runs in time $< 16014.54n$. As part of our construction, we give a new result in the bootstrap percolation of random regular graphs.

2020/203 (PDF) Last updated: 2020-12-13
MACAO: A Maliciously-Secure and Client-Efficient Active ORAM Framework
Thang Hoang, Jorge Guajardo, Attila A. Yavuz
Cryptographic protocols

Oblivious Random Access Machine (ORAM) allows a client to hide the access pattern and thus, offers a strong level of privacy for data outsourcing. An ideal ORAM scheme is expected to offer desirable properties such as low client bandwidth, low server computation overhead and the ability to compute over encrypted data. S3ORAM (CCS’17) is an efficient active ORAM scheme, which takes advantage of secret sharing to provide ideal properties for data outsourcing such as low client bandwidth, low...

2020/125 (PDF) Last updated: 2020-04-06
Oblivious Parallel Tight Compaction
Gilad Asharov, Ilan Komargodski, Wei-Kai Lin, Enoch Peserico, Elaine Shi
Cryptographic protocols

In tight compaction, one is given an array of balls some of which are marked 0 and the rest are marked 1. The output of the procedure is an array that contains all of the original balls except that now the 0-balls appear before the 1-balls. In other words, tight compaction is equivalent to sorting the array according to 1-bit keys (not necessarily maintaining order within same-key balls). Tight compaction is not only an important algorithmic task by itself, but its oblivious version has...

2020/083 (PDF) Last updated: 2020-10-19
Metal: A Metadata-Hiding File-Sharing System
Weikeng Chen, Raluca Ada Popa
Applications

File-sharing systems like Dropbox offer insufficient privacy because a compromised server can see the file contents in the clear. Although encryption can hide such contents from the servers, metadata leakage remains significant. The goal of our work is to develop a file-sharing system that hides metadata---including user identities and file access patterns. Metal is the first file-sharing system that hides such metadata from malicious users and that has a latency of only a few seconds. The...

2019/1175 (PDF) Last updated: 2019-10-10
Revisiting Leakage Abuse Attacks
Laura Blackstone, Seny Kamara, Tarik Moataz

Encrypted search algorithms (ESA) are cryptographic algorithms that support search over encrypted data. ESAs can be designed with various primitives including searchable/structured symmetric encryption (SSE/STE) and oblivious RAM (ORAM). Leakage abuse attacks attempt to recover client queries using knowledge of the client’s data. An important parameter for any leakage-abuse attack is its known-data rate; that is, the fraction of client data that must be known to the adversary. In this work,...

2019/1108 (PDF) Last updated: 2020-11-13
Lower Bounds for Multi-Server Oblivious RAMs
Kasper Green Larsen, Mark Simkin, Kevin Yeo
Foundations

In this work, we consider the construction of oblivious RAMs (ORAM) in a setting with multiple servers and the adversary may corrupt a subset of the servers. We present an $\Omega(\log n)$ overhead lower bound for any $k$-server ORAM that limits any PPT adversary to distinguishing advantage at most $1/4k$ when only one server is corrupted. In other words, if one insists on negligible distinguishing advantage, then multi-server ORAMs cannot be faster than single-server ORAMs even with...

2019/811 (PDF) Last updated: 2019-07-14
SEAL: Attack Mitigation for Encrypted Databases via Adjustable Leakage
Ioannis Demertzis, Dimitrios Papadopoulos, Charalampos Papamanthou, Saurabh Shintre
Cryptographic protocols

Building expressive encrypted databases that can scale to large volumes of data while enjoying formal security guarantees has been one of the holy grails of security and cryptography research. Searchable Encryption (SE) is considered to be an attractive implementation choice for this goal: It naturally supports basic database queries such as point, join and range, and is very practical at the expense of well-defined leakage such as search and access pattern. Nevertheless, recent attacks have...

2019/736 (PDF) Last updated: 2019-09-19
Onion Ring ORAM: Efficient Constant Bandwidth Oblivious RAM from (Leveled) TFHE
Hao Chen, Ilaria Chillotti, Ling Ren
Cryptographic protocols

Oblivious RAM (ORAM) is a cryptographic primitive that allows a client to hide access pattern to its data encrypted and stored at a remote server. Traditionally, ORAM algorithms assume the server acts purely as a storage device. Under this assumption, ORAM has at least $\log(N)$ bandwidth blowup for $N$ data entries. After three decades of improvements, ORAM algorithms have reached the optimal logarithmic bandwidth blowup. Nonetheless, in many practical use-cases, a constant bandwidth...

2019/632 (PDF) Last updated: 2019-06-17
Fully Homomorphic Encryption for RAMs
Ariel Hamlin, Justin Holmgren, Mor Weiss, Daniel Wichs

We initiate the study of fully homomorphic encryption for RAMs (RAM-FHE). This is a public-key encryption scheme where, given an encryption of a large database $D$, anybody can efficiently compute an encryption of $P(D)$ for an arbitrary RAM program $P$. The running time over the encrypted data should be as close as possible to the worst case running time of $P$, which may be sub-linear in the data size. A central difficulty in constructing a RAM-FHE scheme is hiding the sequence of memory...

2019/384 (PDF) Last updated: 2019-04-16
What Storage Access Privacy is Achievable with Small Overhead?
Sarvar Patel, Giuseppe Persiano, Kevin Yeo
Cryptographic protocols

Oblivious RAM (ORAM) and private information retrieval (PIR) are classic cryptographic primitives used to hide the access pattern to data whose storage has been outsourced to an untrusted server. Unfortunately, both primitives require considerable overhead compared to plaintext access. For large-scale storage infrastructure with highly frequent access requests, the degradation in response time and the exorbitant increase in resource costs incurred by either ORAM or PIR prevent their usage....

2019/377 (PDF) Last updated: 2019-04-16
Lower Bounds for Oblivious Near-Neighbor Search
Kasper Green Larsen, Tal Malkin, Omri Weinstein, Kevin Yeo
Cryptographic protocols

We prove an $\Omega(d \lg n/ (\lg\lg n)^2)$ lower bound on the dynamic cell-probe complexity of statistically $\mathit{oblivious}$ approximate-near-neighbor search ($\mathsf{ANN}$) over the $d$-dimensional Hamming cube. For the natural setting of $d = \Theta(\log n)$, our result implies an $\tilde{\Omega}(\lg^2 n)$ lower bound, which is a quadratic improvement over the highest (non-oblivious) cell-probe lower bound for $\mathsf{ANN}$. This is the first super-logarithmic...

2019/359 (PDF) Last updated: 2020-03-08
SANNS: Scaling Up Secure Approximate k-Nearest Neighbors Search
Hao Chen, Ilaria Chillotti, Yihe Dong, Oxana Poburinnaya, Ilya Razenshteyn, M. Sadegh Riazi
Applications

The $k$-Nearest Neighbor Search ($k$-NNS) is the backbone of several cloud-based services such as recommender systems, face recognition, and database search on text and images. In these services, the client sends the query to the cloud server and receives the response in which case the query and response are revealed to the service provider. Such data disclosures are unacceptable in several scenarios due to the sensitivity of data and/or privacy laws. In this paper, we introduce SANNS, a...

2019/237 (PDF) Last updated: 2019-09-27
Optimal Oblivious Priority Queues
Zahra Jafargholi, Kasper Green Larsen, Mark Simkin
Foundations

In this work, we present the first asymptotically optimal oblivious priority queue, which matches the lower bound of Jacob, Larsen, and Nielsen (SODA'19). Our construction is conceptually simple, statistically secure, and has small hidden constants. We illustrate the power of our optimal oblivious priority queue by presenting a conceptually equally simple construction of statistically secure offline ORAMs with $O(\lg n)$ bandwidth overhead.

2019/048 (PDF) Last updated: 2019-01-25
Sub-logarithmic Distributed Oblivious RAM with Small Block Size
Eyal Kushilevitz, Tamer Mour

Oblivious RAM (ORAM) is a cryptographic primitive that allows a client to securely execute RAM programs over data that is stored in an untrusted server. Distributed Oblivious RAM is a variant of ORAM, where the data is stored in $m>1$ servers. Extensive research over the last few decades have succeeded to reduce the bandwidth overhead of ORAM schemes, both in the single-server and the multi-server setting, from $O(\sqrt{N})$ to $O(1)$. However, all known protocols that achieve a...

2018/1228 Last updated: 2019-02-20
Multi-Party Oblivious RAM based on Function Secret Sharing and Replicated Secret Sharing Arithmetic
Marina Blanton, Chen Yuan
Cryptographic protocols

In this work, we study the problem of constructing oblivious RAM for secure multi-party computation to obliviously access memory at private locations during secure computation. We build on recent two-party Floram construction that uses function secret sharing for a point function and incurs $O(\sqrt N)$ secure computation and $O(N)$ local computation per ORAM access for an $N$-element data set. Our new construction, Top ORAM, is designed for multi-party computation with $n \ge 3$ parties and...

2018/1051 (PDF) Last updated: 2018-11-02
Lower Bounds for Differentially Private RAMs
Giuseppe Persiano, Kevin Yeo
Cryptographic protocols

In this work, we study privacy-preserving storage primitives that are suitable for use in data analysis on outsourced databases within the differential privacy framework. The goal in differentially private data analysis is to disclose global properties of a group without compromising any individual’s privacy. Typically, differentially private adversaries only ever learn global properties. For the case of outsourced databases, the adversary also views the patterns of access to data. Oblivious...

2018/953 (PDF) Last updated: 2019-06-20
A Comparative Evaluation of Order-Revealing Encryption Schemes and Secure Range-Query Protocols
Dmytro Bogatov, George Kollios, Leonid Reyzin
Implementation

Database query evaluation over encrypted data can allow database users to maintain the privacy of their data while outsourcing data processing. Order-Preserving Encryption (OPE) and Order-Revealing Encryption (ORE) were designed to enable efficient query execution, but provide only partial privacy. More private protocols, based on Searchable Symmetric Encryption (SSE), Oblivious RAM (ORAM) or custom encrypted data structures, have also been designed. In this paper, we develop a framework to...

2018/892 (PDF) Last updated: 2021-02-25
OptORAMa: Optimal Oblivious RAM
Gilad Asharov, Ilan Komargodski, Wei-Kai Lin, Kartik Nayak, Enoch Peserico, Elaine Shi
Foundations

Oblivious RAM (ORAM), first introduced in the ground-breaking work of Goldreich and Ostrovsky (STOC '87 and J. ACM '96) is a technique for provably obfuscating programs' access patterns, such that the access patterns leak no information about the programs' secret inputs. To compile a general program to an oblivious counterpart, it is well-known that $\Omega(\log N)$ amortized blowup is necessary, where $N$ is the size of the logical memory. This was shown in Goldreich and Ostrovksy's...

2018/851 (PDF) Last updated: 2018-09-20
More is Less: Perfectly Secure Oblivious Algorithms in the Multi-Server Setting
T-H. Hubert Chan, Jonathan Katz, Kartik Nayak, Antigoni Polychroniadou, Elaine Shi

The problem of Oblivious RAM (ORAM) has traditionally been studied in the single-server setting, but more recently the multi-server setting has also been considered. Yet it is still unclear whether the multi-server setting has any inherent advantages, e.g., whether the multi-server setting can be used to achieve stronger security goals or provably better efficiency than is possible in the single-server case. In this work, we construct a perfectly secure 3-server ORAM scheme that outperforms...

2018/706 (PDF) Last updated: 2018-08-16
Efficient 3-Party Distributed ORAM
Paul Bunn, Jonathan Katz, Eyal Kushilevitz, Rafail Ostrovsky
Cryptographic protocols

Distributed Oblivious RAM (DORAM) protocols---in which parties obliviously access a shared location in a shared array---are a fundamental component of secure-computation protocols in the RAM model. We show here an efficient, 3-party DORAM protocol with semi-honest security for a single corrupted party. To the best of our knowledge, ours is the first protocol for this setting that runs in constant rounds, requires sublinear communication and linear work, and makes only black-box use of...

2018/619 (PDF) Last updated: 2021-04-22
Is there an Oblivious RAM Lower Bound for Online Reads?
Mor Weiss, Daniel Wichs

Oblivious RAM (ORAM), introduced by Goldreich and Ostrovsky (JACM 1996), can be used to read and write to memory in a way that hides which locations are being accessed. The best known ORAM schemes have an $O(\log n)$ overhead per access, where $n$ is the data size. The work of Goldreich and Ostrovsky gave a lower bound showing that this is optimal for ORAM schemes that operate in a ``balls and bins'' model, where memory blocks can only be shuffled between different locations but not...

2018/551 (PDF) Last updated: 2018-06-04
Structured Encryption and Leakage Suppression
Seny Kamara, Tarik Moataz, Olga Ohrimenko

Structured encryption (STE) schemes encrypt data structures in such a way that they can be privately queried. One aspect of STE that is still poorly understood is its leakage. In this work, we describe a general framework to design STE schemes that do not leak the query/search pattern (i.e., if and when a query was previously made). Our framework consists of two compilers. The first can be used to make any dynamic STE scheme rebuildable in the sense that the encrypted structures it...

2018/549 (PDF) Last updated: 2018-06-04
Adaptive Garbled RAM from Laconic Oblivious Transfer
Sanjam Garg, Rafail Ostrovsky, Akshayaram Srinivasan

We give a construction of an adaptive garbled RAM scheme. In the adaptive setting, a client first garbles a ``large'' persistent database which is stored on a server. Next, the client can provide multiple adaptively and adversarially chosen RAM garbled programs that execute and modify the stored database arbitrarily. The garbled database and the garbled program should reveal nothing more than the running time and the output of the computation. Furthermore, the sizes of the garbled database...

2018/471 (PDF) Last updated: 2018-12-11
Efficient Range ORAM with $\mathbb{O}(\log^{2}{N})$ Locality
Anrin Chakraborti, Adam J. Aviv, Seung Geol Choi, Travis Mayberry, Daniel S. Roche, Radu Sion

Oblivious RAM protocols (ORAMs) allow a client to access data from an untrusted storage device without revealing to that device any information about their access pattern. Typically this is accomplished through random shuffling of the data such that the storage device cannot determine where individual blocks are located, resulting in a highly randomized access pattern. Storage devices however, are typically optimized for \emph{sequential} access. A large number of random disk seeks during...

2018/423 (PDF) Last updated: 2018-05-29
Yes, There is an Oblivious RAM Lower Bound!
Kasper Green Larsen, Jesper Buus Nielsen
Cryptographic protocols

An Oblivious RAM (ORAM) introduced by Goldreich and Ostrovsky [JACM'96] is a (possibly randomized) RAM, for which the memory access pattern reveals no information about the operations performed. The main performance metric of an ORAM is the bandwidth overhead, i.e., the multiplicative factor extra memory blocks that must be accessed to hide the operation sequence. In their seminal paper introducing the ORAM, Goldreich and Ostrovsky proved an amortized $\Omega(\lg n)$ bandwidth overhead lower...

2018/373 (PDF) Last updated: 2019-08-05
PanORAMa: Oblivious RAM with Logarithmic Overhead
Sarvar Patel, Giuseppe Persiano, Mariana Raykova, Kevin Yeo

We present PanORAMa, the first Oblivious RAM construction that achieves communication overhead $O(\log N \cdot \log \log N)$ for a database of $N$ blocks and for any block size $B=\Omega(\log N)$ while requiring client memory of only a constant number of memory blocks. Our scheme can be instantiated in the ``balls and bins" model in which Goldreich and Ostrovsky [JACM 96] showed an $\Omega(\log N)$ lower bound for ORAM communication. Our construction follows the hierarchical approach to...

2018/364 (PDF) Last updated: 2018-10-02
Perfectly Secure Oblivious Parallel RAM
T-H. Hubert Chan, Kartik Nayak, Elaine Shi
Cryptographic protocols

We show that PRAMs can be obliviously simulated with perfect security, incurring only $O(\log N \log \log N)$ blowup in parallel runtime, $O(\log^3 N)$ blowup in total work, and $O(1)$ blowup in space relative to the original PRAM. Our results advance the theoretical understanding of Oblivious (Parallel) RAM in several respects. First, prior to our work, no perfectly secure Oblivious Parallel RAM (OPRAM) construction was known; and we are the first in this respect. Second, even for the...

2018/363 (PDF) Last updated: 2018-04-18
Private Anonymous Data Access
Ariel Hamlin, Rafail Ostrovsky, Mor Weiss, Daniel Wichs

We consider a scenario where a server holds a huge database that it wants to make accessible to a large group of clients. After an initial setup phase, clients should be able to read arbitrary locations in the database while maintaining privacy (the server does not learn which locations are being read) and anonymity (the server does not learn which client is performing each read). This should hold even if the server colludes with a subset of the clients. Moreover, the run-time of both the...

2018/347 (PDF) Last updated: 2018-04-16
3PC ORAM with Low Latency, Low Bandwidth, and Fast Batch Retrieval
Stanislaw Jarecki, Boyang Wei
Cryptographic protocols

Multi-Party Computation of Oblivious RAM (MPC ORAM) implements secret-shared random access memory in a way that protects access pattern privacy against a threshold of corruptions. MPC ORAM enables secure computation of any RAM program on large data held by different entities, e.g. MPC processing of database queries on a secret-shared database. MPC ORAM can be constructed by any (client-server) ORAM, but there is an efficiency gap between known MPC ORAM's and ORAM's. Current asymptotically...

2018/268 (PDF) Last updated: 2019-02-06
Perfectly Secure Oblivious RAM with Sublinear Bandwidth Overhead
Michael Raskin, Mark Simkin
Cryptographic protocols

Oblivious RAM (ORAM) has established itself as a fundamental cryptographic building block. Understanding which bandwidth overheads are possible under which assumptions has been the topic of a vast amount of previous works. In this work, we focus on perfectly secure ORAM and we present the first construction with sublinear bandwidth overhead in the worst-case. All prior constructions with perfect security require linear communication overhead in the worst-case and only achieve sublinear...

2018/227 (PDF) Last updated: 2018-10-29
Can We Overcome the $n \log n$ Barrier for Oblivious Sorting?
Wei-Kai Lin, Elaine Shi, Tiancheng Xie
Foundations

It is well-known that non-comparison-based techniques can allow us to sort $n$ elements in $o(n \log n)$ time on a Random-Access Machine (RAM). On the other hand, it is a long-standing open question whether (non-comparison-based) circuits can sort $n$ elements from the domain $[1..2^k]$ with $o(k n \log n)$ boolean gates. We consider weakened forms of this question: first, we consider a restricted class of sorting where the number of distinct keys is much smaller than the input length; and...

2018/220 (PDF) Last updated: 2018-02-27
PRO-ORAM: Constant Latency Read-Only Oblivious RAM
Shruti Tople, Yaoqi Jia, Prateek Saxena
Implementation

Oblivious RAM is a well-known cryptographic primitive to hide data access patterns. However, the best known ORAM schemes require a logarithmic computation time in the general case which makes it infeasible for use in real-world applications. In practice, hiding data access patterns should incur a constant latency per access. In this work, we present PRO-ORAM --- an ORAM construction that achieves constant latencies per access in a large class of applications. PRO-ORAM theoretically and...

2018/005 (PDF) Last updated: 2018-09-05
Simple and Efficient Two-Server ORAM
S. Dov Gordon, Jonathan Katz, Xiao Wang
Cryptographic protocols

We show a protocol for two-server oblivious RAM (ORAM) that is simpler and more efficient than the best prior work. Our construction combines any tree-based ORAM with an extension of a two-server private information retrieval scheme by Boyle et al., and is able to avoid recursion and thus use only one round of interaction. In addition, our scheme has a very cheap initialization phase, making it well suited for RAM-based secure computation. Although our scheme requires the servers to perform...

2017/1033 (PDF) Last updated: 2020-08-05
Foundations of Differentially Oblivious Algorithms
T-H. Hubert Chan, Kai-Min Chung, Bruce Maggs, Elaine Shi
Foundations

It is well-known that a program's memory access pattern can leak information about its input. To thwart such leakage, most existing works adopt the solution of oblivious RAM (ORAM) simulation. Such a notion has stimulated much debate. Some have argued that the notion of ORAM is too strong, and suffers from a logarithmic lower bound on simulation overhead. Despite encouraging progress in designing efficient ORAM algorithms, it would nonetheless be desirable to avoid the oblivious simulation...

2017/981 (PDF) Last updated: 2017-12-26
Efficient Maliciously Secure Multiparty Computation for RAM
Marcel Keller, Avishay Yanai
Cryptographic protocols

A crucial issue, that mostly affects the performance of actively secure computation of RAM programs, is the task of reading/writing from/to memory in a private and authenticated manner. Previous works in the active security and multiparty settings are based purely on the SPDZ (reactive) protocol, hence, memory accesses are treated just like any input to the computation. However, a garbled-circuit-based construction (such as BMR), which benefits from a lower round complexity, must resolve the...

2017/964 (PDF) Last updated: 2017-10-01
Recursive ORAMs with Practical Constructions
Sarvar Patel, Giuseppe Persiano, Kevin Yeo
Cryptographic protocols

We present Recursive Square Root ORAM (R-SQRT), a simple and flexible ORAM that can be instantiated for different client storage requirements. R-SQRT requires significantly less bandwidth than Ring and Partition ORAM, the previous two best practical constructions in their respective classes of ORAM according to client storage requirements. Specifically, R-SQRT is a 4x improvement in amortized bandwidth over Ring ORAM for similar server storage. R-SQRT is also a 1.33-1.5x improvement...

2017/924 (PDF) Last updated: 2020-08-18
Oblivious Hashing Revisited, and Applications to Asymptotically Efficient ORAM and OPRAM
T-H. Hubert Chan, Yue Guo, Wei-Kai Lin, Elaine Shi
Cryptographic protocols

Oblivious RAM (ORAM) is a powerful cryptographic building block that allows a program to provably hide its access patterns to sensitive data. Since the original proposal of ORAM by Goldreich and Ostrovsky, numerous improvements have been made. To date, the best asymptotic overhead achievable for general block sizes is $O(\log^2 N/\log \log N)$, due to an elegant scheme by Kushilevitz et al., which in turn relies on the oblivious Cuckoo hashing scheme by Goodrich and Mitzenmacher. In this...

2017/861 (PDF) Last updated: 2017-09-09
On the Depth of Oblivious Parallel RAM
T-H. Hubert Chan, Kai-Min Chung, Elaine Shi

Oblivious Parallel RAM (OPRAM), first proposed by Boyle, Chung, and Pass, is the natural parallel extension of Oblivious RAM (ORAM). OPRAM provides a powerful cryptographic building block for hiding the access patterns of programs to sensitive data, while preserving the paralellism inherent in the original program. All prior OPRAM schemes adopt a single metric of ``simulation overhead'' that characterizes the blowup in parallel runtime, assuming that oblivious simulation is constrained to...

2017/827 (PDF) Last updated: 2018-01-09
Scaling ORAM for Secure Computation
Jack Doerner, abhi shelat
Cryptographic protocols

We design and implement a Distributed Oblivious Random Access Memory (ORAM) data structure that is optimized for use in two-party secure computation protocols. We improve upon the access time of previous constructions by a factor of up to ten, their memory overhead by a factor of one hundred or more, and their initialization time by a factor of thousands. We are able to instantiate ORAMs that hold $2^{34}$ bytes, and perform operations on them in seconds, which was not previously feasible...

2017/772 (PDF) Last updated: 2019-03-03
Locality-Preserving Oblivious RAM
Gilad Asharov, T-H. Hubert Chan, Kartik Nayak, Rafael Pass, Ling Ren, Elaine Shi
Cryptographic protocols

Oblivious RAMs, introduced by Goldreich and Ostrovsky [JACM'96], compile any RAM program into one that is ``memory oblivious'', i.e., the access pattern to the memory is independent of the input. All previous ORAM schemes, however, completely break the locality of data accesses (for instance, by shuffling the data to pseudorandom positions in memory). In this work, we initiate the study of locality-preserving ORAMs --- ORAMs that preserve locality of the accessed memory regions, while ...

2017/749 (PDF) Last updated: 2017-11-03
Searchable Encryption with Optimal Locality: Achieving Sublogarithmic Read Efficiency
Ioannis Demertzis, Dimitrios Papadopoulos, Charalampos Papamanthou
Foundations

We propose the first linear-space searchable encryption scheme with constant locality and \emph{sublogarithmic} read efficiency, strictly improving the previously best known read efficiency bound (Asharov et al., STOC 2016) from $\Theta(\log N \log \log N)$ to $O(\log ^{\gamma} N)$ where $\gamma=\frac{2}{3} \delta$ for any fixed $\delta>0$. Our scheme employs four different allocation algorithms for storing the keyword lists, depending on the size of the list considered each time. For our...

2017/590 (PDF) Last updated: 2017-06-20
Constant bandwidth ORAM with small block size using PIR operations
Linru Zhang, Gongxian Zeng, Yuechen Chen, Siu-Ming Yiu, Nairen Cao, Zheli Liu
Cryptographic protocols

Recently, server-with-computation model has been applied in Oblivious RAM scheme to achieve constant communication (constant number of blocks). However, existing works either result in large block size O(log^6N), or have some security flaws. Furthermore, a lower bound of sub-logarithmic bandwidth was given if we do not use expensive fully homomorphic operations. The question of \whether constant bandwidth with smaller block size without fully homomorphic operations is achievable" remains...

2017/586 (PDF) Last updated: 2017-09-07
Deterministic, Stash-Free Write-Only ORAM
Daniel S. Roche, Adam J. Aviv, Seung Geol Choi, Travis Mayberry

Write-Only Oblivious RAM (WoORAM) protocols provide privacy by encrypting the contents of data and also hiding the pattern of write operations over that data. WoORAMs provide better privacy than plain encryption and better performance than more general ORAM schemes (which hide both writing and reading access patterns), and the write-oblivious setting has been applied to important applications of cloud storage synchronization and encrypted hidden volumes. In this paper, we introduce an...

2017/549 (PDF) Last updated: 2017-12-05
ZeroTrace : Oblivious Memory Primitives from Intel SGX
Sajin Sasy, Sergey Gorbunov, Christopher W. Fletcher

We are witnessing a confluence between applied cryptography and secure hardware systems in enabling secure cloud computing. On one hand, work in applied cryptography has enabled efficient, oblivious data-structures and memory primitives. On the other, secure hardware and the emergence of Intel SGX has enabled a low-overhead and mass market mechanism for isolated execution. By themselves these technologies have their disadvantages. Oblivious memory primitives carry high performance overheads,...

2017/491 (PDF) Last updated: 2017-07-13
Laconic Oblivious Transfer and its Applications
Chongwon Cho, Nico Döttling, Sanjam Garg, Divya Gupta, Peihan Miao, Antigoni Polychroniadou
Public-key cryptography

In this work, we introduce a novel technique for secure computation over large inputs. Specifically, we provide a new oblivious transfer (OT) protocol with a laconic receiver. Laconic OT allows a receiver to commit to a large input $D$ (of length $M$) via a short message. Subsequently, a single short message by a sender allows the receiver to learn $m_{D[L]}$, where the messages $m_0, m_1$ and the location $L \in [M]$ are dynamically chosen by the sender. All prior constructions of OT...

2017/329 (PDF) Last updated: 2017-04-17
Maliciously Secure Multi-Client ORAM
Matteo Maffei, Giulio Malavolta, Manuel Reinert, Dominique Schröder
Cryptographic protocols

Oblivious RAM (ORAM) has emerged as an enabling technology to secure cloud-based storage services. The goal of this cryptographic primitive is to conceal not only the data but also the access patterns from the server. While the early constructions focused on a single client scenario, a few recent works have focused on a setting where multiple clients may access the same data, which is crucial to support data sharing applications. All these works, however, either do not consider malicious...

2017/317 (PDF) Last updated: 2017-08-31
Solidus: Confidential Distributed Ledger Transactions via PVORM
Ethan Cecchetti, Fan Zhang, Yan Ji, Ahmed Kosba, Ari Juels, Elaine Shi
Applications

Blockchains and more general distributed ledgers are becoming increasingly popular as efficient, reliable, and persistent records of data and transactions. Unfortunately, they ensure reliability and correctness by making all data public, raising confidentiality concerns that eliminate many potential uses. In this paper we present Solidus, a protocol for confidential transactions on public blockchains, such as those required for asset transfers with on-chain settlement. Solidus operates in a...

2017/133 (PDF) Last updated: 2018-09-28
Composable and Robust Outsourced Storage
Christian Badertscher, Ueli Maurer

The security of data outsourcing mechanisms has become a crucial aspect of today's IT infrastructures and are the cryptographic foundations of real-world applications. The very fundamental goals are ensuring storage integrity and auditability, confidentiality, and access pattern hiding, as well as combinations of all of them. Despite sharing a common setting, security analyses of these tasks are often performed in a stand-alone fashion expressed in different models, which makes it hard to...

Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.