Matematically sybil attacks cannot be prevented, what you can do is make it expensive to do sybil attacks, which will make it increasingly more expensive as more servicenodes come online. and lets for the sake of arguement say i want to do a sybil attack.
first thing i need is spr, so i start buying up spr, as i buy more and more, less is being sold, which means the price of spr goes up, exponentially, so basically as i get closer and closer to own a big enough amount of servicenodes, i will end up having to pay increasingly more and more for adding more nodes.
second part is logisitics, the more service nodes i want running for this, the more server infrastructure i will need to buy, which is a hidden cost not too obvious in the beginning.
now im ready to try and do a sybil attack, problem is, i can never own enough service nodes to garantie a success before the network will start to look on my servicenodes as suspicious, and i can end up with all my nodes being kicked off for misbehaving..
since the servicenode network needs a system to protect itself, it will use the power of voting, where each node has 1 vote, majority will always win, and end up overruling the nodes i have set up to try attacking the network.
so, i need 50.1 % of all servicenodes to do this to win the voting element, how expensive is this going to be, will determinate if it would be feastable to try attacking the servicenode network, and get it to do my bidding..
that, is the power of collateral.
It was an interesting discussion about sybil attacks and preventing them.
I like that Georgem wants to explore ideas to prevent sybil attacks. Proof of work was invented to stop email spam, but it has led to Bitcoin; so who knows where a new sybil attack approach might take us.
Still, I like collateral as a prevention tool. The current attack on Bitcoin is an example of smart people attacking something simple because they can and there is no cost to doing so.
So this guy is attacking Bitcoin at the moment (he says the attack is on pause), because 'he can' but he won't do it if he has to spend funds:
Oh, thanks for the clarification. That seems a bit surprising though, seeing how cheap and efficient the method you detailed would be for a 'stress test'.
I do not want to spend even 0.1 btc for stress-testing even with "cheap" method
I am not so rich as coinwallet.eu
What if there is another wave of malleability attack whilst the spam attack is underway, it could really turn things upside down.
Should we test this case?
I can resume malleability stress-test in any moment
Without a node with modified code how does one get around to doing what you're doing in an automated way?
Some kind of pseudo-node. No code from any other client.
Also, a follow up question, what are your main reasons behind this?
Are you doing this to prove a point, like with the transaction spam attacks?
Just because I am able. Isn't it funny? I have not any other reason today. But... I have some ideas for future.
Why did Satoshi invent bitcoin? I really think he had the same reason - because he was able to do it.