What is the best way to get the random mixins from the daemon to be used to sign a transaction? There was a daemon RPC call "get_random_rctouts.bin" but not anymore. What should I use instead?

1 Answer 1


You use the get_outs.bin RPC. You give it the indices of the outputs you want.

If you don't know which outputs you want, then you can't ask the daemon anymore. This RPC had three problems: (1) the daemon had control over the outputs (an obvious attack vector), (2) the wallet could ask particular setups which would cause the daemon to spend a LOT of time carrying these out (a DoS attack vector), (3) the algorithm the daemon implemented was old and picked outputs with less quality than the wallet already did. Thus, the call was removed.

Note that this is only needed if you go really low level. In normal usage, you'd use the wallet's transfer_split RPC which handles all this transparently.

  • Thx, I did call the get_outs RPC with random indices. Just had to keep track of the max global index.
    – Pamuk
    Oct 29, 2018 at 5:52
  • If you do that, be careful about which distribution you use. If you use an equiprobable distribution, your transactions will stand out a lot. The current distribution to use is a gamma with shape 19.28 and rate 1.61 (equivalent to scale 1/1.61).
    – user36303
    Oct 29, 2018 at 12:29
  • Thanks, I just selected the mixins from a range according to real output, have to change that...
    – Pamuk
    Oct 30, 2018 at 0:17

Your Answer

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

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