HomePhabricator

Merge #12709: [wallet] shuffle sendmany recipients ordering

Description

Merge #12709: [wallet] shuffle sendmany recipients ordering

Summary:
6acb02d635 add release note for sendmany output shuffling (Gregory Sanders)
cf6ef3c139 shuffle sendmany recipients ordering to shuffle tx outputs (Gregory Sanders)

Pull request description:

Unless there is something important I'm missing, we're just possible leaking information by preserving whatever ordering json object ordering is giving us (no guarantees at all).

This is unneeded for `sendtoaddress` since there is only 1 or 2 outputs, and the change output is shuffled in.

This will not effect `*raw` behavior by design, since users generally want full control using those apis. Further PRs could add optional args to over-ride that behavior.

Alternative ideas would be to sort the outputs by some deterministic ordering. (this would require more refactoring since change outputs are created and handled by caller)

related: https://github.com/bitcoin/bitcoin/pull/12699

Tree-SHA512: afdd990dde6a4a9e7eef7bb2e3342a46d11900d7fe6e6e4eb0cc6b5deed89df989fa7931a4bdcbf49b7c2d7a13c90169af3a166466e5760948bacabe3490f572

Backport of Core PR12709
https://github.com/bitcoin/bitcoin/pull/12709/

Test Plan:

make check
test_runner.py

Reviewers: deadalnix, Fabien, jasonbcox, O1 Bitcoin ABC, #bitcoin_abc

Reviewed By: deadalnix, O1 Bitcoin ABC, #bitcoin_abc

Differential Revision: https://reviews.bitcoinabc.org/D3897

Details

Provenance
MarcoFalke <falke.marco@gmail.com>Authored on Mar 23 2018, 23:03
nakihitoCommitted on Aug 28 2019, 18:07
nakihitoPushed on Aug 28 2019, 18:35
Reviewer
Restricted Owners Package
Differential Revision
D3897: Merge #12709: [wallet] shuffle sendmany recipients ordering
Parents
rSTAGINGc11d7ea6613d: Increase timeout on avalanche test.
Branches
Unknown
Tags
Unknown