Patent ID: 8626749

Claim:
A computer-implemented method of anonymizing a database and querying it comprising: (a) anonymizing a database on a server computer, (b) hosting said database on a server computer, (c) generating a query on a client computer, (d) encrypting the query on the client computer to form an encrypted query, (e) transmitting the encrypted query to the server computer, (f) operating on the encrypted query at the server computer to produce an encrypted result, (g) returning the encrypted result to the client computer, (h) post processing the encrypted result on the client computer, without decryption, to produce a post processed encrypted result, (i) decrypting the post processed encrypted result at the client computer to produce a decrypted result and presenting the decrypted result to the user; wherein anonymizing the database is accomplished by forming two or more groups within at least one table, wherein each group is associated with an anonymization key and wherein at least two of said two or more groups overlap.