I am not an expert here but if each node is assigned a signature then IP doesn't matter does it?
And you can somehow keep a pool from being assigned multiple signatures?
Explain.
Bro, like I said, even though I do my own software (which only recently involves BTC) I am not an expert on the matter.
Clearly. Not only aren't you an expert, but you really aren't even thinking this through.
You want to be able to stop someone with more than 50% of the hashing power from having the power that having more than 50% of the hashing power provides. Unfortunately wanting something doesn't mean its possible. Throwing out ideas that haven't been thought through, and that have already been discussed dozens of times, just means that people are going to point out the problems with your idea that have already been discovered (dozens of times).
It might not have to be a signature but I am sure that if we can track someone by their address then we can keep someone from cheating.
But, since we don't have an address that we can track someone by, we can't keep them from cheating. Not unless we give some sort of trust to a centralized authority.
This is a problem that has plagued the idea of a cryptocurrency for decades. There was no way to maintain an consensus without a centralized authority. Using a blockchain and a proof-of-work, Satoshi came up with a revolutionary concept for distributed consensus. The problem with his solution is that if someone can supply the majority of the proof-of-work, then they can control the consensus. If you can find a way to reach consensus without the proof-of-work, then we don't need proof-of-work mining any more at all. Instead of using your new system to reach consensus on the block submitted, we can just create a coin that uses your amazing new consensus system to reach consensus on the transactions themselves.