1. Solidus: Confidential Distributed Ledger Transactions via PVORAM 2017 Blockchains CCS Implementation ORAM
    Ethan Cecchetti, Fan Zhang, Yan Ji, Ahmed Kosba, Ari Juels, and Elaine Shi
    [View PDF on eprint.iacr.org]
    [Show BibTex Citation]

    @inproceedings{10.1145/3133956.3134010,
    author = {Cecchetti, Ethan and Zhang, Fan and Ji, Yan and Kosba, Ahmed and Juels, Ari and Shi, Elaine},
    title = {Solidus: Confidential Distributed Ledger Transactions via PVORM},
    year = {2017},
    isbn = {9781450349468},
    publisher = {Association for Computing Machinery},
    address = {New York, NY, USA},
    url = {https://doi.org/10.1145/3133956.3134010},
    doi = {10.1145/3133956.3134010},
    booktitle = {Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security},
    pages = {701–717},
    numpages = {17},
    keywords = {blockchain, oblivious ram, confidential transactions},
    location = {Dallas, Texas, USA},
    series = {CCS ’17}
    }

Blockchains and more general distributed ledgers are becoming increasingly popular as efficient, reliable, and persistent records of data and transactions. Unfortunately, they ensure reliability and correctness by making all data public, raising confidentiality concerns that eliminate many potential uses.

In this paper we present Solidus, a protocol for confidential transactions on public blockchains, such as those required for asset transfers with on-chain settlement. Solidus operates in a framework based on real-world financial institutions: a modest number of banks each maintain a large number of user accounts. Within this framework, Solidus hides both transaction values and the transaction graph (i.e., the identities of transacting entities) while maintaining the public verifiability that makes blockchains so appealing. To achieve strong confidentiality of this kind, we introduce the concept of a Publicly-Verifiable Oblivious RAM Machine (PVORM). We present a set of formal security definitions for both PVORM and Solidus and show that our constructions are secure. Finally, we implement Solidus and present a set of benchmarks indicating that the system is efficient in practice.

  1.