Now the miners could decide to reject any transaction going out of that particular address (no matter how small the amount) unless it included a 25% transaction fee. You could call it extortion.

Question:

Is it "illegal" (see below) under the rules of Bitcoin?

How would the rest of the network detect such a problem (given it involves only one particular address)?

How would such a problem be resolved?

By "illegal" I don't mean the network would reject such behavior, because that it wouldn't, but that it would be rejected by most participants in the Bitcoin economy based on an implied understanding of what's fair and what isn't.

[UPDATE]

OK, let's say the mining cartel publishes their new policy on their website and word goes around.

Also, as an incentive to the rest of the participants in the economy, it is announced that part of the higher transactions fees will be distributed to everyone. This is achieved by setting up a single address (a la SatoshiDice) where you can send any amount and in return you'll receive the same amount plus the bonus. You can only do this once per address, because the program checks that the funds don't cross the same address twice.

It's similar to what happened in Cyprus recently, where anyone with more than 100,000 euros had to pay a very heavy tax. The rest of the public played along because they were off the hook. What I describe here is not some sort of tinfoil conspiracy scenario, just trying to figure out what's different about Bitcoin that makes it so special. Wealth redistribution happens all the time and there's nothing in Bitcoin that would seem to prevent it.
– ManishApr 17 '13 at 13:25

1

As far as I understand, the fee works as "I won't include you in a block I produced unless the fee you pay is higher than...". Now if 60% of the network charged 25% fee, that would mean the transactions from address that doesn't pay that fee would need to be processed through the remaining 40% of the network meaning they would come at 40% the normal speed, but otherwise get unaffected...
– SF.Apr 17 '13 at 17:25

3 Answers
3

I think your update changes the question significantly (probably too much for a SE question), but the answer is still essentially the same. In order for a miner to prevent a specific address from moving their BTC, they must not only decide not to mine the transaction but they must also convince at least 51% (most likely more) of the hashing power to not only not mine the transaction but also to ignore any block that does include that transaction.

First of all, I think that this is highly unlikely. Because:

Any combination of entities with >51% of the hashpower also has a very vested interest in Bitcoin. And deliberately allowing extortion would be against the interests of Bitcoin.

Any combination of entities with >51% of the hashpower has other potential ways of exploiting the network, which are arguably a lot more profitable.

The bribery incentive you list wouldn't really work. There's too much anonymity in the system. If you had an address that would give me back 110% of what I sent it, I would send it some money, launder the results into a new address, send it some more money from that untainted address, send it some more money, rinse and repeat.

Even if the "cartel" has 55% hashpower, there is a 1.8% chance that the minority miners could get six consecutive blocks mined. This may not sound like a lot, but if the extorted party just kept pushing trasactions out there it would only be a matter of a few hours before one of the transactions got six confirmations. So, the cartel would either have to be willing to break long strings of blocks (completely putting the network in jeopardy) or they would have an overwhelming supermajority of the hashpower (>90%).

So, in answer to your subquestions:

Is it illegal? Well Bitcoin doesn't have laws. If you mean, "would the protocol allow it?" Sure. A known weakness of the protocol is that if any entity controls a majority of the hashpower then there are some attacks they can make. Luckily there are some checks on this, notably the above comment: that anyone with a majority of the hashpower also has a lot invested into the health of the network. The deliberate limiting BTC Guild did on itself a few weeks ago shows this in action: the very entities that could obtain 51% hashpower are the ones most interested in making sure that no one obtains 51% hash power.

How would it be detected? In your modified scenario, it would be public knowledge. But even if someone tried to build a silent conspiracy, it would be pretty easy to detect if they went through with their threats: there would be orphaned blocks. And all of the orphaned blocks would share two things in common: they would all contain the extorted address and they would all be mined by minority miners. It would be pretty easy to figure out what is going on. Of course, you couldn't stop someone from secretly making threats, but detecting someone carrying out the threat would be easy.

How could it be resolved? Fundamentally the network is controlled by a majority of the hash power. If a supermajority of the miners decided to block an address, then there is no resolution: the majority rules. In a way, this is a feature. No one with the majority of the hash power would do this indiscriminately: it would jeopardize the network. But if the network determined that a particular address or addresses was a threat to the network, then the miners could band together and defend the network from that threat.

To expand on #3 with an example, say that a child pornographer publicly advertised some kind of service and accepted Bitcoin as payment. If, either out of altruism or media pressure, the majority of the hashpower decided to forbid payments to or from that address it would certainly be possible. (Of course, it would then become address "wack a mole", but there are some ways around that if the network could agree.)

TL;DR: The point being that if the miners collectively agree on something, yes, it is possible to effectively control the network. By design. That includes rolling back to a previous version (such as in the fork of March), preventing a theoretical exploit, or even executing a theoretical ban. But it's unlikely that a coalition would be willing to use that power for extortion. The miners have too much at stake in the health of the network.

Update:
I discovered something to add while researching something else. Satoshi made the commment that if transactions are deliberately being dropped that it could be addressed client side by coding the standard client to ignore blocks that they know are ignoring transactions. It was in a slightly different context in that thread, but the gist remains the same. If a majority of the miners colluded to exclude an address, there are some client side ways of giving favor to the "honest" miners, assuming that a majority of the client nodes were willing to upgrade to a version that protected again this.

"... some more money from that untainted address ..." Isn't it rather easy to tell from the transaction history if an address has already received a bonus? The bonus would be calculated based on the amount minus the taint percentage. "... there is a 1.8% chance ..." What if they refuse to build on that block?
– ManishApr 18 '13 at 12:24

"... deliberately allowing extortion would be against the interests of Bitcoin." Plenty of real world extortion by democratically elected governments, no problem there. "The majority rules. In a way, this is a feature." This. We can't discuss politics here, so I'll leave it at that. Any idea what's the right Bitcoin forum to have a discussion like this?
– ManishApr 18 '13 at 12:32

1

@Manish its trivial to remove taint with a mixing service.
– David OgrenApr 18 '13 at 19:01

The taint cannot be removed completely, can it? Especially when everyone rushes to claim their bonus (all ins 100% tainted, all outs 100% tainted). Anyway, I could come with an alternative design; it's a small part of the question. Thanks.
– ManishApr 18 '13 at 19:52

Imagine if a few miners who together control more than 50% of the network hash power decided to charge higher transaction fees just for addresses containing really large sums.

The problem is that if some other miner who isn't part of your cartel sees the transaction, he'll gladly include it.

However, perhaps you mean that you would also not build on blocks that contained transactions from the offending address.

How would the rest of the network detect such a problem (given it involves only one particular address)?

Given that you don't know who owns that address, you need to declare publicly that you're not confirming transactions from that address unless you get a 25% fee. It's rather difficult to extort someone if you don't tell them your demands.

Is it "illegal"

Collecting together a majority of hashpower is definitely against the spirit of Bitcoin - remember that huge kerfuffle on the forums when BTC Guild got 40% of the network hashpower?

[UPDATED]

Also, as an incentive to the rest of the participants in the economy, it is announced that part of the higher transactions fees will be distributed to everyone.

This is a problem for two reasons:

If you're distributing the funds to everybody weighted by how much they send you, then you're taking this wealth redistribution tax and sending it right back to the wealthy.

If you're doing this by address, well, need I remind you that new addresses are basically free?

I also thought of a new problem. Suppose the guy who has the 69k account has a mining rig. 69k makes a transaction with a 25% fee, but doesn't broadcast it. Instead, he puts it into a block that he mines. If he's got 0.1% of hashpower, then he can get it into the blockchain within a week.

Updated the question: The new policy is published on the mining cartel's website. Also, there's a new wealth distribution scheme, potentially approved by the majority of the Bitcoin network. Check it out. I'm curious to know what happens in such a scenario.
– ManishApr 17 '13 at 13:12

Follow-up: (1) "... sending it right back to the wealthy." Taking 25% from some and giving away, say, 0.01% to all, that's how taxation works. It could be more progressive, no comments. (2) "If you're doing this by address...." I think it's easy to check if an address has already received the bonus via its transaction history (even if it's a new address!). See: tainted addresses.
– ManishApr 18 '13 at 12:06

Any miner is free to include or exclude any transaction into his next block solution attempt anyway. The incentive to include transactions however, are the collectible fees that come along with the transactions.

That being said, controlling 51% of the the total hash power by a single entity just means, on average they are able to mine 51% of all blocks. To have an effective "extortion", the group must control effectively all hash power, which is extremely unlikely.

So, this transaction will be most likely be mined soon anyway, by another miner that plays nice and happily collects the fee.

This is not entirely correct. A colluding majority of hashrate can choose to not work on top of any block mined by the minority, effectively turning their 51% into 100%.
– Pieter WuilleNov 19 '17 at 20:50

@PieterWuille You are right, I did not think about this scenario.
– nulldevNov 19 '17 at 22:19