I know that with ElGamal we can re-cipher and get a second ciphertext equal to the first.

Is it possible with Paillier too?

When saying "re-cipher", I mean "A sends me a message, that is encrypted with my public key, I somehow modify the ciphertext, so that it is now encrypted for C without actually having simply decrypted and encrypted".

  • $\begingroup$ Don't you just choose a random $0 < r < n$ and compute $c \cdot r^n \mod n^2$? $\endgroup$ – ogogmad May 6 '18 at 14:38
  • $\begingroup$ Sorry, @ogogmad. Could you explain it better? I'm a newbie and I don't understand what you're saying... $\endgroup$ – Esperanza Zamora May 7 '18 at 15:41
  • $\begingroup$ The Paillier cipher has two important properties A) it is asymmetric, that is encryption of a known plaintext requires only public information (the public key). B) it is homomorphic, that is (within some conditions) a ciphertext for the sum of two unknown plaintexts can be deduced from the ciphertexts for the two plaintexts, using only public information. Is it acceptable that the re-encryption is symmetric (that is can only be performed with a secret key shared between the one doing and undoing the encryption)? And what (if any) must remain of the homomorphic property after re-encryption? $\endgroup$ – fgrieu May 7 '18 at 15:54
  • $\begingroup$ Are you looking for proxy re-encryption or something else? You seem to be looking for something slightly different since it appears you want to still be able to decrypt the message. Please correct me if I am wrong. $\endgroup$ – mikeazo May 8 '18 at 12:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.