Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How to launder Bitcoins (oleganza.com)
175 points by oleganza on Nov 23, 2013 | hide | past | favorite | 78 comments


That is not what structuring is at all. Structuring is conducting transactions in a way that will avoid triggering reporting requirements. If the legislation in your country requires financial services providers to report any cash transaction greater than or equal to say, $10,000, and you go and deposit $9500 five times with the sole purpose being to avoid these reporting requirements, then you are in breach of structuring laws. That's it. It has nothing to do with the legality or otherwise of the source of your money.

Also, money laundering is not about forbidding buying bad things. In fact, it's entirely the opposite. It's about buying legal things to hide the proceeds of crime.


Structuring laws are pretty shitty there have been plenty of examples of people being screwed over by the government w/o legal due process for just conducting legitimate businesses that happen to receive a lot of cash payments from customers. Just one recent one...

http://overlawyered.com/2013/09/institute-justice-tackles-st...


This seems to me to be more a problem of rampant abuse of forfeiture laws rather than a failure of structuring laws. The many stories I have read recently of "forfeiture corridors" in the USA would seem to reinforce that.


The financial regulations are pretty complicated and can be interpreted or retroactively changed as guys in your government want. Especially in US. There are already "anti-hidden compartment laws": http://www.aei-ideas.org/2013/11/america-heres-your-war-on-d...

So if you want to hide your bitcoin traces, it's better to make them completely diffused in the rest of the blockchain history to avoid attracting any extra eyes.


Bitcoin wiki tells you exactly what you need to do.

Generate addresses offline or proxied through Tor or JonDonym. Use different addresses for every input. Use CoinControl program to send coins https://bitcointalk.org/index.php?topic=144331.0

Never post your bitcoin address anywhere you can be identified, such as a msg forum signature, or directly to an exchange for withdrawal/deposit. Use addresses not linked to you (OPSEC).

Stay away from the exchanges that want piles of ID and use P2P trading on IRC or in person.


Managing addresses seems like the easy part, to me. The real challenge is getting money in & out of BTC, at least until you can spend it just about anywhere.


It'll get significantly easier soon enough, but at the moment it's no easier to load your PayPal with money.


::Yawn:: The insurance contract approach is lame as it makes you lose your funds if the other party suffers an honest failure (e.g. they get hit by a bus).

Better protocols are possible: https://bitcointalk.org/index.php?topic=321228 (CoinSwap)

Describing it as "laundering" is more than a little hopeful-eyed. These sorts of things are privacy mechanisms, which make Bitcoin's privacy a bit closer to traditional banking... but they don't provide an apparent legitimate origin of the funds, so they aren't themselves useful for money laundering.


How do you implement anonymous peer discovery against someone who can tap the whole internet ?


Tor works somehow and NSA admits that it's a pain in the ass even for them. When someone targets you specifically, you have little chances, but when the whole network routinely mixes coins it's much easier to hide in the woods.


Does tor conceal the fact that you're using TOR, i.e. peer discovery ? because i got the impression it didn't , that it only did conceal end to end links.



It doesn't explicitly say if you are the originator vs just some node on the way.

If you run a tor relay you can hide your own traffic in the noise.


"If you run a tor relay you can hide your own traffic in the noise."

Assuming you don't have way more traffic than noise.


Is that really true?

I believe a global passive adversary can easily use timing attacks to deanonymize tor.


I'm not an expert in Tor. In one of Snowden's documents NSA admitted that Tor is hard to infiltrate even for them.

I myself don't want to live in a world where you need to actively hide from huge adversaries. I'd prefer a more careless world with smaller adversaries. Hopefully, widespread adoption of Bitcoin will take a lot of power from governments, so we won't have massive money wasting TLAs that create misery all around the world.

Edit: I meant "don't want to live", not "don't live".


I interpreted the NSA documents to mean that Tor is harder than no-Tor. They already know who you are if you don't use Tor, but if you do, they probably have to do some analysis to figure it out.

Let's work this out though. What do we know about the NSA programs?

1. They collect metadata on packets originating from computers connected to pretty much all the US ISPs and many other countries' ISPs.

2. The list of Tor entry and exit nodes is public and you can bet your ass the NSA knows what this list is at all points in their logging history.

3. Most websites are based in the US, and so it's highly likely that the paths from the Tor exit nodes to these websites have some intermediate point on which traffic is logged by the NSA.

4. The NSA has access to a large training dataset of how traffic entering and leaving the Tor network looks because a whole bunch of federal authorities use Tor.

Given 1-4, I think it's likely trivial for the NSA to train a learning algorithm that will correlate packets leaving a Tor exit node with those entering an entry node.

They probably can't do this all the time because it is more expensive than just a database lookup like in the unencrypted case, but it seems me to that if they had the motivation to get you, it wouldn't be too hard for them.


There are other approaches for laundering which do not rely on insurance contracts, such as http://zerocoin.org/


Zerocoin is interesting, but Bitcoin in its current form has two practical advantages:

1. Cryptographic primitives used in Bitcoin are old and well-tested. There's no crypto code in Bitcoin that was invented by Satoshi and could have been badly broken in a subtle manner. Zerocoin's commitment scheme requires years of testing, attempts to crack it and fixing may be impossible. If the problem is discovered, the whole thing may lose all value overnight.

2. Bitcoin is more friendly in the eyes of the law enforcement. Bitcoin looks like a traceable, compatible with "tracking all citizens" policy. It gives it a green light from the governments. Of course, in reality, you can launder bitcoins and hide yourself quite well, but that's extra work and complexity. Meanwhile, like a Trojan horse, Bitcoin comes to the legal scene as a nice instrument that allows to track "bad" guys. Not relevant in the long term, but important in the short term to get legality and massive adoption.


> There's no crypto code in Bitcoin that was invited by Satoshi and could have been badly broken in a subtle manner.

Read up on the history of the client. Satoshi was innovative but could certainly not code securely to save themselves. Most of the script OP codes are still disabled because they introduced huge vulnerabilities. You could spend anybodies coins in Satoshi's client, or create integer overflows that created billions of coins in a transaction.

The client is a lot better now, but to say it's perfect because it was there from inception is a huge mistake.


Which only proves my point. It's really hard to make it right in v0.1 and you have to make it right, otherwise the whole thing is forever broken. Even then, there were two huge bugs: one with integer overflow that created billions of bitcoins in one transaction. Another was with OP_RETURN that allowed to spend bitcoins from any transactions without any effort.

Bitcoin wins over more complex schemes because it has less moving parts. Fortunately, the parts that were enabled work fine and give us awesome possibilities. Otherwise, they'd be disabled too.


He does mention Zerocoin. His argument is that when using it, your intent to hide your transaction history is explicit, while with the proposed "mixing" you supposedly can't tell it from regular transactions.


I'm starting to get sick of these Bitcoin posts.


Get used to it. This now is a bigger part of the tech world than NodeJS and friends.


then the tech world just got 1000x more boring. I thought people got into the startup world because they wanted to AVOID wall street....

best thing the author said lol -- I recommend governments to shut down the entire network to prevent people from doing nasty things with Bitcoin. amen

Btw VMG this is the last you'll hear from me! I'm trying to resolve to not read/comment on any more Bitcoin posts. It's fueling the fire of boredom. I gotta code somethin cool in the next few months so we can have a new headline on this site finally.


Well, something so dangerous that must be shut down by the government can't be boring in my eyes.

Sad to see you go, Bitcoin needs critics and contrarians.


Heh so you just find poker too banal, eh?

Lol if you want to code something better than Bitcoin (I think it's trivially easy using libcoin but involves putting a couple of legal/economic advisors on the payroll, which I can't afford yet) you may well count me in, but I'm tired of this same old block chain.

FYI gov't still hasn't shut down Amway & they are obviously a pyramid scheme. That's why I'm not interested, it seems like a clear failure to me that is just festering -- why wait for the official word? It may take a while. I'd want to build a cryptocurrency that stabilizes much faster.

All the best


I'm on fat0wl's train out of here. Previously I gave you guys the respect of honest antagonism. The quackery of bitcoin is so obviously ludicrous I can no longer justify my time spent pointing it out.

People throwing money around does not make a thing important.

Don't you dare say no one warned you when the whole thing comes crashing down.

And yes, fine, whatever, you can say "toldya so" all you like when Bitcoin fulfills your fantastic greed and you lot join the 1% of your new capitalist utopia. Real moral high ground you'll have, then.


"The quackery of bitcoin is so obviously ludicrous I can no longer justify my time spent pointing it out."

Oh, what a terrible loss for thoughtful discussion, nothing frames a debate quite as nicely as dismissing the topic of discussion as quackery.

"People throwing money around does not make a thing important."

What does that even mean? I'm not sure what makes something important, but from an entrepreneur's perspective "people throwing money around" (to the tune of a couple billion dollars) is at least... significant? something that merits continued examination? Important doesn't seem like a stretch, but I'm sure you have a quintessential example of something important...

"Don't you dare say no one warned you when the whole thing comes crashing down."

I appreciate the smugness in your concern, but just about everyone who invests in bitcoin is aware of the price volatility, you're like the guy who scoffs at lost mountain climbers as if they didn't realize that risk was part of the journey.

"And yes, fine, whatever, you can say "toldya so" all you like when Bitcoin fulfills your fantastic greed and you lot join the 1% of your new capitalist utopia. Real moral high ground you'll have, then."

Ok, right. So if I understand, if it all comes crashing down, you warned us all, but if the opposite happens then we're all assholes for reaping the rewards of our investment in something we were told was unimportant quackery destined to fail.

I'm starting to feel like this is one of those posts designed to trigger a defensive response in gullible readers who mistake your comment for an attempt at reasoned discourse. What do they call that again?


> And yes, fine, whatever, you can say "toldya so" all you like when Bitcoin fulfills your fantastic greed

A moral hedge - I like it!


Wow. I don't bother with Bitcoin personally, but I certainly don't actively hate it like a few of us around here seem to...


Starting, eh? The author basically says the bitcoin handler at the coffee shop will know how much you have unless you go through a massive scheme (which is probably borderline illegal for decent reasons) to gain back any sense of normalcy.

This is what happens when people take their own ball to go play in their own yard.

If it's going to take the amount of time, energy, and expertise to barely make bitcoin usable, how does the cognitive dissonance not overwhelm the coinbugs?


Bitcoin is not so bad at privacy as you say. But it's certainly can be made better with fully automated solution deployed on massive scale individually, without major agreement or protocol changes. It's just an evolution of the technology. Ajax apps also did not appear overnight on the web.


That's generally not the case. You might be able to see some of my funds, but certainly not the entire contents of my wallet unless you're using very broken ones. I've hundreds of different inputs in my wallet, and you'd only be seeing one of them.


I think the danger of the public nature of the blockchain is way overstated. It's fairly trivial to introduce reasonable doubt into your transaction history, blockchain analysis is nowhere near as useful to law enforcement as some people think.

The situation I worry about more is when someone is operating outside of the law, for example if you legitimately but unknowingly end up with some coins that were previously stolen, and then some guys with baseball bats turn up at your house.


That's why you split the coins repeatedly as you mix them. You don't want more than 0.1% of someone's "dirty" history. Client-side statistical analysis allows each node to decide which coins are good for them personally. (So that all coins are "far" away from each other.)


Honestly, I'd rather read about bitcoin than the app someone wrote in X lines of *.js


Yeah I can actually understand where you are coming from. I spend a lot of time with Bitcoin but never come to HN for Bitcoin information, I prefer my HN being startups and programming/algorithm stuff.

I think one of the reasons Bitcoin is becoming more popular on HN is that a lot of us are interested in fun/challenging tech ways to make a decent living or even make a million bucks.

At the moment Bitcoin is making a bunch of nerds millionaires and we are all interested in making sure Bitcoin overcomes all the hurdles ahead.


Bitcoin is programmable money, so I don't understand how there can be programmers who find it boring.


Hi josephagoss, could you please share with us your source of Bitcoin information?

In case you want to keep it private, I have an email provided.


Haha nowhere special, everything I know originates from Bitcointalk. A lot of information about the people, code, economy is there. However you do have to spend sometime searching and sifting through the noise.

Apart from the massive signal to noise ratio any site or related information ends up on that forum one way or another, it is a fantastic central hub. Just be warned, 99% of the stuff there is absolute rubbish.

A lot of the code has been explained over the years on the forum and a lot of discussion takes place about how certain things might be better off different. (At the moment a big area of interest is Coinjoin and Zerocoin is discussed quite a bit too.) Also the inventor of hashcash frequents the forum sometimes and offers good insight.


HN needs a downvote button for articles. I think that would solve this quickly.


It's that little up arrow next to every other article.


It has a 'flag' function if you've got enough karma to see it.


The issue with money laundering in the real world isn't the technical difficulty. It's easy as pie to launder cash if you ignore the laws surrounding it.

I'd imagine that if Bitcon becomes prevalent, governments would ask you to "voluntarily" declare your "salary" wallet. And then if they spotted any sort of suspicious laundering-like activity happening from that wallet, they would very quickly obtain warrants and show up at your door asking for an explanation.


Government would still have to set up a center of "approving" unknown money coming from other sources into local economy. These centers, as you can expect, will be massively bribed by everyone who needs to launder their tainted coins.

Also, governments will be much more limited in power when they can't print their money at will and do any "deficit spending".


unknown money coming from other sources into local economy

These centers actually exist even today. I personally know places where you can buy dollars using the local currency for something like a 10% discount on the market rate. They are obviously very shady and aren't used by anyone close to being respectable. If you use them and are big enough to matter, expect to be screwed over by law enforcement pretty much the instant they feel like getting you.

governments will be much more limited in power when they can't print their money at will

I believe printing money is actually a good thing. But let's not get into an economics argument here.

And governments can easily take over the bitcoin network tomorrow if they wanted to, simply because the ability of Intel, IBM, AMD/GF, NVIDIA and the big semiconductor manufacturers to build really efficient mining ASICs vastly outstrips that of everyone else. And companies like Intel have nothing to lose and everything to gain by keeping the US government happy if they requests come in from the top.

Again the analogy with cash is relevant. There is really very little technically difficult about printing counterfeit cash. I mean there's not even cryptography involved - it's just security by obscurity! The reason people don't do it is because governments clamp down on this activity very hard through law-enforcement mechanisms. Similarly, if the governments thought bitcoin was important enough to regulate, they'd be able to do it in an instant simply they have guns and we don't.


> I believe printing money is actually a good thing. But let's not get into an economics argument here.

You are confusing ethical argument with an economical one. I was talking economics, not ethics. Governments get a lot of power from ability to print money and censor transactions. Bitcoin removes these sources of power to a high degree regardless of whether it's good or bad. Like, when the internet got huge, moral question of whether people should be exposed to "evil books" or not becomes irrelevant. If one wants to read a book you think is not appropriate, he will do so anyway.

Governments printing ASICs to spam the network... That's the most expensive way to attack Bitcoin. If anyone ever gets to it, it simply means that BTC is already established in many places and widely used and very valuable. Governments would love to extract that BTC for their spendings instead of killing it. Like it happened with gold: in theory, gold is superior to printed fiat currency, but it isn't killed, it's confiscated and used as a hard currency among those who can afford keeping it secure: governments and banks, not you and me.


Like, when the internet got huge, moral question of whether people should be exposed to "evil books" or not becomes irrelevant. If one wants to read a book you think is not appropriate, he will do so anyway.

That's certainly an interesting perspective but it makes certain assumptions about what bitcoin will be used for that I'm not sure I agree with.

Governments printing ASICs to spam the network... That's the most expensive way to attack Bitcoin.

Not really, somebody estimated that getting ASICs to control 51% of the network would cost only a few hundred million dollars, which isn't much at all from a governmental point of view.

Also, as far semiconductor manufacturing goes - pretty much all of it is the non-recurring engineering cost of designing the IC. The actual cost of printing it on Si is a very small fraction for large volume chips.

Governments would love to extract that BTC for their spendings instead of killing it.

Governments than can print fiat currency don't really have a problem financing their spending. They do have a problem with currencies that undermine fiat currencies.


To be honest they don't even have to actually do it, if they so much as just announced that they were going to do it is probably enough to cause a panic sell utterly destroying any chance bitcoin has because so many people would be burned.


I wonder if that announcement would lead to more or less mining going on. If less, the announcement would mean the attack itself gets cheaper.


I think economics is more complicated than what you suggest. I feel lie you think cryptocurrencies are a way to foil the big bad government...


"I believe printing money is actually a good thing. But let's not get into an economics argument here."

This, is where I stopped reading.


This is where the comma should be in that sentence. (nowhere)


Very useless pov. Thanks for sharing. Nothing is more irritating in the middle of a good conversation than someone who rebuts by nitpicking grammar.


"This is where I stopped reading ” is never good conversation.


So is this like in reality or a fantasy?


How would that help? You declare your "salary" wallet, your salary flows from your day job. You run your underworld schemes in another wallet, and ne'r the two do meet.


How do you propose to spend money from your underworld wallet to buy real things - say to buy a car - without revealing your identity to the merchant? And once your identity is out in the open, how do you propose to evade the undisclosed income investigation that will be inevitably follow.


It depends on how much your underground wallet holds. There was that guy who was successful for many years, laundering dollar bills in person.

If you buy a BMW, your identity will be noted and the transaction recorded. If you buy a bagel sandwich, the clerk will forget about you by noon the next day. So if it's small potatoes, you could be fine.

If you have a ton of cash to move, you are right- in person becomes a bad option. That's when you go back to the basics- you launder the money, like every big-time criminal in history.


Same way the mafia does it: with a front.

"Oh, sure, some guy came in and placed a huge catering order. $10,000 worth of food. Paid in BTC. I never saw him again."


Something I wonder about is whether an isp or peer nodes could detect the transactions are coming from you.


The Bitcoin protocol isn't encrypted (it can't be, nodes have no identities in the network), and doesn't attempt to mask itself in any way. An ISP can absolutely log every transaction relayed by their customers... of course, it's still impossible to determine whether that person actually created that transaction


There's Tor. In addition, your ISP never sees transactions coming to you. You can later spend your newly received coins from some other network.


I'm not sure about that. P2P bloom filters were introduced to reduce bandwidth consumption for SPV clients some time ago. I think this feature can potentially leaks information about what transactions you're interested in.

https://en.bitcoin.it/wiki/BIP_0037


Pretty much just CoinJoin, which is in development.

https://bitcointalk.org/index.php?topic=279249.0


I mentioned explicitly why it's not like CoinJoin. CoinJoin leaves a trace of "structuring money", while perfect mixing needs to leave no such trace. All transactions must look like regular payments, statistically indifferent from any other payment. Also, CoinJoin in present form requires a trusted operator who can mark all transactions as "laundering".

CoinJoin is better for making Bitcoin look good in the eyes of law enforcement. You can get your privacy with it from everyone, except law enforcement. Lawful citizens and cops must be both happy and not fear that Bitcoin will be used for "terrorism".


If you're doing it persistently you just end up flooding the blockchain with useless information. At least with CoinJoin you're reducing the number of payment TXs that need to be stored and validated. The blockchain is already getting annoyingly large (20GB+ with indexes) without adding fluff like that.

If you really want to hide your tracks without hiding your tracks, just use any service with a shared wallet.


You pay for transactions. Don't tell people what to do with their money. Most of the transactions wouldn't be mixed at all. Just using new addresses with small balances is good enough for daily purchases. Mixing is needed only in certain cases like before and after big consolidating transactions.

CoinJoin is nice too, but it does not look well in the eyes of "anti-structuring" laws.

Shared wallet is an FBI honeypot unless proven otherwise (which is impossible to do). The best way is to have as big pool of random nodes as possible participating in the laundering. Like with Tor: the more users join it, the safer you are from some malicious entities.


A shared wallet, not the "shared wallet" service. Many services use them internally, they're in no way a trap.

> CoinJoin is nice too, but it does not look well in the eyes of "anti-structuring" laws.

Neither is a system that flings around your wallet contents all the time.


Any service can share its operations with an adversary. That's a risk. If you don't understand that, then you should prefer Digicash to Bitcoin as it's more anonymous, confirms transactions instantly and does not need any stupid mining.

System that flings around my wallet contents does not leave a trace of that activity on the blockchain. Meaning of every transaction is known only to transacting parties, but not to anyone else. That's the big difference from any shared wallet, where operator sees the meaning of all transactions going through it.


This is closer to CoinSwap then CoinJoin: https://bitcointalk.org/index.php?topic=321228.0


It seems people can already use CoinJoin at blockchain.info. See https://twitter.com/blockchain/status/402224010492006400/


Yeah, through a centralized UK-based service. No thanks.


Complex and won't work. Assumes none of your "insurers" are bad neighbors. If one of your washers is a government shill you are caught.


I might have missed something, but how can we be sure that malicious nodes do not just steal your money?


Insurance deposits. Both nodes lock up much more money than being "promised". If one node does not deliver, another node will automatically destroy both deposits. Nodes thus are motivated to follow the protocol and not cheat. Since the process is automated, there's no one to play extortion games.

The insurance contract is a special type of transaction that I invented: http://blog.oleganza.com/post/58240549599/contracts-without-...


I like your transaction idea and have an improvement. The trick is to reduce the costs of one-time punishment. This makes transactions less risky for contract keepers and more risky for contract breakers:

Terminology: I would call a contract where both parties lock up funds to be released on successful contract completion a "co-investment contract". Then I would add third parties we can call "co-investment insurers".

A co-investment insurer could be any party with a solid reputation of their own to keep, and who has a long term relationship with you (your bank for instance). For a small fee, (1%?) the co-investment insurer agrees to cover your investment loss if a contract fails.

Then the economics work like this:

1) People will not be afraid to lock up co-investments when their investment is insured because the worst that can happen if a contract is broken is they are out the small insurance fee.

2) Any party who gets insurance will still be incentivized to complete the contract successfully, so as not to harm their reputation with their long term co-investment insurer. (Who could increase their insurance fee or cancel their account if many transactions failed.)

3) Not everyone needs to buy co-investment insurance for this to have a big impact. The mere possibility of insurance makes punishment a stronger threat and therefore contracts more reliable.

4) As the systems's reputation for reliably punishing contract breakers increases, the insurance costs go down, making it even more affordable. This further increases the system's reliability for punishing contract breakers.

Given that all this can be automated, and reinforces incentives to keep contracts, I would think that insurance fees of only 1% or even less would become possible.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: