<blockquote>
<p>Are there any ways such an input can really useful?</p>
</blockquote>
<p>It's not a question of usefulness, but necessity.</p>
<p>It is legal to spend such outputs in the Bitcoin consensus rules. If these outputs were not added to the chainstate, Bitcoin Core would reject such spends, violating the rules.</p>

CC BY-SA 4.0
2023-03-03T21:48:27.390Z
2023-03-03T21:48:27.390Z
Pieter Wuille
<p>They can be added as an input to a transaction, but what is the benefit of that? Isn't it the same as adding any random data to the transaction and pay the fee? You must know the key(s) to sign, and that may be useful to someone in some way, but does that justify the chainstate bloat? Are there any ways such an input can really be useful?</p>

<bitcoin-core><transactions><utxo-set>
Why zero amount transaction outputs are kept in Bitcoin Core chainstate database?
Andrey Dzhukov
# Why zero amount transaction outputs are kept in Bitcoin Core chainstate database?

(Asked by: username_0 on 2023-03-03)

They can be added as an input to a transaction, but what is the benefit of that? Isn't it the same as adding any random data to the transaction and pay the fee? You must know the key(s) to sign, and that may be useful to someone in some way, but does that justify the chainstate bloat? Are there any ways such an input can really be useful?

**Tags:** bitcoin-core, transactions, utxo-set


---

## 1 answers

### Answer by username_1 on 2023-03-03. Score: 4 | Accepted answer

> Are there any ways such an input can really useful?

It's not a question of usefulness, but necessity.

It is legal to spend such outputs in the Bitcoin consensus rules. If these outputs were not added to the chainstate, Bitcoin Core would reject such spends, violating the rules.


---

