How is the number of ring members signing a transaction selected? Is it selected randomly by the sender or is it defined by the Monero wallet?


Ring size is currently fixed to 11 (10 decoys).

It's defined at a protocol level, so no transaction will be accepted by the network from a wallet not sending transactions with ring size 11.

For reference, this was implemented in this commit.

Credit to @dEBRUYNE♦ and @user36303 for spurring me on to finding it in the code!

| improve this answer | |
  • 1
    Note that a static ring size of 11 is also enforced on the protocol level currently. Put differently, no other ring size value can be used. – dEBRUYNE Jan 4 '19 at 9:06
  • 1
    You sure? I followed the discussions on this and I thought it ended up as a minimum, not fixed, but wallets could still add higher. Briefly looked at the code and also couldn't find it fixed at the protocol level either, only wallet level – jtgrassie Jan 4 '19 at 14:46
  • Yes. I, alas, cannot find the relevant pull request either currently. – dEBRUYNE Jan 4 '19 at 16:56
  • Theres a couple for the wallets and min set globally here. So not fixed. – jtgrassie Jan 5 '19 at 0:29
  • It is fixed (modulo special cases with unmixable inputs). See check_tx_inputs. – user36303 Jan 5 '19 at 0:40

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.