Bitcoin Forum

Bitcoin => Bitcoin Discussion => Topic started by: rjk on July 15, 2012, 11:37:17 AM



Title: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: rjk on July 15, 2012, 11:37:17 AM
A while ago, I was discussing with someone about a coin mixing service idea, and since I never saw anything come of it, I decided to share.

Basically, the mixing service would take coins from anywhere, and would charge a fee between -1% and 3% (yes, negative) based on how clean and new the coins were. So if you as a miner could contribute brand new unspent coins, you would be paid up to 1%, and if you wanted to wash really old or dirty coins, you would be charged up to 3% based on the age and cleanliness of the coins.

What do you guys think of this idea, would it be feasible? It would of course make sense to run it exclusively over Tor.


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: Come-from-Beyond on July 15, 2012, 08:24:59 PM
R u looking for this - https://bitcointalk.org/index.php?topic=87387.0 ?


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: rjk on July 15, 2012, 09:53:03 PM
R u looking for this - https://bitcointalk.org/index.php?topic=87387.0 ?
No, although they are very close to what I am thinking of. The key part of my idea is the variable fees, with a rebate for brand new coins based on a selection algorithm.

I might add that this probably should have wallet functionality like torwallet, because that means it will be harder to correlate inputs and outputs based on size alone. This correlation could be done with a straight mixing service, even with randomized fees, but having wallet functionality means that customers will be more likely to have a large input and several small outputs, since they can use the wallet to pay people instead of having to launder all the coins at once.


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: unclemantis on July 16, 2012, 03:31:03 AM
R u looking for this - https://bitcointalk.org/index.php?topic=87387.0 ?
No, although they are very close to what I am thinking of. The key part of my idea is the variable fees, with a rebate for brand new coins based on a selection algorithm.

I might add that this probably should have wallet functionality like torwallet, because that means it will be harder to correlate inputs and outputs based on size alone. This correlation could be done with a straight mixing service, even with randomized fees, but having wallet functionality means that customers will be more likely to have a large input and several small outputs, since they can use the wallet to pay people instead of having to launder all the coins at once.

This is out of my league as a developer but I as a consumer I would be interested.


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: gweedo on July 16, 2012, 04:30:37 AM
This is out of my league as a developer but I as a consumer I would be interested.

LMAO 25 of web experience and a bitcoin mixer is out of your league LMAO

@rjk stupid question, why would the freshness of the coins make any different in a mixer? Are you solely going off the part that older coins can be mixed more cause of the low tx fees?


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: arklan on July 16, 2012, 07:00:59 AM
id happily admin/run such a service, but i don't have the tech know how to build it. dang it!

don't suppose i could mix stuff manually, eh? :D


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: Come-from-Beyond on July 16, 2012, 08:01:03 AM
id happily admin/run such a service, but i don't have the tech know how to build it. dang it!

Pay attention to https://en.bitcoin.it/wiki/Lazy_API
It could help...


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: unclemantis on July 16, 2012, 12:38:24 PM
This is out of my league as a developer but I as a consumer I would be interested.

LMAO 25 of web experience and a bitcoin mixer is out of your league LMAO

@rjk stupid question, why would the freshness of the coins make any different in a mixer? Are you solely going off the part that older coins can be mixed more cause of the low tx fees?

Oh will you stop that! I can CODE the friggin' thing, I just do not have in depth knowledge of what consists of a dirty coin and a clean coin.

Would miners need to be involved? Is taint invoked?

Want to team up?


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: unclemantis on July 16, 2012, 12:44:06 PM
gweedo I PMed you.  ;D


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: rjk on July 16, 2012, 01:24:13 PM
@rjk stupid question, why would the freshness of the coins make any different in a mixer? Are you solely going off the part that older coins can be mixed more cause of the low tx fees?
The idea is that those using the service will want newer and less-"tainted" coins in return, and the way they can get those is by convincing miners to get their dirty coins by paying them a percentage. I think many miners would happily receive "dirty" coins in exchange for their fresh ones, as long as they are being paid up to 1%.

In practice it would be a bit difficult because few pools pay with brand new coins. However, many of those pools will be paying fairly new coins with little history. With the upcoming coin control patches being implemented, you could also have a feature where you could enter an arbitrary bitcoin address and be told the fee up front before transferring coins. That way, you would be able to see whether you are going to be paid, or whether the mixing will cost you.

For example, Eligius and P2Pool coins would be paid the full 1% because they are brand new. All other pools' coins might be paid 0.8%, since it can be proven that they were part of a pool payout, but just aren't "brand new". On the flip side, coins that have been used a lot could be charged between 0.8% (minimum fee for non-pool and non-coinbase coins) and 2% for coins that have been used a lot. 2% to 3% would be for coins that others might consider stolen or tainted for some other reason, and the mixer would make its money off of the spread.

Perhaps even the user submitting extremely "dirty" coins could select the freshness of the coins that they want back, in exchange for a lower fee. For example, someone that has a few coins that would normally cost 3% could choose to pay the full fee and get some Eligius coins back, or pay a partial fee in exchange for some other very used coins that came from a different user.

I don't know whether there is a demand for any such service, but I would assume that the 1% payout would create a disproportionately large demand on the miner side. This would obviously be a problem if only those eligible for a payout are using the system, instead of both types of users.

Anyways, that's my idea and I can't create it, so it's out there in case someone else wants to make it. It would require extremely careful design in order to actually work as expected and not fail due to lack of use by both sides of users. Perhaps if a paying user does not show up, the users that expect to be paid will be told to wait, or will have their coins mixed with other new users at no fee instead of negative fee if they select that as an option.


Title: Re: [Idea] Mixing service with variable fee based on coin freshness <-- Build this!
Post by: rjk on July 16, 2012, 01:30:58 PM
I just want to make it clear that I have no abilities to actually spec or code such a thing; I'm just putting my idea out there for others to criticize and build if they want to. It's free for anyone to do anything with, I don't expect attribution or anything, but I can't help beyond posting my big ideas here.