Bitcoin Forum
April 24, 2024, 11:26:32 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Announcing: BitLaundry -- decorrelated payment service  (Read 13520 times)
vess (OP)
Full Member
***
Offline Offline

Activity: 141
Merit: 100



View Profile WWW
September 01, 2010, 05:52:25 AM
 #1

Hi all,

I got interested in the idea of decorrelating senders and receivers of payments recently, so I created bitlaundry: https://bitlaundry.appspot.com/

It's in open beta right now, and works well (I'm currently laundering some bitcoins myself). I'm interested in all feedback and thoughts.

This is a pay service, it's priced at roughly 0.5% of the transaction. Eventually it will have a minimum 1BTC price for laundering, but right now while it's being tested, the minimum is 0.02.

From the FAQ as to why it exists:

   1. Imagine that Alice wishes to send BitCoins to Bob.
   2. Bob, sadly, is not well liked. Alice would rather not have anyone know that she sent Bob BitCoins.
   3. So, Alice puts Bob's address in the form at BitLaundry.
   4. Alice gets a one-time-use address from BitLaundry.
   5. Alice sends the money to that address.
   6. BitLaundry sends money out to recipients every 30 minutes.
   7. (But, it doesn't send out Alice's money immediately, that might be suspicious..)
   8. So, a random number of 30 minute segments later, BitLaundry sends the money out to Bob.
   9. BitLaundry then deletes the database link between the one-time-use address and Bob.
  10. Alice has sent money to BitLaundry, but people do this all the time. She's one of many.
  11. BitLaundry has sent money to Bob, but BitLaundry has sent money out to a whole bunch of other people as well.
  12. Alice and Bob are much less linked than they would have been otherwise.

There are also obvious benefits for Russian botnet owners, and possibly others. Let me know your thoughts!


I'm the CEO of CoinLab (www.coinlab.com) and the Executive Director of the Bitcoin Foundation, I will identify if I'm speaking for myself or one of the organizations when I post from this account.
1713957992
Hero Member
*
Offline Offline

Posts: 1713957992

View Profile Personal Message (Offline)

Ignore
1713957992
Reply with quote  #2

1713957992
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713957992
Hero Member
*
Offline Offline

Posts: 1713957992

View Profile Personal Message (Offline)

Ignore
1713957992
Reply with quote  #2

1713957992
Report to moderator
1713957992
Hero Member
*
Offline Offline

Posts: 1713957992

View Profile Personal Message (Offline)

Ignore
1713957992
Reply with quote  #2

1713957992
Report to moderator
mizerydearia
Hero Member
*****
Offline Offline

Activity: 574
Merit: 507



View Profile
September 01, 2010, 08:07:07 AM
 #2

Quote
0.5% of the total + 0.01% per recipient (minimum 1 BTC per recipient.)
Quote
Example: 1,000 BTC to 4 recipients would generate a fee of: .0054 * 1000 = 5.4 BTC and 994.6 BTC would be sent out to recipients.
1000 * 0.005 (0.5%) == 5
1000 * 0.0001 (0.01%) * 4 == 0.4
Fee == 5btc + 0.4btc == 5.4btc
This is correct.

However, I am confused by the next example.
Quote
Example: 50 BTC spread out to 10 recipients would cost .060% * 50 = < 10. The fee would be 10 BTC, and 4BTC would go to each recipient.
50 * 0.005 (0.5%) == 0.25
50 * 0.0001 (0.01%) * 10 == 0.05
Fee == 0.25btc + 0.05btc == 0.3btc

Where do you get a fee of 10btc?

I guess the fee for sending 1000btc is less than the fee for sending 50btc. :p
bencoder
Member
**
Offline Offline

Activity: 90
Merit: 10


View Profile
September 01, 2010, 08:27:21 AM
 #3

Where do you get a fee of 10btc?

Quote from: vess
0.5% of the total + 0.01% per recipient (minimum 1 BTC per recipient.)

Emphasis added Smiley
FreeMoney
Legendary
*
Offline Offline

Activity: 1246
Merit: 1014


Strength in numbers


View Profile WWW
September 01, 2010, 09:19:02 AM
 #4

I was just thinking that this was something I could do!

How necessary is it though? What happens when you send yourself coins? Do they end up in a different address or not? I have two machines so I think I can do it for myself that way no matter what.

Play Bitcoin Poker at sealswithclubs.eu. We're active and open to everyone.
vess (OP)
Full Member
***
Offline Offline

Activity: 141
Merit: 100



View Profile WWW
September 01, 2010, 03:14:41 PM
 #5

Yep, typo at the minimum calculation explanation. The calculator does the math right, though: for now to make it cheaper for people to try out with small amounts, I set the minimum at .02 BTC.

Regarding doing it yourself: This provides better decorrelation because your payments are getting mixed in with other people's. If you send a payment to address a, then to address b, then on to where you buy from, you have something very different than we have now with BitLaundry:

Address A-> B
B -> C, E (C is not related to you at all)
E -> over time F, G, H (all you)
I (Not related to you originally ) -> J (You).

This is better.



I'm the CEO of CoinLab (www.coinlab.com) and the Executive Director of the Bitcoin Foundation, I will identify if I'm speaking for myself or one of the organizations when I post from this account.
vess (OP)
Full Member
***
Offline Offline

Activity: 141
Merit: 100



View Profile WWW
September 01, 2010, 03:21:40 PM
 #6

p.s., yes, the example about 10 people was designed to help you understand the different parameters of the pay system, so splitting to more recipients costs a little more than sending to just one.


I'm the CEO of CoinLab (www.coinlab.com) and the Executive Director of the Bitcoin Foundation, I will identify if I'm speaking for myself or one of the organizations when I post from this account.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
September 01, 2010, 06:25:16 PM
 #7

It's better to use MyBitcoin for this. MyBitcoin has more bitcoins "in circulation", so you are much more likely to send coins that didn't belong to you. With BitLaundry, you'll probably end up sending mostly your own coins. Also, unless you've modified Bitcoin, logs of every transaction are still kept.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
vess (OP)
Full Member
***
Offline Offline

Activity: 141
Merit: 100



View Profile WWW
September 01, 2010, 07:44:44 PM
 #8

Re: mybitcoin, possibly, BUT:

Do they delete all logs on send?

BitLaundry keeps no login or other account information, tracks no IP addresses, and only stores send information until a payment goes out successfully.

My original use case for BitLaundry was for a botnet owner. I think that it fills that need (however small) better.

Regarding more BTC in circulation, this is undoubtedly true, but one has to start somewhere.

Peter

I'm the CEO of CoinLab (www.coinlab.com) and the Executive Director of the Bitcoin Foundation, I will identify if I'm speaking for myself or one of the organizations when I post from this account.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
September 01, 2010, 08:16:01 PM
 #9

Do they delete all logs on send?

You're not actually deleting logs unless you've modified Bitcoin. Bitcoin keeps logs of every transaction in wallet.dat.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
mizerydearia
Hero Member
*****
Offline Offline

Activity: 574
Merit: 507



View Profile
September 01, 2010, 08:25:58 PM
 #10

Where do you get a fee of 10btc?

Quote from: vess
0.5% of the total + 0.01% per recipient (minimum 1 BTC per recipient.)

Emphasis added Smiley

Ah, thanks! I read that, but it didn't sink in.
Anonymous
Guest

September 02, 2010, 03:10:17 AM
 #11

It's better to use MyBitcoin for this. MyBitcoin has more bitcoins "in circulation", so you are much more likely to send coins that didn't belong to you. With BitLaundry, you'll probably end up sending mostly your own coins. Also, unless you've modified Bitcoin, logs of every transaction are still kept.

What if you set up a separate laundry node behind tor and sent all the coins to it from the public laundry service? Would your coins be traceable when sent to someone else ?

Bitcoin needs its own onion routing scheme  Smiley



theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
September 02, 2010, 04:19:22 AM
 #12

What if you set up a separate laundry node behind tor and sent all the coins to it from the public laundry service? Would your coins be traceable when sent to someone else ?

Bitcoin needs its own onion routing scheme  Smiley

With Bitcoin, Tor doesn't help much. Read this:
http://www.bitcoin.org/wiki/doku.php?id=anonymity

At the end of that article I described a somewhat easy-to-implement "Bitcoin laundering" service:
Quote
- Set up two Bitcoin installations.
- Put some amount of BTC in installation B. This is the maximum amount of BTC you can deal with at once (for all customers).
- Customers send BTC to installation A. You send them an equal number of coins (or minus a fee) from installation B. Send as 10-50 BTC increments.
- Send all coins from A to B when all orders are satisfied. You can't send coins from A to B if you have any orders that have not been satisfied from B.
- This can be automated, or you can do everything manually.

This still keeps logs (unavoidable without modifying Bitcoin), but it ensures that you never get back your own coins.

The log situation can be helped by periodically moving your bitcoins and deleting the empty wallet.dat file (this deletes all of your receiving addresses, so be careful).

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
Anonymous
Guest

September 03, 2010, 04:38:59 AM
 #13

What if you set up a separate laundry node behind tor and sent all the coins to it from the public laundry service? Would your coins be traceable when sent to someone else ?

Bitcoin needs its own onion routing scheme  Smiley

With Bitcoin, Tor doesn't help much. Read this:
http://www.bitcoin.org/wiki/doku.php?id=anonymity

At the end of that article I described a somewhat easy-to-implement "Bitcoin laundering" service:
Quote
- Set up two Bitcoin installations.
- Put some amount of BTC in installation B. This is the maximum amount of BTC you can deal with at once (for all customers).
- Customers send BTC to installation A. You send them an equal number of coins (or minus a fee) from installation B. Send as 10-50 BTC increments.
- Send all coins from A to B when all orders are satisfied. You can't send coins from A to B if you have any orders that have not been satisfied from B.
- This can be automated, or you can do everything manually.

This still keeps logs (unavoidable without modifying Bitcoin), but it ensures that you never get back your own coins.

The log situation can be helped by periodically moving your bitcoins and deleting the empty wallet.dat file (this deletes all of your receiving addresses, so be careful).

Could this be distributed somehow? You could jumble the coins into different sized chunks and recall them as needed in some randomn way?
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
September 03, 2010, 05:23:15 AM
 #14

Quote
Could this be distributed somehow? You could jumble the coins into different sized chunks and recall them as needed in some randomn way?

I can't think of any way to remain strongly anonymous in any e-currency system and not trust someone.

You can send bitcoins to new addresses owned by yourself in random intervals and amounts. This frustrates attempts to identify you, but I don't think it'd be sufficient to stop a determined attacker. Using the current code to send bitcoins to yourself (the same client) is useless, though, because Bitcoin makes a special, obvious transaction when you do that.

There are some interesting things you can do with the "external mixing service" concept. You can probably chain multiple mixers while only trusting one of them not to steal your bitcoins. You still need to trust one person, though.

Bitcoin-backed "bank notes" transmitted with a strongly anonymous but centralized system like Open Transactions is probably the best solution.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
vess (OP)
Full Member
***
Offline Offline

Activity: 141
Merit: 100



View Profile WWW
September 10, 2010, 06:48:14 PM
 #15

I'm working on running the transactions through Mt. Gox, although slowly, since there doesn't seem to be a large felt need for anonymizing right now.

Any votes on the next project? On my list is

1) Payment spreading -- essentially set up an address and a split, and the service will send out payments automatically on the split. As an add-on, people could update their destination address and keep the sender semi-ignorant of the final destination (subject to the correlation issues we've been talking about)

2) A digital escrow service -- would probably be buyer-friendly, require proof of shipping / then proof of mediation if dispute. This seems to be communicated as a large felt need for people who wish to buy with bitcoins.

I'm the CEO of CoinLab (www.coinlab.com) and the Executive Director of the Bitcoin Foundation, I will identify if I'm speaking for myself or one of the organizations when I post from this account.
gumtree
Newbie
*
Offline Offline

Activity: 15
Merit: 0


View Profile
September 12, 2010, 05:06:44 PM
Last edit: September 22, 2010, 12:38:11 PM by gumtree
 #16

Could a built-in anonymizing function for Bitcoin enable each transaction to pass through a public pool of Bitcoins - with Bitcoins from address and Bitcoins to address (same transaction) to be a different set?
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
September 12, 2010, 07:00:21 PM
 #17

gumtree:

How do people who collect from the pool prove to the network that they have the right to do so? The sender will need to say to the network, "This person can remove x coins," but this is equivalent to a normal transaction.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
September 12, 2010, 11:25:13 PM
 #18

If you don't use the block chain, then you eliminate double-spending protection. A could make two pooled transactions to himself using the same coins.

Also:
- Why couldn't an attacker just insert 10,000 nodes into the network and record all messages? It's pretty easy to do.
- What stops whoever signs the outgoing pool transactions from just sending them to an address he controls? The network can't verify that he's sending to the correct addresses unless they've seen the transaction that A made, which removes the anonymity aspect.

If you don't think I understand your system, explain exactly what every member of the network would be doing in this system. For example:
1. A creates a transaction like this: "txIn: previousTransaction; txOut: SEND_POOLED B_PubKey amount".
2. A transmits the transaction to his peers.
3. His peers do Huh

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
gumtree
Newbie
*
Offline Offline

Activity: 15
Merit: 0


View Profile
September 16, 2010, 07:54:12 AM
Last edit: September 22, 2010, 12:33:57 PM by gumtree
 #19

In mybitcoin.com 's terms of service agreement, it is stated that a historical transaction record of an account is kept.  This information combined with the Bitcoin block chain, may provide a complete transaction path of a Bitcoin passing through mybitcoin.com - maybe even if you do not even spend your own Bitcoin from mybitcoin.com (that was originally sent to mybitcoin.com).

See:  mybitcoin.com Terms of Service Agreement when signing up:  

"9.2 Unless ordered by a Court of competent jurisdiction, MYBITCOIN LLC shall not reveal User's contact or identifying information or transaction history to any third party."

It becomes clear that whenever something is centralized, anonymity is lost.
em3rgentOrdr
Sr. Member
****
Offline Offline

Activity: 434
Merit: 251


youtube.com/ericfontainejazz now accepts bitcoin


View Profile WWW
September 16, 2010, 10:39:53 AM
 #20

In mybitcoin.com 's terms of service agreement, it is stated that a historical transaction record of an account is kept.  This information combined with the Bitcoin block chain, may provide a complete transaction path of a Bitcoin passing through mybitcoin.com - maybe even if you do not even spend your own Bitcoin from mybitcoin.com (that was originally sent to mybitcoin.com).

See:  mybitcoin.com Terms of Service Agreement when signing up: 

"9.2 Unless ordered by a Court of competent jurisdiction, MYBITCOIN LLC shall not reveal User's contact or identifying information or transaction history to any third party."

It becomes clear that whenever something is centralized, anonymity is lost.

EEEEK!!!!  So it turns out mybitcoin.com is just another corporation!!!  [sighs]

I'm at the point in my life now that I'm very distrustful of:
  • incorporated companies (why did you file paperwork with the government?  Corporations are just creatures of The State)
  • closed source implementations (what are you hiding in your code?)
  • centralized servers/domains (can be broken into, are easy targets, governments can disconnect easily) instead of p2p
  • banking schemes where it might be possible to engage in fractional reserve banking (so I have this money stored at mybitcoin.com, but how do I know you are not lending it out behind my back?)
  • transaction schemes where there is no recourse if the transaction is violated
  • low reputation
  • not mathematically/logially/cryptographically proven

So, yeah, how do I know mybitcoin.com isn't engaging in Fractional Reserve Banking with my stored money?

"We will not find a solution to political problems in cryptography, but we can win a major battle in the arms race and gain a new territory of freedom for several years.

Governments are good at cutting off the heads of a centrally controlled networks, but pure P2P networks are holding their own."
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!