Skip to content

ArbitrumFoundation/sybil-detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Arbitrum Sybil Detection

This project aims to remove Sybil addresses from the Arbitrum airdrop, ensuring that only legitimate users receive the airdrop tokens.


Methodology

We use on-chain data to identify related addresses owned by the same user and remove entity addresses such as bridges, exchanges, and smart contracts using data from Nansen, Hop, and OffChain Labs. There are also some addresses being removed by manual inspection, such as donation addresses, l2 alias, etc.

With those cleaned up, 2 graphs are generated for this study:

Graph 1: In this graph, each transaction with msg.value is treated as an edge with their (from_address, to_address)

Graph 2: In this graph, each funder/sweep transaction is treated as an edge with their (from_address, to_address)

  • funder transaction is the first ether transfer to an account
  • sweep transaction is the last ether transfer from an account

Sybil Cluster Identification

Clusters are generated by partitioning the above graphs into strongly connected and weakly connected subgraphs. Large subgraphs are broken down using the Louvain Community Detection Algorithm, providing more refined results and eliminating Sybil addresses more accurately.

We identify Sybil clusters based on known patterns, here are some examples

  • Addresses transferring funds in a cluster of more than 20 addresses
  • Addresses that are funded from the same source
  • Addresses with similar activity

Examples

Cluster 319 with 110 eligible addresses

 alt text for screen readers Sample address: 0x1ddbf60792aac896aed180eaa6810fccd7839ada

Cluster 1544 with 56 eligible addresses

 alt text for screen readers Sample address: 0xc7bb9b943fd2a04f651cc513c17eb5671b90912d

Cluster 2554 with 121 eligible addresses

 alt text for screen readers Sample address: 0x3fb4c01b5ceecf307010f84c9a858aeaeab0b9fa

Cluster 3316 with 65 eligible addresses

 alt text for screen readers Sample address: 0x15bc18bb8c378c94c04795d72621957497130400


Inputs Used

  1. Raw Eligibility List (from Nansen)

  2. Excluded Entities (from Nansen)

  3. CEX Deposit Addresses (from Nansen)

  4. CEX Deposit Addresses (traced from CEXs hot wallets)

  5. Unique transaction and traces (from,to) Arbitrum

  6. Unique transaction and traces (from,to) Ethereum

  7. Internal Address list from OffChain Labs

  8. Hop Blacklist

  9. Hop eliminatedSybilAttackers

  10. Nansen address tags

  11. Other active addresses tagged manually

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published