4

The title of the question is probably specific enough, but I'll give more color anyway.

Here's a quick timeline.

  1. I received output A a year ago.
  2. In the last year, output A has been a decoy in 3 transactions.
  3. Today, I spend output A; therefore the key image ensures the output can't be spent again.

Question: In the future, can output A be used as a decoy again?

Bonus question: Is there a limit to how many times an output can be a decoy in a ring signature?

5

Any output can be used as a "decoy" at any time after it matures, whether this is before or after it's been spent.

In the general case [1], the network cannot determine when an output is spent, and thus does not treat spent outputs differently from unspent ones. Indeed, if the network could determine whether any output was spent, it would mostly defeat the purpose of ring signatures.

There is no maximum number of times an output can be used as input to a ring signature.

[1] In some particular corner cases, such as spending with mixin 0, you can tell.

  • 1
    I think that there's also an edge case where the exact same ring with n participants has been used exactly n times. Then, you could assert that all of the ring participants have been spent. – JollyMort Jan 24 '17 at 11:32
  • There's more than just these cases, as if any subset of a ring has already been seen you can make deductions. eg if i make a ring size 2, with just you and me, but then you spend yours (with mixin 0), it's easy to determine that mine has been spent too -- there's a Monero research paper called about there 'chain reactions' and how to mitigate against them! – bekah Apr 12 '17 at 15:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.