Applications based on outsourcing computation require guarantees to the data owner that the desired computation has been performed correctly by the service provider. Methods based on proof systems can give the data owner the necessary assurance, but previous work does not give a sufficiently scalable and practical solution, requiring a lot of time, space or computational power for both parties. In this paper, we develop new proof protocols for verifying computations which are streaming in nature: the verifier (data owner) needs only a single pass over the input storing a logarithmic amount of information, and follows a simple protocol with a prover (service provider) that takes a logarithmic number of rounds. A dishonest prover fools the verifier with only polynomially small probability, while an honest prover’s answer is always accepted. We first observe that some existing constructions for interactive proof systems can be modified to work with streaming verifiers. The conseq...