Private Information Retrieval
(Single-server) PIR is the principle variant of PIR that is studied in the literature, introduced by KO97. It is deployed in a setting where a server holds a database (represented as an array) and a client is interested in learning one of the database items. A PIR protocol allows the client to learn the entry without revealing which entry the client is interested in.
The protocol where the client downloads the entire database is known as the trivial PIR.
Syntax
A PIR scheme is a triple of efficient algorithms with respect to database size , modeled as a bit-string :
- is a randomized algorithm that takes an index , outputting a query to send to the server and a client state
- is a deterministic algorithm that takes a database and query , outputting an answer
- is a deterministic algorithm that takes client state and answer , outputting a value
While PIR is typically represented with data-elements as single bits, most constructions support words from There is also a generic transformation between the two. In particular, on can treat any -width word database as a bit-string and just query for the consecutive bits the client is interested in.
Properties
Correctness
A PIR is -correct if for all and ,
where .
Query Privacy
The server’s view — the query — should reveal nothing about the queried index . The following game captures this: the adversary picks two indices, a challenge bit selects one, and the adversary sees only the resulting query.
\begin{algorithm}
\algname{Game}
\caption{$\Game^{\mathrm{priv}}_{\PIR,\calA}(\secpar)$}
\begin{algorithmic}
\State $(i_0, i_1, \stA) \gets \calA(1^\secpar, 1^n)$
\State $b \getsr \bits$
\State $(q, \st) \gets \Query(1^\secpar, i_b)$
\State $b' \gets \calA(q, \stA)$
\Return $[b' = b]$
\end{algorithmic}
\end{algorithm}
A PIR has query privacy if for all efficient ,
is negligible. Here is stateful: it runs in two phases, first choosing the challenge indices, then guessing the bit after seeing the query.
Variations
- Multi-server PIR is an information theoretic variant, which requires multiple servers
- Single-server Symmetric PIR (SPIR) additionally protects the server’s data privacy
- PIR with client-side preprocessing
- Keyword PIR
Symmetric private information retrieval (Single-server)
Symmetric private information retrieval is a stronger version of PIR that in addition to protecting the querier’s privacy, also protects the data privacy. The multi-server, information-theoretic version (IT-SPIR) was introduced by GIKM00, but follow-up works showed how to construct computationally secure versions based on assumptions.
Single-server SPIR is equivalent to -out-of- OT with an additional efficiency requirement.
Other results
- Non-trivial PIR implies OT — DMO00
- Single-round PIR cannot be based on NP-hardness unless PH collapses to the second level — LV15