1. A polylogarithmic single database computational private information retrieval process comprising: generating a query that encodes the index into an arithmetic function to avoid revealing to the database the index; communicating the query to the database for execution of the arithmetic function against the entirety of the database; receiving results of the execution of the arithmetic function from the database, wherein the total amount of information exchanged with the database is within a constant factor of the logarithm of the size of the database.