Paper 2021/1678

Zero-Knowledge for Homomorphic Key-Value Commitments with Applications to Privacy-Preserving Ledgers

Matteo Campanelli, Felix Engelmann, and Claudio Orlandi


Commitments to key-value maps (or, authenticated dictionaries) are an important building block in cryptographic applications, including cryptocurrencies and distributed file systems. In this work we study short commitments to key-value maps with two additional properties: double-hiding (both keys and values should be hidden) and homomorphism (we should be able to combine two commitments to obtain one that is the ``sum'' of their key-value openings). Furthermore, we require these commitments to be short and to support efficient transparent zero-knowledge arguments (i.e., without a trusted setup). As our main contribution, we show how to construct commitments with the properties above as well as efficient zero-knowledge arguments over them. We additionally discuss a range of practical optimizations that can be carried out depending on the application domain. Finally, we formally describe a specific application of commitments to key-value maps to scalable anonymous ledgers. We show how to extend QuisQuis (Fauzi et al., ASIACRYPT 2019). This results in an efficient, confidential multi-type system with a state whose size is independent of the number of transactions.

Note: Discusses experimental evaluation; editorial changes.

Available format(s)
Public-key cryptography
Publication info
Preprint. MINOR revision.
key-value commitmentshomorphiczero-knowledgeprivate ledgers
Contact author(s)
matteo campanelli @ gmail com
matteo @ protocol ai
orlandi @ cs au dk
fe-research @ nlogn org
2022-05-02: last of 4 revisions
2021-12-21: received
See all versions
Short URL
Creative Commons Attribution


      author = {Matteo Campanelli and Felix Engelmann and Claudio Orlandi},
      title = {Zero-Knowledge for Homomorphic Key-Value Commitments with Applications to Privacy-Preserving Ledgers},
      howpublished = {Cryptology ePrint Archive, Paper 2021/1678},
      year = {2021},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.