# Maintaining validity of ZKP throughout re-randomization of homomorphic ciphertext without linkability to previous ciphertext

Question: How is it possible to adapt a ZKP for a homomorphic ciphertext to still be valid after said ciphertext has been re-randomized?

Context: In a lot of e-voting systems homomorphic encryption is used to tally the individual votes preserving the privacy of the individual voters as only the total tally is revealed. Each voter must provide valid ZKP's proving that their vote is correctly formed and one of the possible values.

A way to achieve privacy is to re-randomize the ciphertext as well as the corresponding ZKP. This seems to be possible using Groth-Sahai proofs though I do not understand how as the ZKP somehow has to be bound to the ciphertext.

We can focus on a concrete example to understand why it's possible: in the "SXDH" setting for example (page 24); Let suppose we have a commit $$\vec{c_1}$$ for a vector of elements of $$G_1$$ and a commit $$\vec{c_2}$$ for a vector of elements of $$G_2$$. And a proof $$(\vec \pi, \vec \theta)$$
You can change randomize the commitment $$c_2$$ (by adding $$R'\vec{u}$$ to $$\vec{c}$$ for example), but if you do this the proof will be no more valid.
Then you have to add also the corresponding randomness to the proof, here it means you have to add to $$\vec\pi$$ $$R'\Gamma c_2$$.