Paper 2024/1260

zk-Promises: Making Zero-Knowledge Objects Accept the Call for Banning and Reputation

Maurice Shih, University of Maryland, College Park
Michael Rosenberg, University of Maryland, College Park
Hari Kailad, University of Maryland, College Park
Ian Miers, University of Maryland, College Park
Abstract

Privacy preserving systems often need to allow anonymity while requiring accountability. For anonymous clients, depending on application, this may mean banning/revoking their accounts, docking their reputation, or updating their state in some complex access control scheme. Frequently, these operations happen asynchronously when some violation, e.g., a forum post, is found well after the offending action occurred. Malicious clients, naturally, wish to evade this asynchronous negative feedback. Considering privacy-preserving analogues of modern access control and reputation schemes raises a more fundamental technical challenge with far broader applications: how do we allow multiple parties to interact with private state stored by an anonymous client while ensuring state integrity and supporting oblivious updates? We propose zk-promises, a framework which supports Turing-complete state machines with arbitrary asynchronous callbacks. In zk-promises, client state is stored in a zk-object. Updates to the zk-object, represented as a cryptographic commitment to the new, modified object, require a zkSNARK that ensures integrity and atomicity while providing confidentiality. Clients can modify and prove their state by calling valid methods (e.g, to show they are authorized to post) and can give callbacks to third parties (e.g., to later hold them accountable). Through careful protocol design, we ensure clients who advance their state-machine are forced to ingest callbacks that are called by a third party. zk-promises allows us to build a privacy-preserving account model. State that would normally be stored on a trusted server can be privately outsourced to the client while preserving the server's ability to update the account. To demonstrate the feasibility of our approach, we build an anonymous reputation system with better than state-of-the-art performance and features, supporting asynchronous reputation updates, banning, and reputation-dependent rate limiting to better protect against Sybil attacks.

Metadata
Available format(s)
PDF
Category
Applications
Publication info
Preprint.
Contact author(s)
maurices @ umd edu
micro @ umd edu
harikeshkailad @ gmail com
imiers @ umd edu
History
2024-08-12: last of 2 revisions
2024-08-08: received
See all versions
Short URL
https://ia.cr/2024/1260
License
Creative Commons Attribution-NonCommercial-NoDerivs
CC BY-NC-ND

BibTeX

@misc{cryptoeprint:2024/1260,
      author = {Maurice Shih and Michael Rosenberg and Hari Kailad and Ian Miers},
      title = {zk-Promises: Making Zero-Knowledge Objects Accept the Call for Banning and Reputation},
      howpublished = {Cryptology {ePrint} Archive, Paper 2024/1260},
      year = {2024},
      url = {https://eprint.iacr.org/2024/1260}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.