LibraryPrivacy2020Design paperCorpus record
Zexe: Enabling Decentralized Private Computation
Zexe. Sean Bowe, Alessandro Chiesa, Matthew Green, Ian Miers, Pratyush Mishra and Howard Wu.
A model for private computation over records. Each record has a birth predicate and a death predicate. A transaction proves that some records died and others were born, without showing which, or showing the data.
Zexe lets someone prove that private records were consumed and created according to their predicates, without showing the records or which ones they were. The computation happens off-chain. The ledger sees a proof.
- Evidence
- Primary paper
- Re-measured
- No
- Assumptions
- 4
- Records linked
- 1
Code
Source, repository, and what is actually hosted
- ePrint 2018/962https://eprint.iacr.org/2018/962
- The source URL is not a GitHub repository. No code remote is invented.
- Full text is not mirrored. Public availability is not a licence to copy the file onto this site.
- Add to a reading list
01 Claim ledger
What the paper is allowed to say
Each row is a sentence already in the study. The status is the same on every row: a model claim, not a live measurement.
Claim 01 · Paper model
Records, not accounts
The state is a set of committed records. Spending is the death of some records and the birth of others. There is no public account balance to read.
Claim 02 · Paper model
Two predicates
A death predicate says when a record may be consumed. A birth predicate says when a new record may appear. Applications are written as those rules, not as arbitrary on-chain bytecode in the paper's model.
Claim 03 · Paper model
Offline proving
The user does the heavy work and posts a succinct proof. The chain verifies the proof and the nullifiers that stop a record being killed twice.
Claim 04 · Paper model
Zerocash is the payment special case
A simple transfer is a Zexe program. The paper's ambition is every state transition that can be written as record predicates, which includes trades and votes, and also includes bugs in those predicates.
02 Three cuts
Observation, model, falsifier
A desk does not stop at the summary. Each claim is cut three ways, using only this study's own assumptions and checks. Nothing here is a new figure.
01 Records, not accounts
Observation
What the study says
The state is a set of committed records. Spending is the death of some records and the birth of others. There is no public account balance to read.
Model
What has to hold
Nullifiers are deterministic functions of the record secret, so a double death collides and is rejected.
Falsifier
What would retire it
What is the birth predicate, and what is the death predicate?
02 Two predicates
Observation
What the study says
A death predicate says when a record may be consumed. A birth predicate says when a new record may appear. Applications are written as those rules, not as arbitrary on-chain bytecode in the paper's model.
Model
What has to hold
Nullifiers are deterministic functions of the record secret, so a double death collides and is rejected.
Falsifier
What would retire it
What is the birth predicate, and what is the death predicate?
03 Offline proving
Observation
What the study says
The user does the heavy work and posts a succinct proof. The chain verifies the proof and the nullifiers that stop a record being killed twice.
Model
What has to hold
Nullifiers are deterministic functions of the record secret, so a double death collides and is rejected.
Falsifier
What would retire it
Are nullifiers unique per record, and where are they stored?
04 Zerocash is the payment special case
Observation
What the study says
A simple transfer is a Zexe program. The paper's ambition is every state transition that can be written as record predicates, which includes trades and votes, and also includes bugs in those predicates.
Model
What has to hold
Commitments hide the record data. A commitment that includes a public memo may leak it.
Falsifier
What would retire it
Are nullifiers unique per record, and where are they stored?
03 Sequence
One action, as an operating tape
- 01A user holds secrets that open one or more records committed on the ledger.
- 02They compute the new records off-chain, satisfying birth and death predicates.
- 03They publish nullifiers for the consumed records and commitments for the new ones, plus a proof.
- 04The ledger rejects a nullifier it has seen before, and rejects a proof that does not verify.
- 05Observers learn that some valid transition happened, not which records, and not the data inside them.
04 Load-bearing
The argument, and where a pitch drops it
The predicates are the program
The cut
Privacy does not stop a bad rule. If the death predicate allows a record to be consumed without conserving value, the proof will hide the theft and the ledger will accept it. Review moves to the predicate, which users cannot watch execute in the clear.
Why it carries weight
If this cut is skipped, the paper's name is being used without the mechanism that makes the name mean anything.
Where it is dropped
A later client, parameter or reward formula is a different object from this paragraph.
Counterparty privacy is not observer privacy
The cut
Someone who already knows the secret, because they were the other side of the trade, is not blinded by the proof. The paper hides state from the public ledger. It does not hide a deal from its parties.
Why it carries weight
If this cut is skipped, the paper's name is being used without the mechanism that makes the name mean anything.
Where it is dropped
Aleo and other later systems are implementations, with their own curves, fees, and failures.
05 Register
What has to be true
Cryptography · Not re-measured
The proof system is sound for the predicate circuit. A broken SNARK breaks every application at once.
Model · Not re-measured
Nullifiers are deterministic functions of the record secret, so a double death collides and is rejected.
Data · Not re-measured
Commitments hide the record data. A commitment that includes a public memo may leak it.
Cryptography · Not re-measured
Users can actually produce the proofs on their own hardware, or the 'offline' step quietly becomes a trusted prover.
06 Divergence
What happened after the paper
Aleo and other private-computation projects cite Zexe as the model and then change the proof system, the record format, and the fees. The 2018 paper remains the right picture of birth and death predicates. It is not a description of any of those networks' live circuits.
A later client, parameter set, or reward formula is a different object. Cite this paper for the mechanism. Cite a primary release for the network. This desk has not re-run the proof.
07 Pre-mortem
What to check before you use the idea
- 0 of 4 marked on this browser. A mark is a reading note, not a pass, a rating, or a recommendation.
08 Anatomy
The paper, in the order a builder needs
The problem it names
Zerocash hides payments of one asset. Zexe asks for the same offline-proof pattern when the state transition is a program: a trade, a vote, a custom asset.
What the design proposes
- Records sit committed on a ledger.
- A transaction proves knowledge of records that satisfy the predicates, and of a newly created set.
- The heavy computation happens off-chain. The chain checks a proof.
How the mechanism is specified
- Birth predicates constrain creation. Death predicates constrain consumption. That split is the programming model.
- Privacy is over the data and the which-record relation. The fact that a proof was posted is public.
- The paper's efficiency depends on the proof system underneath. The model and the SNARK are separable.
What this page does not treat as proven
- Aleo and other later systems are implementations, with their own curves, fees, and failures.
- Predicates are programs. A private bug is still a bug.
- This does not hide activity from an observer who learns the secret by being a counterparty.
Why the desk still reads it
If a team says private computation, ask whether the chain sees inputs or only a proof, and what the birth and death rules actually allow. Zexe is the template for that question.
09 Lexicon
Terms, opened into the record
- Record
- A committed piece of state with rules for how it may be created and consumed.
- Nullifier
- A public marker that a record has been consumed, which does not reveal which record.
10 Repository
Every linked record on this page
Underlined words open a page that already exists: a concept, a protocol profile, a failure record, or another paper. If a word is not underlined, this desk does not have a record for it.
Papers
This is Blockchain Lab's reading of a public design paper. It is not the paper, not a copy of it, and not an offer of tokens, equity, custody or a partnership. Later network behaviour can diverge from the text. Nothing here is investment, legal or technical advice.
Research status: Design paper. Last reviewed: 1 October 2026. This is a reading of a public paper, not investment, legal or security advice.
