1. A method in a networked computer system for searching for encrypted documents, the method comprising: for each of a plurality of values of an attribute of documents, the values having an ordering, determining a number of different encrypted instances of the value to generate, wherein the number of different encrypted instances determined for at least one of the plurality of values is greater than one, generating the determined number of different encrypted instances of the value so that the value serves as a basis for generating each of the determined number of different encrypted instances of the value, wherein more than one encrypted instance of the at least one of the plurality of values is generated, and storing the generated encrypted instances of the value, wherein each encrypted instance of the value can be decrypted into the value; generating a mapping of the values of the attribute to each document having that value for the attribute, wherein the mapping maps different encrypted instances of a value to different documents; providing the generated mapping to a document storage service; and identifying an encrypted document that matches a query that specified a value for the attribute by, determining a lower bound on encrypted instances associated with the value specified by the query, determining an upper bound on encrypted instances associated with the value specified by the query, sending the determined lower and upper bounds to a document storage service, and receiving from the document storage service an indication of at least one document associated with an encrypted instance between the lower and upper bounds.
1. A method in a networked computer system for searching for encrypted documents, the method comprising: for each of a plurality of values of an attribute of documents, the values having an ordering, determining a number of different encrypted instances of the value to generate, wherein the number of different encrypted instances determined for at least one of the plurality of values is greater than one, generating the determined number of different encrypted instances of the value so that the value serves as a basis for generating each of the determined number of different encrypted instances of the value, wherein more than one encrypted instance of the at least one of the plurality of values is generated, and storing the generated encrypted instances of the value, wherein each encrypted instance of the value can be decrypted into the value; generating a mapping of the values of the attribute to each document having that value for the attribute, wherein the mapping maps different encrypted instances of a value to different documents; providing the generated mapping to a document storage service; and identifying an encrypted document that matches a query that specified a value for the attribute by, determining a lower bound on encrypted instances associated with the value specified by the query, determining an upper bound on encrypted instances associated with the value specified by the query, sending the determined lower and upper bounds to a document storage service, and receiving from the document storage service an indication of at least one document associated with an encrypted instance between the lower and upper bounds. 5. The method of claim 1 , further comprising: storing a proper subset of the generated encrypted instances in an encrypted instance cache table.