Verifying the correctness of remote executions

From wild implausibility to near practicality

Michael Walfish

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

How can we trust results computed by a third party, or the integrity of data stored by such a party? This is a classic question in systems security, and it is particularly relevant today, as much computation is now outsourced: it is performed by machines that are rented, remote, or both. Various solutions have been proposed that make assumptions about the class of computations, the failure modes of the performing computer, etc. However, deep results in theoretical computer science - interactive proofs (IPs) [3, 9, 10, 13, 19] and probabilistically checkable proofs (PCPs) [1, 2] (coupled with cryptographic commitments [11, 12] in the context of arguments [5]) - tell us that a fully general solution exists that makes no assumptions about the third party: the local computer can check the correctness of a remotely executed computation by inspecting a succinct proof returned by the third party. The rub is practicality: if implemented naively, the theory would be preposterously expensive (e.g., trillions of CPU-years or more to verify simple computations). Over the last several years, a number of projects have brought this theory to near-practicality in the context of implemented systems [4, 6-8, 14-18, 20-22]. The pace of progress has been rapid, and there have been many encouraging developments in this emerging area of proof-based verifiable computation. My talk will cover the high-level problem, the theory that solves the problem in principle, the projects that have reduced the theory to near-practicality and implemented it, and open questions for the area. My hope is to communicate the excitement surrounding all of the projects in the area.

Original languageEnglish (US)
Title of host publicationProceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013
PublisherAssociation for Computing Machinery
ISBN (Print)9781450324571
DOIs
StatePublished - 2013
Event9th Workshop on Hot Topics in Dependable Systems, HotDep 2013 - Farmington, PA, United States
Duration: Nov 3 2013Nov 3 2013

Other

Other9th Workshop on Hot Topics in Dependable Systems, HotDep 2013
CountryUnited States
CityFarmington, PA
Period11/3/1311/3/13

Fingerprint

Security systems
Computer science
Failure modes
Program processors

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Hardware and Architecture

Cite this

Walfish, M. (2013). Verifying the correctness of remote executions: From wild implausibility to near practicality. In Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013 Association for Computing Machinery. https://doi.org/10.1145/2524224.2524225

Verifying the correctness of remote executions : From wild implausibility to near practicality. / Walfish, Michael.

Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013. Association for Computing Machinery, 2013.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Walfish, M 2013, Verifying the correctness of remote executions: From wild implausibility to near practicality. in Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013. Association for Computing Machinery, 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013, Farmington, PA, United States, 11/3/13. https://doi.org/10.1145/2524224.2524225
Walfish M. Verifying the correctness of remote executions: From wild implausibility to near practicality. In Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013. Association for Computing Machinery. 2013 https://doi.org/10.1145/2524224.2524225
Walfish, Michael. / Verifying the correctness of remote executions : From wild implausibility to near practicality. Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013. Association for Computing Machinery, 2013.
@inproceedings{873ba5119a4643d1a92cb9da19b848f8,
title = "Verifying the correctness of remote executions: From wild implausibility to near practicality",
abstract = "How can we trust results computed by a third party, or the integrity of data stored by such a party? This is a classic question in systems security, and it is particularly relevant today, as much computation is now outsourced: it is performed by machines that are rented, remote, or both. Various solutions have been proposed that make assumptions about the class of computations, the failure modes of the performing computer, etc. However, deep results in theoretical computer science - interactive proofs (IPs) [3, 9, 10, 13, 19] and probabilistically checkable proofs (PCPs) [1, 2] (coupled with cryptographic commitments [11, 12] in the context of arguments [5]) - tell us that a fully general solution exists that makes no assumptions about the third party: the local computer can check the correctness of a remotely executed computation by inspecting a succinct proof returned by the third party. The rub is practicality: if implemented naively, the theory would be preposterously expensive (e.g., trillions of CPU-years or more to verify simple computations). Over the last several years, a number of projects have brought this theory to near-practicality in the context of implemented systems [4, 6-8, 14-18, 20-22]. The pace of progress has been rapid, and there have been many encouraging developments in this emerging area of proof-based verifiable computation. My talk will cover the high-level problem, the theory that solves the problem in principle, the projects that have reduced the theory to near-practicality and implemented it, and open questions for the area. My hope is to communicate the excitement surrounding all of the projects in the area.",
author = "Michael Walfish",
year = "2013",
doi = "10.1145/2524224.2524225",
language = "English (US)",
isbn = "9781450324571",
booktitle = "Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013",
publisher = "Association for Computing Machinery",

}

TY - GEN

T1 - Verifying the correctness of remote executions

T2 - From wild implausibility to near practicality

AU - Walfish, Michael

PY - 2013

Y1 - 2013

N2 - How can we trust results computed by a third party, or the integrity of data stored by such a party? This is a classic question in systems security, and it is particularly relevant today, as much computation is now outsourced: it is performed by machines that are rented, remote, or both. Various solutions have been proposed that make assumptions about the class of computations, the failure modes of the performing computer, etc. However, deep results in theoretical computer science - interactive proofs (IPs) [3, 9, 10, 13, 19] and probabilistically checkable proofs (PCPs) [1, 2] (coupled with cryptographic commitments [11, 12] in the context of arguments [5]) - tell us that a fully general solution exists that makes no assumptions about the third party: the local computer can check the correctness of a remotely executed computation by inspecting a succinct proof returned by the third party. The rub is practicality: if implemented naively, the theory would be preposterously expensive (e.g., trillions of CPU-years or more to verify simple computations). Over the last several years, a number of projects have brought this theory to near-practicality in the context of implemented systems [4, 6-8, 14-18, 20-22]. The pace of progress has been rapid, and there have been many encouraging developments in this emerging area of proof-based verifiable computation. My talk will cover the high-level problem, the theory that solves the problem in principle, the projects that have reduced the theory to near-practicality and implemented it, and open questions for the area. My hope is to communicate the excitement surrounding all of the projects in the area.

AB - How can we trust results computed by a third party, or the integrity of data stored by such a party? This is a classic question in systems security, and it is particularly relevant today, as much computation is now outsourced: it is performed by machines that are rented, remote, or both. Various solutions have been proposed that make assumptions about the class of computations, the failure modes of the performing computer, etc. However, deep results in theoretical computer science - interactive proofs (IPs) [3, 9, 10, 13, 19] and probabilistically checkable proofs (PCPs) [1, 2] (coupled with cryptographic commitments [11, 12] in the context of arguments [5]) - tell us that a fully general solution exists that makes no assumptions about the third party: the local computer can check the correctness of a remotely executed computation by inspecting a succinct proof returned by the third party. The rub is practicality: if implemented naively, the theory would be preposterously expensive (e.g., trillions of CPU-years or more to verify simple computations). Over the last several years, a number of projects have brought this theory to near-practicality in the context of implemented systems [4, 6-8, 14-18, 20-22]. The pace of progress has been rapid, and there have been many encouraging developments in this emerging area of proof-based verifiable computation. My talk will cover the high-level problem, the theory that solves the problem in principle, the projects that have reduced the theory to near-practicality and implemented it, and open questions for the area. My hope is to communicate the excitement surrounding all of the projects in the area.

UR - http://www.scopus.com/inward/record.url?scp=84897368836&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84897368836&partnerID=8YFLogxK

U2 - 10.1145/2524224.2524225

DO - 10.1145/2524224.2524225

M3 - Conference contribution

SN - 9781450324571

BT - Proceedings of the 9th Workshop on Hot Topics in Dependable Systems, HotDep 2013

PB - Association for Computing Machinery

ER -