5. The method of claim 1 , further comprising: decrypting the encrypted permuted keyword strings in the search result using the order preserving encryption algorithm; and unpermuting, using the first character delimiter, the decrypted permuted keyword strings to obtain plaintext keyword strings with the first character of each plaintext keyword string in a first position in the plaintext keyword string.
5. The method of claim 1 , further comprising: decrypting the encrypted permuted keyword strings in the search result using the order preserving encryption algorithm; and unpermuting, using the first character delimiter, the decrypted permuted keyword strings to obtain plaintext keyword strings with the first character of each plaintext keyword string in a first position in the plaintext keyword string. 6. The method of claim 5 , further comprising: encrypting the plaintext keyword strings of the search result using the document encryption algorithm; formulating a second search request using the encrypted keyword strings; transmitting the second search request including the encrypted keyword strings to the cloud service provider; receiving a second search result including an encrypted document stored in the cloud service provider having an encrypted text matching at least one of the encrypted keyword strings; decrypting the returned encrypted document; and providing the decrypted document in response to the search request.