I am interested in doing a data mining website. Data in DB is really sensitive.
I would like to find a way to encrypt data in DB and to prove to my clients that even me, I can't read data.
The problem is that I would be able to "batch" rapports during night on the server side, and my software must be able to read data in clear.
Do you have an idea ?
As mentioned by @vy32 Homomorphic Encryption provides the theoretical way to do this, but it is not practical today.
How about requesting anonymized rather than encrypted data?
For example, you don't need customer names or national IDs to tell them apart--anonymous IDs would do. Another example: Some data values can be hashed, so that you can tell different entities apart but not what they are. Number values could be given as an order, so that you know for every pair which is greater, rather than precise amounts. Fields that don't matter to you, like personal names in most applications, can simply be omitted.
There is an entire body of work devoted to anonymization, and another body of work devoted to de-anonymization of anonymized data sets, but you can get a long way with some simple transformations.