Abstract
Private information retrieval (PIR) allows clients to retrieve records from online database servers without revealing to the servers any information about what records are being retrieved. To achieve this, the servers must typically do a computation involving the entire database for each query. Previous work by Ishai et al. has suggested using batch codes to allow a single client (or collaborating clients) to retrieve multiple records simultaneously while allowing the server computation to scale sublinearly with the number of records fetched.
In this work, we observe a useful mathematical relationship between batch codes and efficient matrix multiplication algorithms, and use this to design a PIR server algorithm that achieves sublinear scaling in the number of records fetched, even when they are requested by distinct, non-collaborating clients; indeed, the clients can be completely unaware that the servers are implementing our optimization. Our multi-client server algorithm is several times faster, when enough records are fetched, than existing optimized PIR severs.
As an application of our work, we show how retrieving proofs of inclusion of certificates in a Certificate Transparency log server can be made privacy friendly using multi-client PIR.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
However, this CPU time is almost completely parallelizable if multiple cores or servers are available.
- 2.
- 3.
http://www.netcraft.com/internet-data-mining/ssl-survey/, accessed July 2014.
- 4.
- 5.
Obtained by querying the server’s API: https://ct.googleapis.com/pilot/ct/v1/get-sth.
References
Aguilar Melchor, C., Gaborit, P.: A lattice-based computationally-efficient private information retrieval protocol. In: Western European Workshop on Research in Cryptology (2007)
Beimel, A., Stahl, Y.: Robust information-theoretic private information retrieval. J. Cryptology 20(3), 295–321 (2007)
Chor, B., Goldreich, O., Kushilevitz, E., Sudan, M.: Private information retrieval. In: 36th Annual IEEE Symposium on Foundations of Computer Science, pp. 41–50 (1995)
Chor, B., Gilboa, N., Naor, M.: Private Information Retrieval by Keywords. Technical report TR CS0917, Department of Computer Science, Technion, Israel (1997)
Coppersmith, D., Winograd, S.: Matrix multiplication via arithmetic progressions. J. Symbolic Comput. 9(3), 251–280 (1990)
Devet, C., Goldberg, I.: The best of both worlds: combining information-theoretic and computational PIR for communication efficiency. In: De Cristofaro, E., Murdoch, S.J. (eds.) PETS 2014. LNCS, vol. 8555, pp. 63–82. Springer, Heidelberg (2014)
Devet, C., Goldberg, I., Heninger, N.: Optimally robust private information retrieval. In: 21st USENIX Security Symposium (2012)
Fox-IT BV: Black Tulip: Report of the investigation into the DigiNotar Certificate Authority breach, August 2012
Goldberg, I.: Improving the robustness of private information retrieval. In: 28th IEEE Symposium on Security and Privacy, pp. 131–148 (2007)
Goldberg, I., Devet, C., Hendry, P., Henry, R.: Percy++ project on SourceForge, version 0.9.0 (2013). http://percy.sourceforge.net. Accessed September 2014
Goldberg, I., Devet, C., Lueks, W., Yang, A., Hendry, P., Henry, R.: Percy++ project on SourceForge, version 1.0 (2014). http://percy.sourceforge.net/. Accessed November 2014
Henry, R., Huang, Y., Goldberg, I.: One (block) size fits all: PIR and SPIR with variable-length records via multi-block queries. In: 20th Annual Network and Distributed System Security Symposium (2013)
Ishai, Y., Kushilevitz, E., Ostrovsky, R., Sahai, A.: Batch codes and their applications. In: 36th ACM Symposium on Theory of Computing, pp. 262–271 (2004)
Kushilevitz, E., Ostrovsky, R.: Replication is not needed: single database, computationally-private information retrieval. In: 38th Annual IEEE Symposium on Foundations of Computer Science, pp. 364–373 (1997)
Laurie, B., Langley, A., Kasper, E.: Certificate Transparency. RFC 6962 (Experimental), June 2013. http://www.ietf.org/rfc/rfc6962.txt
Olumofin, F., Goldberg, I.: Privacy-preserving queries over relational databases. In: Atallah, M.J., Hopper, N.J. (eds.) PETS 2010. LNCS, vol. 6205, pp. 75–92. Springer, Heidelberg (2010)
Olumofin, Femi, Goldberg, Ian: Revisiting the Computational Practicality of Private Information Retrieval. In: Danezis, George (ed.) FC 2011. LNCS, vol. 7035, pp. 158–172. Springer, Heidelberg (2012)
Olumofin, F., Tysowski, P.K., Goldberg, I., Hengartner, U.: Achieving efficient query privacy for location based services. In: Atallah, M.J., Hopper, N.J. (eds.) PETS 2010. LNCS, vol. 6205, pp. 93–110. Springer, Heidelberg (2010)
Shamir, A.: How to share a secret. Commun. ACM 22(11), 612–613 (1979)
Sion, R., Carbunar, B.: On the computational practicality of private information retrieval. In: 14th Network and Distributed Systems Security Symposium (2007)
Strassen, V.: Gaussian elimination is not optimal. Numer. Math. 13(4), 354–356 (1969)
Acknowledgements
We thank the anonymous reviewers and Ben Laurie for their helpful feedback. This research is supported by the Natural Sciences and Engineering Research Council of Canada (NSERC) and by the research program Sentinels as project ‘Revocable Privacy’ (10532). Wouter Lueks is a member of the Privacy and Identity Lab (PI.lab). Sentinels is being financed by Technology Foundation STW, the Netherlands Organization for Scientific Research (NWO), and the Dutch Ministry of Economic Affairs. The PI.lab is funded by SIDN.nl (http://www.sidn.nl). This work benefitted from the use of the CrySP RIPPLE Facility at the University of Waterloo.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Strassen’s Algorithm
A Strassen’s Algorithm
Strassen’s algorithm is best explained by looking at matrix multiplication from a block-matrix perspective. For simplicity, assume that all matrices have size \(n \times n\) where n is even. If
then the matrix product \(\mathbf {R}= \mathbf {Q}\cdot \mathbf {D}\) is given by
where
It thus reduces to 8 matrix multiplications of size n / 2. In Strassen’s algorithm the following 7 matrix products are calculated first (note that in fields of characteristic 2, the \(+\) and \(-\) operations are of course the same):
The matrix product is then given by:
Using this algorithm, only 7 matrix multiplications of size n / 2 are necessary. Applying this trick recursively gives a complexity of \(O(n^{\lg 7})\).
Rights and permissions
Copyright information
© 2015 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lueks, W., Goldberg, I. (2015). Sublinear Scaling for Multi-Client Private Information Retrieval. In: Böhme, R., Okamoto, T. (eds) Financial Cryptography and Data Security. FC 2015. Lecture Notes in Computer Science(), vol 8975. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-47854-7_10
Download citation
DOI: https://doi.org/10.1007/978-3-662-47854-7_10
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-47853-0
Online ISBN: 978-3-662-47854-7
eBook Packages: Computer ScienceComputer Science (R0)