The protocol should just block absurdly high TX fees.
Count the fees for the last 20 blocks, divide that by the bytes used for transactions, multiply result by, say, 25. If the TX fee per byte is bigger than that, it isn't a valid transaction and a block that includes it is not a valid block.
Would be adaptive and would not be too difficult to implement and would protect users.
25 may not be the right number, I have no clue, would have to watch the chain for a few weeks to pick a multiplication factor that clearly indicates an absurdly high fee. Not just a high fee, absurdly high.
Thats too complex and needs manual adjusting, plus protocol changes need hard fork , and we wont do that for a few idiots.
It's just simple if you add a code in all wallets to warn you twice or even 3 times, if you want to send fee's larger than 0.05
BTC, because it's likely that you wont need to send higher than that in the foreseeable future.
Not too complex and needs no manual adjustment, it would auto-adjust based on the last 20 blocks.
Yes it would require a hard fork, which is why it should be done at the same time as another issue being fixed by hard fork - say the block size.
Adding code to wallets assumes the wallet won't have bugs. Wallets have had serious bugs before. Protocol protects the users from wallets that have bugs. Or wallets that don't implement it.
Protocol level also removes one of the easiest methods of money laundering in bitcoin at the same time. Well easiest if you are a miner.
Have some malware that steals bitcoin? No problem. Stick them all in a transaction with a small fee to a burn address and a large TX fee. Now the money has been laundered and can't be traced through the blockchain. No need to trust mixers. That's what we have right now.
Easiest way to do this would be for the wallet software to start rejecting too large transactions. Ofcourse, the big boys could easily compile their own version and go around this, but atleast it would filter out the real accidental large sends.
Also, I don't believe for 1 second a transaction like this is accidental. Even if they would've switched the amount and the transaction fee, they still wouldve sent 6 btc as a fee..
I don't think it is the most effective way for money laundering, as the tx fees are split through all the miners on the pool. Even if you ensure the tx ends up in a block you mine, you still share it unless you are the sole miner on the pool.