Decentralized and distributed systems, like those based on Blockchain technology, are vulnerable to a form of attack called as the Sybil attack. It leads to initiate acute effect as well as initiate numerous other attacks like Denial of Service, Distributed Denial of Service, and majority attack etc. In Sybil attack, an adversary or a malicious user creates multiple fake “identities” in the system. Preventing Sybil attacks is a difficult in systems without a central trusted node. Various protocols based on social networks have been proposed by the research community to mitigate the influence of malicious nodes creating multiple identities, which differ in multiple ways in their approaches and guarantees. We explore these protocols in depth, including their assumptions, procedure, and results. Bitcoin and other traditional blockchain architectures use protocols like Proof of Work and Proof of Stake to make Sybil attacks expensive and impractical. This article provides a comprehensive survey of such techniques as applied in various cryptocurrencies.