# Proxy Reencryption: Make tranformation key public

**URL:** <https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947>\
**Category:** Misc\
**Tags:** questions\
**Created:** [March 20, 2025, 12:55pm UTC](https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947 "2025-03-20T12:55:40Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![bhavinmoriya](https://avatars.discourse-cdn.com/v4/letter/b/e68b1a/32.png) [@bhavinmoriya](https://openfhe.discourse.group/u/bhavinmoriya)\
**Post date:** [March 20, 2025, 12:55pm UTC](https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947/1 "2025-03-20T12:55:40Z")

</div>

Hi,

Does making transformation key (meaning reencryption key) public raises any risk of revealing the private key?

---

<div class="post-metadata">

**Author:** ![Caesar](https://yyz1.discourse-cdn.com/flex031/user_avatar/openfhe.discourse.group/caesar/32/63_2.png) [@Caesar](https://openfhe.discourse.group/u/Caesar)\
**Post date:** [March 21, 2025, 5:15pm UTC](https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947/2 "2025-03-21T17:15:37Z")

</div>

The re-encryption key is a public parameter by design in proxy re-encryption. It is used by the proxy - which is an untrusted actor in the system model - to transform a ciphertext decryptable by key s\_A to another ciphertext decryptable by s\_B.

Hence, the answer to your question is no. No risk at all assuming the PRE scheme is implemented properly.

---

<div class="post-metadata">

**Author:** ![bhavinmoriya](https://avatars.discourse-cdn.com/v4/letter/b/e68b1a/32.png) [@bhavinmoriya](https://openfhe.discourse.group/u/bhavinmoriya)\
**Post date:** [March 23, 2025, 3:29pm UTC](https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947/3 "2025-03-23T15:29:54Z")

</div>

Thanks very much for the information. I am curious to know what mathematical construction is used to create a reencryption key in the OpenFHE implementation of PRE. Do you have a reference of it by any chance?

---

<div class="post-metadata">

**Author:** ![andreea.alexandru](https://yyz1.discourse-cdn.com/flex031/user_avatar/openfhe.discourse.group/andreea.alexandru/32/378_2.png) [@andreea.alexandru](https://openfhe.discourse.group/u/andreea.alexandru)\
**Post date:** [March 24, 2025, 6:30pm UTC](https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947/4 "2025-03-24T18:30:47Z")

</div>

Here is the reference [https://eprint.iacr.org/2024/681.pdf](https://eprint.iacr.org/2024/681.pdf).

---

<div class="post-metadata">

**Author:** ![andreea.alexandru](https://yyz1.discourse-cdn.com/flex031/user_avatar/openfhe.discourse.group/andreea.alexandru/32/378_2.png) [@andreea.alexandru](https://openfhe.discourse.group/u/andreea.alexandru)\
**Post date:** [March 26, 2025, 8:05pm UTC](https://openfhe.discourse.group/t/proxy-reencryption-make-tranformation-key-public/1947/5 "2025-03-26T20:05:38Z")

</div>

@bhavinmoriya There might have been some misunderstanding regarding “public”: The re-encryption key can be known to the proxy party, which is given the ciphertext to re-encrypt. However, the re-encryption key should not be known to the owner of the secret key of the resulting ciphertext, because it can use them to extract information about the original secret key. See also the response [here](https://openfhe.discourse.group/t/is-there-a-reference-to-ckks-proxy-re-encryption-used-in-openfhe/930/7).
