Post
Topic
Board Development & Technical Discussion
Re: Blocking the creation of outputs that don't make economic sense to spend
by
Peter Todd
on 10/03/2013, 20:40:34 UTC
Ok. $0.08 might not sound like much, but remember the fees go to the miner, the network full nodes get nothing! A miner would probably be content with 0.00008 BTC (See https://gist.github.com/gavinandresen/5044482) fee to include it in a block. A malicious party could pay very little to put $0.08 cost on the network. This is UTXO storage alone! In the case of SD, the miners are paid directly by the users, costing SD nothing. The only factor limiting the network costs is the block size limit.

Have you seen my post on how miners have perverse incentives to create blocks large enough that not all the hashing power on the network can validate them?

So, what you can do as an evil miner, is pad the blocks you produce with transactions that use up UTXO space. You can create them deterministicly, so you don't have to waste your own resources storing them. As you say, the only cost to the miner is decreased propagation of your blocks, which as I pointed out is actually a good thing is small quantities, and in any case the overall orphan rate and bandwidth costs to you is strongly dependent on how much infrastructure you have.

For instance Google would be able to easily run a very successful and extremely large mining pool/validation node network for very little money because they can re-use their existing infrastructure to broadcast data around the world. Smaller players have costs hundreds or thousands of times what Google does to send a marginal byte out over the network - it pays to own your own fiber.

As you fill up your competitors UTXO space they'll be able to afford less and less IO bandwidth. The problem is as they fall behind on IO bandwidth, it takes them longer to validate blocks, and thus their orphan rate increases. Eventually they'll be forced out of business.

What's really nasty, is you don't even have to do this in an obvious way. Remember that a miner can pay fees to themselves only limited by the risk that another miner will take the fee. However, if you are the biggest miner selling blockspace any "false-fee" that you make that's less than the fees other miners would accept has no chance at all of getting picked up by them; they can't afford to. So the fee has cost you absolutely nothing. You can then get a large quantity of BTC from someone else, maybe you know someone operating a hedge fund investing in BTC, and spread that large quantity into a pile of phony transaction outputs. (tell your hedge fund clients this is to ensure the privacy of their funds) You gain because Bitcoin looks more popular, you gain because you push your competitors orphan rates up, and you gain because they're forced out of business in the long run.