I have a general question concerning multiplication w/o relinearization, when using BFV, BGV or CKKS. My understanding is:
Let SK denote the secret key. If I have two ciphertexts C^{(1)} = (c^{(1)}_0, c^{(1)}_1) and C^{(2)} = (c^{(2)}_0, c^{(2)}_1) encrypting m^{(1)} and m^{(2)} respectively (that is, c^{(i)}_0 + c^{(i)}_1 \cdot SK = d \cdot m^{(i)} + e, where d is a factor which might equal 1 in case of BGV, and e is a small error), than homomorphic multiplication of C^{(0)} and C^{(1)} w/o relinearization yields a 3-component ciphertext C = (c_0, c_1, c_2) with c_0 + c_1 \cdot SK + c_2 \cdot SK^2 = d^2 \cdot m^{(1)} \cdot m^{(2)} + \text{some error}.
-
Looking on these equations, I think it should not be a problem to evaluate homomorphic additions on 3-component ciphertexts. Even mixing 2-component and 3-component ciphertext should work (by extending the 2-component ciphertext with an additional 0). Is this correct?
-
Maybe I can even do a subsequent multiplication, which would further blow up the ciphertext, but may be ok in principal as long as the error does not grow to much. Is this correct? Or might this be useless as the further blown up ciphertext could never be decrypted / relinearized anymore?
-
The most relevant question for my application in mind: Can I perform homomorphic rotations on a 3-component ciphertext? I have already experimented a bit and got wrong results, but I am not sure if this was due to the chosen parameters or if this is generally not possible.
Thank you very much in advance!