Hi guys, I hope this question does not bother you since I am generally a newbie in the cryptography system.
I am exploring the field of Federated Learning and Multi-party FHE (MHE), but the question comes to my mind that in a real-world system, the key pairs must be managed by Key Service Management ( Google Cloud KMS, AWS KMS, etc.) So, do we actually need such advanced techniques (threshold FHE, proxy re-encryption) because, from my understanding, these techniques are applicable in scenarios where users hold their private keys?
I hope you guys can help me with this question.
Best regards,
Manh.
In the case of threshold FHE, no single user holds a private key. Each user holds a secret share of the private key. I suggest watching the following webinar to get familiar with how threshold FHE works: Homomorphic Encryption for OpenFHE Users – OpenFHE.org The webinar also talks about multi-key FHE.
Proxy re-encryption is a different protocol. The user holds its own private key and there is a mechanism to re-encrypt (using a public re-encryption key) an existing ciphertext (encrypted under a different key) using the key of the user who needs to decrypt the ciphertext. This is a delegation capability that is often used in publisher/subscriber systems. See Fast Proxy Re-Encryption for Publish/Subscribe Systems for more information.