Toward practical and unconditional verification of remote computations

Workshop on Hot Topics in Operating Systems (HotOS) |

Published by USENIX - Advanced Computing Systems Association

This paper revisits a classic question: how can a machine
specify a computation to another one and then, without
executing the computation, check that the other machine
carried it out correctly? The applications of such a primitive
include cloud computing (a computationally limited
device offloads processing to the cloud [11] but does not
assume the cloud’s correctness [12]); volunteer computing
(some 30 projects use the BOINC [1] software platform
to leverage volunteers’ spare cycles, but some “volunteers”
return wrong answers [2]); and high-assurance
computing (a machine may be remotely deployed and
subject to physical tampering).