From: Justus Ranvier <justusranvier@gmail.com>
To: bitcoin-development@lists.sourceforge.net
Subject: [Bitcoin-development] Framework for modular input selection policy for Bitcoin wallets
Date: Tue, 11 Feb 2014 00:05:25 -0600 [thread overview]
Message-ID: <52F9BDA5.8040601@gmail.com> (raw)
In-Reply-To: <52F94B89.8020603@silicon>
[-- Attachment #1.1: Type: text/plain, Size: 1489 bytes --]
One of the areas that isn't as well developed as it could be in terms of
wallet design is fine-grained control over input selection policy.
Coin control is great when a human is manually crafting transactions,
but that's not really a very scalable solution.
The attached image is a possible way to stack different independent
selection algorithms. If wallets implemented something like this, it
would be easy for other programs to implement new application-specific
algorithms that would not need to completely reinvent the wheel.
As an example, voting pools in Open-Transactions will implement cold
storage in a FIFO manner, meaning that UTXOs will be clustered into
groups which should be consumed in a specific sequence. Within that
constraint, however, they still want to minimize transaction size.
If wallets were designed to make selection policy modular, they'd only
need to implement their FIFO algorithm and stack it in before the
default algorithm. Surely this capability would be useful to other
projects as well.
It would also allow people who want to prioritize privacy over
transaction cost to easily modify the behavior of their clients and
would make it easier to incorporate new tx construction algorithms like
CoinJoin.
Link to the image in case attachment is stripped:
http://i.imgur.com/Fkkq7pI.png
--
Support online privacy by using email encryption whenever possible.
Learn how here: http://www.youtube.com/watch?v=bakOKJFtB-k
[-- Attachment #1.2: 0x1B438BF4.asc --]
[-- Type: application/pgp-keys, Size: 21504 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 538 bytes --]
parent reply other threads:[~2014-02-11 6:05 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <52F94B89.8020603@silicon>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52F9BDA5.8040601@gmail.com \
--to=justusranvier@gmail.com \
--cc=bitcoin-development@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox