  We present Private Data Objects (PDOs), a technology that enables mutually
untrusted parties to run smart contracts over private data. PDOs result from
the integration of a distributed ledger and Intel Secure Guard Extensions
(SGX). In particular, contracts run off-ledger in secure enclaves using Intel
SGX, which preserves data confidentiality, execution integrity and enforces
data access policies (as opposed to raw data access). A distributed ledger
verifies and records transactions produced by PDOs, in order to provide a
single authoritative instance of such objects. This allows contracting parties
to retrieve and check data related to contract and enclave instances, as well
as to serialize and commit contract state updates. The design and the
development of PDOs is an ongoing research effort, and open source code is
available and hosted by Hyperledger Labs [5, 7].
