Verifiable Computing Using Computation Fingerprints Within FHE
This addresses the problem of ensuring computational integrity in privacy-preserving systems for applications like secure outsourcing, though it appears incremental as it builds on existing FHE techniques with a verification twist.
The paper tackles the problem of verifying computations performed on encrypted data using Fully Homomorphic Encryption (FHE) without significant overhead, by using part of the variable length for verification (computation fingerprints). The result is a method that supports encrypted additions and multiplications, with proofs showing that servers can return consistent wrong results in certain granularity cases.
We suggest using Fully Homomorphic Encryption (FHE) to be used, not only to keep the privacy of information but also, to verify computations with no additional significant overhead, using only part of the variables length for verification. This method supports the addition of encrypted values as well as multiplication of encrypted values by the addition of their logarithmic representations and is based on a separation between hardware functionalities. The computer/server performs blackbox additions and is based on the separation of server/device/hardware, such as the enclave, that may deal with additions of logarithmic values and exponentiation. The main idea is to restrict the computer operations and to use part of the variable for computation verification (computation fingerprints) and the other for the actual calculation. The verification part holds the FHE value, of which the calculated result is known (either due to computing locally once or from previous verified computations) and will be checked against the returned FHE value. We prove that a server with bit computation granularity can return consistent encrypted wrong results even when the public key is not provided. For the case of computer word granularity the verification and the actual calculation parts are separated, the verification part (the consecutive bits from the LSB to the MSB of the variables) is fixed across all input vectors. We also consider the case of Single Instruction Multiple Data (SIMD) where the computation fingerprints index in the input vectors is fixed across all vectors.