Batch codes and their applications

Yuval Ishai, Rafail Ostrovsky, Eyal Kushilevitz, Amit Sahai

Research output: Contribution to journalConference articlepeer-review

166 Scopus citations

Abstract

A batch code encodes a string x into an m-tuple of strings, called buckets, such that each batch of k bits from x can be decoded by reading at most one (more generally, t) bits from each bucket. Batch codes can be viewed as relaxing several combinatorial objects, including expanders and locally decodable codes. We initiate the study of these codes by presenting some constructions, connections with other problems, and lower bounds. We also demonstrate the usefulness of batch codes by presenting two types of applications: trading maximal load for storage in certain load-balancing scenarios, and amortizing the computational cost of private information retrieval (PIR) and related cryptographic protocols.

Original languageEnglish
Pages (from-to)262-271
Number of pages10
JournalConference Proceedings of the Annual ACM Symposium on Theory of Computing
DOIs
StatePublished - 2004
EventProceedings of the 36th Annual ACM Symposium on Theory of Computing - Chicago, IL, United States
Duration: 13 Jun 200415 Jun 2004

Keywords

  • Coding
  • Distributed storage
  • Load balancing
  • Locally decodable codes
  • Private information retrieval

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Batch codes and their applications'. Together they form a unique fingerprint.

Cite this