Probabilistic counting algorithms for data base applications
Journal of Computer and System Sciences
Private coins versus public coins in interactive proof systems
STOC '86 Proceedings of the eighteenth annual ACM symposium on Theory of computing
Arthur-Merlin games: a randomized proof system, and a hierarchy of complexity class
Journal of Computer and System Sciences - 17th Annual ACM Symposium in the Theory of Computing, May 6-8, 1985
A note on efficient zero-knowledge proofs and arguments (extended abstract)
STOC '92 Proceedings of the twenty-fourth annual ACM symposium on Theory of computing
Journal of the ACM (JACM)
Interactive proof systems and alternating time-space complexity
STACS '91 Selected papers of the 8th annual symposium on Theoretical aspects of computer science
Communication complexity
Probabilistic checking of proofs: a new characterization of NP
Journal of the ACM (JACM)
The space complexity of approximating the frequency moments
Journal of Computer and System Sciences
Fast Probabilistic Algorithms for Verification of Polynomial Identities
Journal of the ACM (JACM)
Secrecy, authentication, and public key systems.
Secrecy, authentication, and public key systems.
Short PCPs Verifiable in Polylogarithmic Time
CCC '05 Proceedings of the 20th Annual IEEE Conference on Computational Complexity
An improved data stream summary: the count-min sketch and its applications
Journal of Algorithms
Data streams: algorithms and applications
Foundations and Trends® in Theoretical Computer Science
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
Pors: proofs of retrievability for large files
Proceedings of the 14th ACM conference on Computer and communications security
Proof-infused streams: enabling authentication of sliding window queries on streams
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
Delegating computation: interactive proofs for muggles
STOC '08 Proceedings of the fortieth annual ACM symposium on Theory of computing
Computational Complexity: A Modern Approach
Computational Complexity: A Modern Approach
Authenticated indexing for outsourced spatial databases
The VLDB Journal — The International Journal on Very Large Data Bases
TAMC '09 Proceedings of the 6th Annual Conference on Theory and Applications of Models of Computation
Small synopses for group-by query verification on outsourced data streams
ACM Transactions on Database Systems (TODS)
ICALP '09 Proceedings of the 36th International Colloquium on Automata, Languages and Programming: Part I
Continuous authentication on relational streams
The VLDB Journal — The International Journal on Very Large Data Bases
Non-interactive verifiable computing: outsourcing computation to untrusted workers
CRYPTO'10 Proceedings of the 30th annual conference on Advances in cryptology
Improved delegation of computation using fully homomorphic encryption
CRYPTO'10 Proceedings of the 30th annual conference on Advances in cryptology
Toward practical and unconditional verification of remote computations
HotOS'13 Proceedings of the 13th USENIX conference on Hot topics in operating systems
Verifiable computation with massively parallel interactive proofs
HotCloud'12 Proceedings of the 4th USENIX conference on Hot Topics in Cloud Ccomputing
Streaming computations with a loquacious prover
Proceedings of the 4th conference on Innovations in Theoretical Computer Science
Succinct non-interactive arguments via linear interactive proofs
TCC'13 Proceedings of the 10th theory of cryptography conference on Theory of Cryptography
Lightweight authentication of linear algebraic queries on data streams
Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data
Hi-index | 0.00 |
When computation is outsourced, the data owner would like to be assured that the desired computation has been performed correctly by the service provider. In theory, proof systems can give the necessary assurance, but prior work is not sufficiently scalable or practical. In this paper, we develop new proof protocols for verifying computations which are streaming in nature: the verifier (data owner) needs only logarithmic space and a single pass over the input, and after observing the input follows a simple protocol with a prover (service provider) that takes logarithmic communication spread over a logarithmic number of rounds. These ensure that the computation is performed correctly: that the service provider has not made any errors or missed out some data. The guarantee is very strong: even if the service provider deliberately tries to cheat, there is only vanishingly small probability of doing so undetected, while a correct computation is always accepted. We first observe that some theoretical results can be modified to work with streaming verifiers, showing that there are efficient protocols for problems in the complexity classes NP and NC. Our main results then seek to bridge the gap between theory and practice by developing usable protocols for a variety of problems of central importance in streaming and database processing. All these problems require linear space in the traditional streaming model, and therefore our protocols demonstrate that adding a prover can exponentially reduce the effort needed by the verifier. Our experimental results show that our protocols are practical and scalable.