A client wants to train an algorithm. A data provider encrypts its data and sends it to the client. The client operates on it and sends the result back to the data provider for decryption. Once decrypted,the data provider sends it to the client.

For this I am working with an asymmetric algorithm, public key, with fully homomorphic property: BFV.

I was wondering if there is any way for the client to verify if the decryption is performed correctly, since the cryptosystem has its share of randomness.

New contributor
Leire is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
  • $\begingroup$ HMAC and some additional data on plaintext? $\endgroup$ – kelalaka Apr 7 at 11:18
  • 1
    $\begingroup$ @kelalaka The client would never receive the plaintext; the data provider seems to encrypt the data. Leire, generally the service is provided to the client, not the other way around. $\endgroup$ – Maarten Bodewes Apr 7 at 13:31
  • $\begingroup$ @MaartenBodewes I didn't explain well earlier. The client is the one who wants to get the plaintext, but in order not to have to rely on the provider, I was wondering if the client has any way to verify that the decryption has been done correctly? $\endgroup$ – Leire Apr 8 at 9:07

Your Answer

Leire is a new contributor. Be nice, and check out our Code of Conduct.

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.