We design, implement, and evaluate ZEXE, a ledger-based system where users can execute offline computations and subsequently produce transactions, attesting to the correctness of these computations, that satisfy two main properties. First, transactions *hide all information* about the offline computations. Second, transactions can be *validated in constant time* by anyone, regardless of the offline computation.
The core of ZEXE is a construction for a new cryptographic primitive that we introduce, *decentralized private computation* (DPC) schemes. In order to achieve an efficient implementation of our construction, we leverage tools in the area of cryptographic proofs, including succinct zero knowledge proofs and recursive proof composition. Overall, transactions in ZEXE are 968 bytes regardless of the offline computation, and generating them takes less than a minute plus a time that grows with the offline computation.
We demonstrate how to use ZEXE to realize privacy-preserving analogues of popular applications: private decentralized exchanges for user-defined fungible assets and regulation-friendly private stablecoins.
Category / Keywords: cryptographic protocols / decentralized computation; zero knowledge proofs; succinct arguments Original Publication (with major differences): IEEE S&P 2020 Date: received 8 Oct 2018, last revised 30 Mar 2021 Contact author: alexch at berkeley edu Available format(s): PDF | BibTeX Citation Note: The revised version includes a new section on applications, and a note about a "denial-of-funds" attack on the private DEX application. Version: 20210330:204919 (All versions of this report) Short URL: ia.cr/2018/962