Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Understanding Ethereum via Graph Analysis

Published: 17 April 2020 Publication History

Abstract

Ethereum, a blockchain, supports its own cryptocurrency named Ether and smart contracts. Although more than 8M smart contracts have been deployed on Ethereum, little is known about the characteristics of its users, smart contracts, and the relationships among them. We conduct the first systematic study on Ethereum by leveraging graph analysis to characterize three major activities on Ethereum, namely money transfer, smart contract creation, and smart contract invocation. We collect all transaction data, construct three graphs from the data to characterize major activities via graph analysis, and discover new insights. Moreover, we address three security issues based on graphs.

References

[1]
Bitcoin Wiki. 2018. Bitcoin Script. Retrieved from https://en.bitcoin.it/wiki/Script.
[2]
Coin Market Cap. 2018. CrypoCurrency Market Capitalizations. Retrieved from https://coinmarketcap.com/.
[3]
Ethereum. 2018. Ethereum Homestead Documentation. Retrieved from http://www.ethdocs.org/en/latest/.
[4]
Ethereum community. 2018. Etherscan, The Ethereum Blockchain Explorer. Retrieved from https://etherscan.io/.
[5]
Mokhtar Bin Abdullah. 1990. On a robust correlation coefficient. J. Roy. Stat. Soc. Series D (The Stat.) 39, 4 (1990), 455--460.
[6]
Andreas M. Antonopoulos. 2014. Mastering Bitcoin: Unlocking Digital Cryptocurrencies. O’Reilly Media, Inc.
[7]
Annika Baumann, Benjamin Fabian, and Matthias Lischke. 2014. Exploring the Bitcoin network. In Proceedings of the International Conference on Web Information Systems and Technologies.
[8]
Bitcoin. 2017. Change. Retrieved from https://en.bitcoin.it/wiki/Change.
[9]
Bok. 2016. Ethereum Network Attackers IP Address Is Traceable. Retrieved from https://www.bokconsulting.com.au/blog/ethereum-network-attackers-ip-address-is-traceable/.
[10]
Sergey Brin and Lawrence Page. 1998. The anatomy of a large-scale hypertextual web search engine. Comput. Netw. ISDN Syst. 30 (1998), 107--117.
[11]
Andrei Broder, Ravi Kumar, Farzin Maghoul, Prabhakar Raghavan, Sridhar Rajagopalan, Raymie Stata, Andrew Tomkins, and Janet Wiener. 2000. Graph structure in the web. Comput. Netw. 33 (2000), 309--320.
[12]
Christian Cachin, A. D. Caro, Pedro Moreno-Sanchez, Björn Tackmann, and Marko Vukolic. 2017. The transaction graph for modeling blockchain semantics. Retrieved from https://eprint.iacr.org/2017/1070.pdf.
[13]
Wren Chan and Aspen Olmsted. 2017. Ethereum transaction graph analysis. In Proceedings of the International Conference for Internet Technology and Secured Transactions.
[14]
Jérémy Charlier, Sofiane Lagraa, and Jerome Francois. 2017. Profiling smart contracts interactions with tensor decomposition and graph mining. In Proceedings of the European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases.
[15]
Ting Chen, Xiaoqi Li, Xiapu Luo, and Xiaosong Zhang. 2017. Under-optimized smart contracts devour your money. In Proceedings of the IEEE 24th International Conference on Software Analysis, Evolution and Reengineering.
[16]
Ting Chen, Xiaoqi Li, Ying Wang, Jiachi Chen, Zihao Li, Xiapu Luo, Man Ho Au, and Xiaosong Zhang. 2017. An adaptive gas cost mechanism for Ethereum to defend against under-priced DoS attacks. In Proceedings of the International Conference on Information Security Practice and Experience.
[17]
Ting Chen, Zihao Li, Hao Zhou, Jiachi Chen, Xiapu Luo, Xiaoqi Li, and Xiaosong Zhang. 2018. Towards saving money in using smart contracts. In Proceedings of the IEEE/ACM 40th International Conference on Software Engineering: New Ideas and Emerging Technologies Results.
[18]
Ting Chen, Yuxiao Zhu, Zihao Li, Jiachi Chen, Xiaoqi Li, Xiapu Luo, Xiaodong Lin, and Xiaosong Zhang. 2018. Understanding Ethereum via graph analysis. In Proceedings of the IEEE Conference on Computer Communications.
[19]
Aaron Clauset, Cosma Rohilla Shalizi, and Mark E. J. Newman. 2009. Power-law distributions in empirical data. SIAM Rev. 51 (2009), 661--703. Issue 4.
[20]
Ethereum. 2018. JavaScript API. Retrieved from https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethgettransaction.
[21]
Etherscan. 2018. Ethereum Developer APIs. Retrieved from https://etherscan.io/apis#accounts.
[22]
Gnosis. 2018. Ethereum Multisignature Wallet. Retrieved from https://github.com/Gnosis/MultiSigWallet.
[23]
Alex Greaves and Benjamin Au. 2015. Using the bitcoin transaction graph to predict the price of bitcoin. Retrieved from http://snap.stanford.edu/class/cs224w-2015/projects_2015/Using_the_Bitcoin_Transaction_Graph_to_Predict_the_Price_of_Bitcoin.pdf.
[24]
Neville Grech, Michael Kong, Anton Jurisevic, Lexi Brent, Bernhard Scholz, and Yannis Smaragdakis. 2018. MadMax: Surviving out-of-gas conditions in Ethereum smart contracts. In Proceedings of the ACM on Programming Languages.
[25]
Hiddentao. 2016. Prevent replay attacks. Retrieved from https://github.com/hiddentao/smart-solidity-docs/blob/master/PreventReplayAttacks.md.
[26]
IC3. 2016. GasToken.io—Cheaper Ethereum Transactions, Today. Retrieved from https://gastoken.io/.
[27]
Phanny ITH. 2009. Guideline for Interpreting Correlation Coefficient. Retrieved from https://www.slideshare.net/phannithrupp/guideline-for-interpreting-correlation-coefficient.
[28]
Jerome Kehrli. 2016. Blockchain 2.0—From Bitcoin Transactions to Smart Contract applications. Retrieved from https://www.niceideas.ch/blockchain_2.0.pdf.
[29]
Kentstate. 2019. SPSS Tutorials: Pearson Correlation. Retrieved from https://libguides.library.kent.edu/SPSS/PearsonCorr.
[30]
Lucianna Kiffer, Dave Levin, and Alan Mislove. 2018. Analyzing Ethereum’s contract topology. In Proceedings of the Internet Measurement Conference.
[31]
Sergio Demian Lerner. 2015. RSK-White Paper Overview. Retrieved from https://docs.rsk.co/RSK_White_Paper-Overview.pdf.
[32]
Xiaoqi Li, Peng Jiang, Ting Chen, Xiapu Luo, and Qiaoyan Wen. 2017. A survey on the security of blockchain systems. Fut. Gen. Comput. Syst. (Aug. 2017).
[33]
Loi Luu, Duc-Hiep Chu, Hrishi Olickel, Prateek Saxena, and Aquinas Hobor. 2016. Making smart contracts smarter. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security.
[34]
Damiano Di Francesco Maesa and Laura Ricci. 2016. An analysis of the Bitcoin users graph: Inferring unusual behaviours. In Proceedings of the International Workshop on Complex Networks and their Applications.
[35]
Natarajan Meghanathan. 2016. Assortativity analysis of real-world network graphs based on centrality metrics. Comput. Inf. Sci. 9 (2016), 7--25. Issue 3.
[36]
Sarah Meiklejohn, Marjori Pomarole, Grant Jordan, Kirill Levchenko, Damon McCoy, Geoffrey M. Voelker, and Stefan Savage. 2013. A fistful of bitcoins: Characterizing payments among men with no names. In Proceedings of the Internet Measurement Conference.
[37]
Nick Mwenda. 2018. Last winner game jams Ethereum network—Is Ethereum (ETH) dominance at stake? Retrieved from https://cryptoglobalist.com/2018/08/17/last-winner-game-jams-ethereum-network-is-ethereum-eth-dominance-at-stake/.
[38]
PeckShield. 2018. Pwning Fomo3D Revealed: Iterative, Pre-Calculated Contract Creation For Airdrop Prizes! Retrieved from https://medium.com/@peckshield/pwning-fomo3d-revealed-iterative-pre-calculated-contract-creation-for-airdrop-prizes-31944a01387e.
[39]
Fergal Reid and Martin Harrigan. 2011. An analysis of anonymity in the Bitcoin system. In Security and Privacy in Social Networks. 197--223.
[40]
Sara Nadiv Soffer and Alexei Vazquez. 2005. Network clustering coefficient without degree-correlation biases. Phys. Rev. E 71, 5 (2005).
[41]
Shahar Somin, Goren Gordon, and Yaniv Altshuler. 2018. Network analysis of ERC20 tokens trading on Ethereum blockchain. In Proceedings of the International Conference on Complex Systems.
[42]
Flora Sun. 2018. UTXO vs Account/Balance Model. Retrieved from https://medium.com/@sunflora98/utxo-vs-account-balance-model-5e6470f4e0cf.
[43]
Petar Tsankov, Andrei Dan, Dana Drachsler-Cohen, Arthur Gervais, Florian Bünzli, and Martin Vechev. 2018. Securify: Practical security analysis of smart contracts. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security.
[44]
Fabian Vogelsteller and Vitalik Buterin. 2015. ERC-20 Token Standard. Retrieved from https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md.
[45]
Xiaomin Wang, Matthieu Latapy, and Michele Soria. 2012. Deciding on the type of the degree distribution of a graph from traceroute-like measurements. Int. J. Comput. Netw. Commun. 4, 3 (2012), 151--168.
[46]
Gavin Wood. 2018. Ethereum: A secure decentralised generalised transaction ledger. Retrieved from https://ethereum.github.io/yellowpaper/paper.pdf.
[47]
Steve Y. Yang and Jinhyoung Kim. 2015. Bitcoin market return and volatility forecasting using transaction network flow properties. In Proceedings of the IEEE Symposium Series on Computational Intelligence.
[48]
Chen Zhao and Yong Guan. 2015. A Graph-based investigation of bitcoin transactions. In Proceedings of the IFIP International Conference on Digital Forensics.
[49]
Yi Zhou, Deepak Kumar, Surya Bakshi, Joshua Mason, Andrew Miller, and Michael Bailey. 2018. Erays: Reverse engineering Ethereum’s opaque smart contracts. In Proceedings of the USENIX Security Symposium.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Internet Technology
ACM Transactions on Internet Technology  Volume 20, Issue 2
Special Section on Emotions in Conflictual Social Interactions and Regular Papers
May 2020
256 pages
ISSN:1533-5399
EISSN:1557-6051
DOI:10.1145/3386441
  • Editor:
  • Ling Liu
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 April 2020
Accepted: 01 January 2020
Revised: 01 November 2019
Received: 01 June 2019
Published in TOIT Volume 20, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Blockchain
  2. Ethereum
  3. contract creation graph
  4. contract invocation graph
  5. graph analysis
  6. money flow graph

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • National Natural Science Foundation of China
  • Hong Kong RGC Project
  • National Key R8D Program of China

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)485
  • Downloads (Last 6 weeks)46
Reflects downloads up to 03 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)BitTraceInternational Journal of Information Technologies and Systems Approach10.4018/IJITSA.33900317:1(1-21)Online publication date: 9-Apr-2024
  • (2024)Data depth and core-based trend detection on blockchain transaction networksFrontiers in Blockchain10.3389/fbloc.2024.13429567Online publication date: 16-Feb-2024
  • (2024)Phishing behavior detection on different blockchains via adversarial domain adaptationCybersecurity10.1186/s42400-024-00237-57:1Online publication date: 19-Jun-2024
  • (2024)Who is Who on Ethereum? Account Labeling Using Heterophilic Graph Convolutional NetworkIEEE Transactions on Systems, Man, and Cybernetics: Systems10.1109/TSMC.2023.332952054:3(1541-1553)Online publication date: Mar-2024
  • (2024)DAppSCAN: Building Large-Scale Datasets for Smart Contract Weaknesses in DApp ProjectsIEEE Transactions on Software Engineering10.1109/TSE.2024.338342250:6(1360-1373)Online publication date: 29-Mar-2024
  • (2024)Blockchain Data Mining With Graph Learning: A SurveyIEEE Transactions on Pattern Analysis and Machine Intelligence10.1109/TPAMI.2023.332740446:2(729-748)Online publication date: 1-Feb-2024
  • (2024)Toward Understanding Asset Flows in Crypto Money Laundering Through the Lenses of Ethereum HeistsIEEE Transactions on Information Forensics and Security10.1109/TIFS.2023.334627619(1994-2009)Online publication date: 1-Jan-2024
  • (2024)A General Framework for Account Risk Rating on Ethereum: Toward Safer Blockchain TechnologyIEEE Transactions on Computational Social Systems10.1109/TCSS.2023.326338211:2(1865-1875)Online publication date: Apr-2024
  • (2024)Characterizing, Detecting, and Correcting Comment Errors in Smart Contract Functions2024 IEEE International Conference on Software Services Engineering (SSE)10.1109/SSE62657.2024.00050(282-292)Online publication date: 7-Jul-2024
  • (2024)Classification Method of Ethereum Smart Contracts Based on Statistical Model Checking2024 IEEE 24th International Conference on Software Quality, Reliability and Security (QRS)10.1109/QRS62785.2024.00078(733-744)Online publication date: 1-Jul-2024
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media