Can anyone please provide a clear definition for what a Sybil attack is? I was asked how the cryptocurrency I am developing would prevent Sybil attacks.

up vote 26 down vote accepted

A Sybil attack is an attack where a single adversary is controlling multiple nodes on a network. It is unknown to the network that the nodes are controlled by the same adversarial entity. For example, an adversary can spawn up multiple computers, virtual machines, and IP addresses. They can create multiple accounts with different usernames and e-mail addresses and pretend that they all exist in different countries.

Avoiding Sybil attacks is a difficult problem. In centralized systems they are typically avoided through heuristics that do not provide cryptographic assurance of Sybil resilience. For example, a centralized entity may try to avoid Sybil attacks by requiring that an individual IP cannot create more than a specific number of user accounts in a given time interval.

Sybil attacks are avoided in Bitcoin by requiring block generation ability to be proportional to computational power available through the proof-of-work mechanism. That way, an adversary is limited in how many blocks they can produce. This provides strong cryptographic guarantees of Sybil resilience.

  • @dionyziz Can you elaborate on how bitcoin avoids sybil attack? I am finding it difficult to understand. Please help. – Aditya Oct 29 '17 at 11:04
  • 3
    @Aditya The adversary has limited computing power. If the adversary present themselves as one entity to the network, the adversarial computing power will all be concentrated on that one entity. If the adversary presents themselves as 100 entities to the network – a Sybil attack –, then each of the entities will have 1/100th of the total adversarial power. Because in bitcoin what matters is the computational power, not the number of entities by count, creating more identities does not help the adversary produce more blocks. – dionyziz Oct 29 '17 at 23:41
  • 1
    @dionyziz great answer! – cli__ Dec 11 '17 at 6:06
  • Thanks for the explanation! The wiki page says "the attacker subverts the reputation system of a peer-to-peer network by creating a large number of pseudonymous identities, using them to gain a disproportionately large influence." I have difficulty in understanding what the "influence" is in the case of bitcoin. It doesn't seem to be the hashrate because in that case a mining pool can gain much more influence than a regular user. – yaobin Oct 17 at 22:32
  • Ah, never mind. I just found the Bitcoin Wikipedia page gives examples of potential issues that Sybil attack can cause. – yaobin Oct 17 at 22:38

Please see Ethereum EIP 819 (https://github.com/ethereum/EIPs/pull/918) which researched the first sybil-attack-resistant design for an ERC20 Ethereum Token. This design achieves sybil attack resistance by using Proof Of Work to ensure that neither the deployer nor any other entity is unfairly receiving massive amounts of tokens for free during the distribution. Not other distribution scheme (airdrop, ico) can prevent that.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.