bitcoin-coin-selection

Port of Bitcoin core coin selection logic to Python


License
MIT
Install
pip install bitcoin-coin-selection==1.5.0

Documentation

bitcoin_coin_selection

Port of Bitcoin core coin selection logic to Python, prioritizing fidelity to the original and convenience.
Classes / functions were named and organized per the original C++ code as far as was practicable. Most comments are copied.

Installation

pip install bitcoin_coin_selection

Usage

select_coins is the main interface here. See the exmples folder for a step-by-step walkthrough.

Context

Bitcoin core coin selection logic:
https://github.com/bitcoin/bitcoin/blob/master/src/wallet/coinselection.cpp
https://github.com/bitcoin/bitcoin/blob/master/src/wallet/wallet.cpp

Erhardt's thesis on coin selection
https://murch.one/wp-content/uploads/2016/11/erhardt2016coinselection.pdf

Explanation of the "OutputGroup" type (privacy enhancement)
https://github.com/bitcoin/bitcoin/pull/12257