I have a list of numbers. I will be calling a service(let's say accountant service) which is going to perform some operation on these list of numbers and will return me the final result number.

I don't want to pass my data in plain format. I want to encrypt numbers in such a way if service performs any arithmetic operation and return me the result, I will be able to decrypt it back with actual result.

  • $\begingroup$ Seems like a great usecase for chunked (block cipher) symmetric encryption to me $\endgroup$ – linuxdev2013 Dec 25 '17 at 17:44
  • $\begingroup$ Do you have a question? $\endgroup$ – Thomas M. DuBuisson Dec 26 '17 at 18:28

You are looking for a combination of homomorphic encryption and verifiable computation.

Homomorphic encryption plays a part in this, but it is possibly not the only tool that you need. Homomorphic encryption can preserve the confidentiality of your values, but it cannot ensure that the computation was performed as you specified. That is what verifiable computation does.

Depending on the nature of the operations that you need to perform, you may not require fully homomorphic encryption. If you only require the ability to add ciphertexts together, and you don't care about post-quantum resistance, then the Paillier cryptosystem is an option for you. It's not standardized to my knowledge, but it's older and has been used in other projects.

Otherwise, if you really want/need a standardized homomorphic encryption algorithm, you might opt to use one of the submissions that were recently submitted to NIST. These algorithms are not standardized yet, but they are on track to be, assuming that they are not broken before then. Many of them are based on lattice problems, which implies that may offer homomorphic encryption.

While verifiable computation doesn't have a standardized solution yet (that I am aware of), there has been work into implementing it: See Pinocchio and Pepper.

  • $\begingroup$ Verifiable computation does not provide confidentiality. $\endgroup$ – fkraiem Dec 26 '17 at 4:27
  • $\begingroup$ I don't think any Homomorphic encryption standard is available ? $\endgroup$ – sourav punoriyar Dec 26 '17 at 6:11
  • $\begingroup$ Linking to a PQ cipher and key exchange competition when talking about standardized HE is confusing. Sure, much math is shared (RLWE for example) between solutions of these two problems but the aim aren't always overlapping. $\endgroup$ – Thomas M. DuBuisson Dec 26 '17 at 18:31

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.