Improve transaction proof documentation
Author: UkoeHBCreated Apr 5, 2023Updated Sep 16, 2026
Labelsenhancementdocumentation
Credit for this issue goes to the Cremers, Loss, Wagner team behind this paper.
Transaction proofs (check_tx_key(), InProofs/OutProofs) do not guarantee that funds associated with a proof are spendable. They could be permanently time locked, already spent, or burnt due to duplication of onetime addresses. The documentation around those proofs should be clarified:
- in the CLI commands
- in the CLI documentation
- in the Monero.how website
- wherever else they are documented...
It is also worth noting that a user who receives burnt funds may not be adequately notified/aware of it, since the wallet currently hides that information to a large extent.
Other recommendations:
- Add clearer UI in the (commandline/giu)wallet for these transactions. In our tests, this case looked extremely hidden. The amount magically is reduced, but the transaction(s) exists. Errors are logged but a normal user will have no clue as to what happened and why there might be a discrepancy between the amount in the proof and the amount visible in their wallet.
- Add documentation on how to better check proof-of-payments for spendability, or suggest (or enforce!) to only use them on subaddresses.
Source: monero-project/monero