Prior to April 2016, zero mixin inputs were allowed to be used. As described by paper (link at bottom), transactions with zero mixins once led to provably deducible transactions.
Does the current wallet software blackball these deducible transactions as they're (at best) blockchain bloat?

Further, is there a database of these that is readily available do download and add to our wallet software (and view to search for particular transactions as it could most definitely affect the security and privacy of some of the users involved)?

An Empirical Analysis of Traceability in the Monero Blockchain: Section 3

1 Answer 1


There is code to do this, but it requires the database to be created, and this is a fairly heavy process.

You can do so by running monero-blockchain-blackball --inputs ~/.bitmonero.lmdb (on Windows, replace that path with wherever the blockchain is). This can be run every now and again (there is an incremental mode patch on github which will make it a lot faster to be run periodically).

There is no publicly available blackball database at this time. If you use a third party's database, it might lie, and therefore cause you to select outputs which are known spent, rather than the opposite, so you should only use a database from a trustworthy source (possibly yourself). It is possible that the Monero core team will make such a database available for download in the future.

Note that the vast majority of the 0 mixin transactions used pre-ringct outputs, so current transactions will not use them, even if the blackball database is not set up.

  • Still several million transactions from the looks of it though. It would definitely be great to blacklist these tx by default for everyone imo. Also, the paper has a great resource for perusing the tx-set, monerolink.com
    – user1076
    Commented May 29, 2018 at 12:37
  • I think you didn't get it. Those outputs won't be used as rct tx fake outs in the first place.
    – user36303
    Commented May 29, 2018 at 14:36
  • I don't really understand the ringct implementation timeline and rules for older tx currently. It still should be a non-zero number though, yes?
    – user1076
    Commented May 29, 2018 at 21:18
  • Ring CT transactions do not use pre-ringct outputs as fake outs. That's just how it is. So they won't use any of those old outs that may or may not have been spent with mixin 0. They will use newer, rct, outputs (or coinbases from where rct started).
    – user36303
    Commented May 29, 2018 at 22:44
  • 1
    You are correct that "there was a non-zero number of tx which, though they had 2 mixin, were compromised (because the mixins used mixins of 0)". And if those deducible-spent outputs are pre-rct, they won't be used in rct txes.
    – user36303
    Commented May 30, 2018 at 9:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.