Here's what I'm wondering, Danny. Imagine I'm a miner that control 5% of global hash power. I have an employee who is always looking for out-of-band double-spend services. Whenever he learns of a new service like this, he sends it one "test double-spend" every block. If I see a block that includes the TX that I personally know to be a pseudo double spend attempt, I choose not to mine upon it. Otherwise, our behaviour is unchanged. If the block I rejected as malicious is built upon (i.e., not enough miners implemented my rule set), then I give up and start mining on the longest chain.
Now imagine I talk about this idea at conferences, over IRC, here at the forum, and start a website dedicated to the cause. Perhaps I am able to convince others to implement the same rule set. Every block I mine is not a waste, as normally I am working to extend the longest chain. The only block rewards at risk are when I detect a block that I personally know to come from a malicious double-spend service. But I think these blocks should be rare, and eventually disappear completely if they are never extended (the double-spend services would go out of business).
I don't see the flaw in my logic here. It seems that this may work and that if it did that it would be a good thing. Do you think this idea is dangerous some how?
If each participating miner (or mining pool) implements your idea independently (searches for the double-spend services themselves, and makes their own determinations from their own double-spend attempts which blocks to ignore), then it's dangerous to the income and profitability of the individual miners (or pools).
It is likely that some miners will find some services, and other miners will find other services. As such, they will waste time mining blocks that won't earn them income, while the rest of the network that hasn't discovered the particular service they are blacklisting continues on without them. Additionally, if they happen to solve a block while mining a fork that won't make it, they lose out on the block reward they could have had if they had solved a block on the consensus chain.
Additionally, since there are likely to be many services that some miners find and others don't, the blockchain is likely to always be in a state of multiple competing blocks that are all trying to orphan all the others. This significantly reduces the hashpower that an attacker would need to outpace the rest of the network with their own chain. If an attacker can create a situation where there are regularly 5 different blocks that are all being treated by equal portions of the network as the last "valid" block, an attacker only needs 17% of the total hash power of the network to continuously outpace the network (instead of 51%).
If, instead of having each miner (or pool) independently search out and choose which blocks they want to try to ignore, you have some centralized service that provides the block blacklist that all miners are supposed to adhere to, then you've introduced a centralization to the decentralized network that can be abused. The service can become malicious and (for a secret fee) allow some malicious blocks through, or even block some non-malicious blocks. The service can segregate the network into as many competing forks as it likes by offering each segment a different block blacklist.
Because all of these repercussions result in reduced income for the honest miners (or pools), it will be difficult to convince any of them to take up your consensus destroying ideas. As such, you'll be left occasionally ignoring blocks on your own, and drastically reducing your revenues wasting hash power on blocks that will never be part of the consensus chain. Because mining is so competitive, reductions in revenue will almost certainly result in financial loss that will eventually deplete your capital until you can no longer operate.