Entrusting Remote Software Executed in an Untrusted Computation Helper
Résumé
How to trust an application executed in a remote untrusted client? Indeed, in an untrusted environment, an attacker may tamper with the application code or the execution environment to alter the application behavior for its own purposes. This problem is traditionally addressed by checking the integrity of the application code at loading and during runtime. However, this line of protection is not sufficient when the client is used as a computation helper and is expected to return the result to a trusted server. An attacker may execute the application without altering its code but returns an invalid result. This paper proposes a new approach to deal with remote software execution in an untrusted client used as a computation helper. The proposed solution provides the integrity of the computation result returned to a secure server.