I think zkp is a good way to prove that the result of an operation is correct after the operation in fhEVM. However, the difficulty level seems to be very high. I see on your site that you are considering zkp because of the mention of “zkFHE”, but what about zkfhEVM?
Hi @hokosugi, we are indeed looking into how to mix ZK and FHE for blockchain use cases, including rollups and outsourcing heavy computations. Research can still improve efficiency here so stay tuned
There does not appear to be any functions or commands for generating client_key and server_key key pairs in the fhEVM library. Is the generate_keys command in TFHE-rs unnecessary for fmEVM? Or is it already generated and the client_key stored locally somewhere too?
Hello @hokosugi,
In the fhEVM, the keys have already been generated so there is no need to generate them again.
The client_key
(or private key) is distributed amongst the validators. Each validator also has a copy of the server_key
to be able to perform FHE operations. In addition, we store a public_key
on-chain that can be retrieved by users to encrypt their transactions inputs as you can see in this example.