What order does Bitcoin core place the inputs it spends in? Is it random? Is it sorted by anything? What, if anything, can you tell about the originator of a transaction by the input ordering?
Asked
Active
Viewed 133 times
2
-
related: What is the coin selection algorithm? – Murch Aug 13 '15 at 10:26
1 Answers
5
The inputs are chosen by the function SelectCoins()
in CreateTransaction()
and then added one by one (without shuffling) to the transaction.
The order is defined by the coin selection (CWallet::SelectCoinsMinConf
) which does a random shuffle of the potential useful inputs and a stochastic approximation.
Mind also that Bitcoin-Core's coin selection could be improved and there are several issues and improve proposals ([1], [2], [3])

Murch
- 75,206
- 34
- 186
- 622

Jonas Schnelli
- 6,052
- 1
- 21
- 34