Question: Homomorphic encyrption can "read" the encrypted word?

191 views Asked by At

it is a question I have. I am not expert in this subject, so please, be kind on the answer.

I understood the homomorphic encryption process allow to read a message as if it has been decrypted, but it will do so without removing the protective layer that the encryption process placed on it.

Let's suppose the word "TESTE" is cryptographed, and a homomorphic encryption is done on that encrypted word.

My question is:

Homomorphic will understand the "meaning" of encrypted text? Homomorphic will know that the encrypted word is also "TESTE" ?

Thank you.

2

There are 2 answers

8
kelalaka On

I understood the homomorphic encryption process allow to read a message as if it has been decrypted.

No. Homomorphic encryption is public key encryption that allows someone to evaluate (technically circuit evaluation) on the encrypted data without accessing the data. The good side, the client can give the heavy process to the cloud without thinking that it's data is compromised as long as the scheme is not broken.

To understand the FHE, we can look at the textbook RSA, which has no padding. Textbook RSA enables multiplication that is if you multiply two the ciphertexts then decrypt you will get the multiplication of the plaintexts. So if you want to multiplication of your data on the cloud just send your data encrypted with RSA. RSA only multiplies but there is no other operation and this called partially homomorphic.

There are other public key cryptosystems that support only one operation, for example x-or. This can be used to verify fingerprints on the cloud without revealing the data to the cloud.

If two operations are performed then it is called Fully-Homomorphic and we can build an arbitrary circuit, in theory.

The main idea is semantically encrypting your data (input for the calculation), then send the circuit (the operation you want to be performed) and send to the cloud to calculate with your public key. The cloud calculates the circuit and returns back to you. Only, you can decrypt with your private the return to get the result.

The main point is the calculation is done without accessing the data. As long as the Cryptographic primitives are not broken, no one will access your data.

Note: The breakthrough of Gentry's seminal work is finding a novel way to deal with the noise which is doubles with multiplication.

0
Codo On

Let me give you a different example. I'm not sure the example can be implemented with today's systems. But it illustrates it anyway:

  • Party A has 10 numbers and encrypts them.
  • The encrypted numbers are given to party B.
  • Party B calculates the sum of the 10 numbers. The result is encrypted data.
  • Party A is given the encrypted result.
  • Party A decrypts the result.

The main feature is that party B does not need to decrypt the 10 numbers. Futhermore, the encryption is maintained throughout the entire sum calculation. Therefore, party B has neither knowledge of the input numbers nor of the calculated sum because all operations are carried out on the encrypted data.