Hey you forgot that > 50% of the mining nodes will be controlled by the attacker.
If you mean non-mining nodes, they have no protocol interaction with creation of coins. Duh!
This is absolutely 100% false. Non mining nodes still reject invalid blocks, and would thus only download and validate valid blocks. The 51%er would thus just do the equivilant of create a hard fork which only he can use, while the smaller sub-network would create valid blocks that user clients would accept. So all of the non-mining lay users still wouldn't even see the invalid blocks, they'd just notice that confirmation times have slowed.
You are correct on a narrow point, but it doesn't really help you because the big picture is (more or less) as I have stated upthread.
It is very amusing how you argue that breaking the protocol by following a minority chain is somehow a resistance to an attack. You assume too many factors which you have apparently not thought out. I will explain.
You must consider that if the 50% attack is easy because of the transactions flaw I have explained which severely limits funding for the miners, then 90% attack is probably also relatively easy. For 50% you need 1x the honest miners' hash rate, for 75% you need 3x, for 80% you need 5x, for 90% you need 9x. To pick 50% as an arbitrary limit out of one's ass, isn't really analyzing the potential threat.
So if the clients follow the 10% chain and go for 1-confirmation transactions, they will see their transactions delayed by roughly 20 minutes 90% of the time, 30 minutes 81% of the time, 40 minutes 73% of the time, 50 minutes 66% of the time, 60 minutes 59% of the time, 2 hours 28% of the time, etc..
With the recommended 6-confirmations, that is 2 hours 90% of the time, 3 hours 81% of the time, 4 hours 73% of the time, 5 hours 66% of the time, 6 hours 59% of the time, 12 hours 28% of the time, etc..
So if they follow the 10% chain, Bitcoin is dead, especially with the level of volatility in the price and hour delay is not functional.
Even if you pick the arbitrary limit of 50%, for 1-confirmation that is still transactions delayed 20 minutes 50% of the time, 30 minutes 25% of the time, 40 minutes 13%, etc.. And for standard 6-confirmations that is transactions delayed 2 hours 50% of the time, 3 hours 25% of the time, 4 hours 13%, etc..
Also you are assuming that by the time coin rewards become small around 2033 or 2040, that the masses will get their non-mining node clients from the Bitcoin foundation or an honest party. Thus you assume that 100% of the clients will not collude or prefer to not have their transactions severely delayed to be point of being unusable.
You assume that violating the "longest chain rule" is harmonic in any way, which is is not, because chaos is something you don't control.
It is very likely the attacker can collude with an interested party which controls a significant number of customers access, e.g. Amazon.com
See my Transactions Withholding Attack.
So customers are more likely to say, "fix the problem Amazon". They won't give a flying f$ck about the "protocol". They will only want the damn transaction to complete timely. Even if Amazon was not colluding, they would likely make the decision to go with the 90% chain out of practical necessity.
Also the "idealistic" client nodes that you are thinking save your ass, also are going to get pissed off. They are going to demand the system doesn't take an hour to send a freakin transaction. So someone is going to offer an open source client that offers to adopt the 90% chain. And many your "idealistic" folks are going to realize that a few extra coins in the short-term is not hurting them as much as hour long delays. So they adopt the 90% chain as a stopgap solution in the near-term and look for an altcoin that isn't broken (no transactions flaw which makes the mining underfunded and thus vulnerable to 50 - 95% attack).
So with anything less than (the impossible) 100% perfect top-down control over the non-mining client nodes, the entire double-spend protection is gone, because you will have spends occuring in two chains with clients disagreeing over which chain is the valid one. As I wrote upthread:
However, if the attacker has the longest chain, then the honest miners can ignore all they want, they will still have the shorter chain.
The entire double-spend security rests on the fact that only the longest block chain is valid.
So really I don't think you've refuted my point.
What I said upthread stands as fact. The non-mining nodes are basically helpless. You have not presented a viable nor credible counter-argument.
The Bitards try to diminish the severity of the > 50% attack and claim it is no big deal and they can deal with it. They are in delusion.