8. A system for performing prefix search of encrypted cloud stored data, comprising: a network proxy server comprising a computer and configured as a network intermediary between a user device and a cloud storage service storing encrypted files being encrypted using an order-preserving encryption algorithm, the network proxy server being configured to receive a search request with a search term directed to encrypted files stored in a cloud storage service, to generate a minimum possible plaintext string using the search term as prefix and padding the search term to a first character length using one or more trailing characters indicative of a minimum possible value related to the search term, to generate a maximum possible plaintext string using the search term as prefix and padding the search term to the first character length using one or more trailing characters indicative of a maximum possible value related to the search term, to encrypt the minimum possible plaintext string and the maximum possible plaintext string using the order-preserving encryption algorithm used to encrypt the cloud stored encrypted files, to generate a minimum ciphertext from the minimum possible plaintext string and a maximum ciphertext from the maximum possible plaintext string, to determine a set of common leading digits from the minimum ciphertext and the maximum ciphertext, to generate a cloud service search request including the set of common leading digits as an encrypted prefix search term, to send the cloud service search request with the encrypted prefix search term to the cloud storage service, and to receive a search result from the cloud storage service.
8. A system for performing prefix search of encrypted cloud stored data, comprising: a network proxy server comprising a computer and configured as a network intermediary between a user device and a cloud storage service storing encrypted files being encrypted using an order-preserving encryption algorithm, the network proxy server being configured to receive a search request with a search term directed to encrypted files stored in a cloud storage service, to generate a minimum possible plaintext string using the search term as prefix and padding the search term to a first character length using one or more trailing characters indicative of a minimum possible value related to the search term, to generate a maximum possible plaintext string using the search term as prefix and padding the search term to the first character length using one or more trailing characters indicative of a maximum possible value related to the search term, to encrypt the minimum possible plaintext string and the maximum possible plaintext string using the order-preserving encryption algorithm used to encrypt the cloud stored encrypted files, to generate a minimum ciphertext from the minimum possible plaintext string and a maximum ciphertext from the maximum possible plaintext string, to determine a set of common leading digits from the minimum ciphertext and the maximum ciphertext, to generate a cloud service search request including the set of common leading digits as an encrypted prefix search term, to send the cloud service search request with the encrypted prefix search term to the cloud storage service, and to receive a search result from the cloud storage service. 10. The system of claim 8 , wherein the network proxy server is further configured to receive the search result including an encrypted file stored in the cloud storage service having an encrypted text with a prefix matching the encrypted prefix search term, to decrypt the returned encrypted file, and to provide the decrypted file as the search result to a requesting user device.