LibraryPrivacy2018Design paperCorpus record
Bulletproofs: Short Proofs for Confidential Transactions and More
Bulletproofs. Benedikt Bünz, Jonathan Bootle, Dan Boneh, Andrew Poelstra, Pieter Wuille and Greg Maxwell.
Range proofs whose size grows logarithmically, with no trusted setup. They made confidential amounts practical to verify. They are not, by themselves, a private payment system.
Bulletproofs are short range proofs with no trusted setup. Size grows with the logarithm of the range's bit length, and several proofs can be aggregated. They do not hide who paid whom.
- Evidence
- Primary paper
- Re-measured
- No
- Assumptions
- 4
- Records linked
- 5
Code
Source, repository, and what is actually hosted
- ePrint 2017/1066https://eprint.iacr.org/2017/1066
- 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
The setup is the absence
Groth16 needs a ceremony per circuit. Bulletproofs use an inner-product argument that does not. Losing a trapdoor is not the failure mode. A bug in the argument still is.
Claim 02 · Paper model
Logarithmic size
A 64-bit range does not need a proof that lists every bit in the clear. The prover sends a short transcript. Verification does more work than a pairing check of a Groth16 proof.
Claim 03 · Paper model
Aggregation is the deployment reason
A transaction with many outputs can fold their range proofs. Monero's later adoption is about that saving. The proof system does not become a ring signature by being aggregated.
Claim 04 · Paper model
Statement, not brand
A Bulletproof proves the circuit you built, usually a range. It does not prove reserves, solvency, or a program unless someone encoded that statement and you check the encoding.
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 The setup is the absence
Observation
What the study says
Groth16 needs a ceremony per circuit. Bulletproofs use an inner-product argument that does not. Losing a trapdoor is not the failure mode. A bug in the argument still is.
Model
What has to hold
The discrete-log assumptions used by the inner-product argument hold in the chosen group.
Falsifier
What would retire it
Is there a trusted setup for this proof or not?
02 Logarithmic size
Observation
What the study says
A 64-bit range does not need a proof that lists every bit in the clear. The prover sends a short transcript. Verification does more work than a pairing check of a Groth16 proof.
Model
What has to hold
The commitment scheme the range is proved against is the one the ledger checks. A proof about a different commitment is irrelevant.
Falsifier
What would retire it
Is there a trusted setup for this proof or not?
03 Aggregation is the deployment reason
Observation
What the study says
A transaction with many outputs can fold their range proofs. Monero's later adoption is about that saving. The proof system does not become a ring signature by being aggregated.
Model
What has to hold
The commitment scheme the range is proved against is the one the ledger checks. A proof about a different commitment is irrelevant.
Falsifier
What would retire it
Are proofs aggregated, and across whose outputs?
04 Statement, not brand
Observation
What the study says
A Bulletproof proves the circuit you built, usually a range. It does not prove reserves, solvency, or a program unless someone encoded that statement and you check the encoding.
Model
What has to hold
The commitment scheme the range is proved against is the one the ledger checks. A proof about a different commitment is irrelevant.
Falsifier
What would retire it
What statement is encoded: a range, a circuit, or something broader?
03 Sequence
One action, as an operating tape
- 01The prover holds a committed value and wants to show it lies in a range without opening it.
- 02The constraint is written as an inner-product relation.
- 03The prover and the verifier, or a Fiat-Shamir transcript, run the inner-product argument.
- 04The verifier accepts or rejects a logarithmic-size proof.
- 05If several values are batched, one transcript covers the vector of them.
04 Load-bearing
The argument, and where a pitch drops it
No setup is not free verification
The cut
The paper spends prover and verifier time to avoid a ceremony and to shrink the bytes. A system that needs millions of verifications per second may still prefer a setup-based SNARK. That is an engineering choice the paper makes visible.
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
Aggregation changes verification scheduling. It does not change the trust model into a setup-free SNARK for arbitrary circuits. That is a different paper.
Aggregation changes who must be online
The cut
Batching proofs across outputs is a normal use. Batching across users introduces a coordination problem the cryptography does not solve.
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.
05 Register
What has to be true
Model · Not re-measured
The discrete-log assumptions used by the inner-product argument hold in the chosen group.
Model · Not re-measured
Fiat-Shamir, if used, is bound to the right transcript. A reusable challenge breaks soundness.
Cryptography · Not re-measured
The commitment scheme the range is proved against is the one the ledger checks. A proof about a different commitment is irrelevant.
Model · Not re-measured
Implementations do not reuse nonces. That failure mode sits outside the paper and inside every deployment.
06 Divergence
What happened after the paper
Monero switched its confidential amounts to Bulletproofs and later to a smaller variant. Other chains use the same argument inside larger transparent proofs. Halo then studied recursion over this family. The 2018 paper is the citation for setup-free logarithmic range proofs, not for a currency.
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
A confidential transaction needs a proof that a committed value sits in a range. Older proofs were large. Bulletproofs compress that proof, and can aggregate several ranges.
What the design proposes
How the mechanism is specified
- The prover convinces a verifier that a committed vector satisfies an inner-product relation, without sending the vector.
- Verification cost is higher than a SNARK of the same statement. The saving is size and the missing setup.
- The proof hides the amount. The surrounding transaction still decides whether the sender is hidden.
What this page does not treat as proven
- A Bulletproof does not prove a program, a solvency claim, or a reserve. It proves the statement that was encoded.
- Aggregation changes verification scheduling. It does not change the trust model into a setup-free SNARK for arbitrary circuits. That is a different paper.
- Later transparent SNARKs are not this construction. Do not swap the names.
Why the desk still reads it
Ask what statement is being proved, and whether there was a setup. Bulletproofs are the reference for the setup-free range proof, not a synonym for zero knowledge.
09 Lexicon
Terms, opened into the record
- Inner-product argument
- A short proof that two committed vectors have a claimed inner product, without revealing the vectors.
- Aggregation
- One proof covering many range statements, so the size does not grow in proportion to the count.
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.
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.
