I am prototyping a scheme that allows multiple clients to perform the federated learning strategy, where there is an server takes the responsibility of taking care the aggregation of local updates. The homomorphic encryption can help us to do that by providing the encryption at local clients & homomorphic operations on the server. However, the clients need to have the same private keys (at least in my design).
I am thinking of a strategy like using a key exchange (like Burmeister-Desmedt Key Exchange) can work on the scenario. After the key exchange, clients can have the same secret values (in form of integer). From this integer, I am looking for implementation of a key deriviation function that can convert this same secret number into CKKS key.