Identification of token contracts on Ethereum: standard compliance and beyond

Next to cryptocurrencies, tokens are a widespread application area of blockchains. Tokens are digital assets implemented as small programs on a blockchain. Being programmable makes them versatile and an innovative means for various purposes. Tokens can be used as investment, as a local currency in a decentralized application, or as a tool for building an ecosystem or a community. A high-level categorization of tokens differentiates between payment, security, and utility tokens. In most jurisdictions, security tokens are regulated, and hence, the distinction is of relevance. In this work, we discuss the identification of tokens on Ethereum, the most widely used token platform. The programs on Ethereum are called smart contracts, which—for the sake of interoperability—may provide standardized interfaces. In our approach, we evaluate the publicly available transaction data by first reconstructing interfaces in the low-level code of the smart contracts. Then, we not only check the compliance of a smart contract with an established interface standard for tokens, but also aim at identifying tokens that are not fully compliant. Thus, we discuss various heuristics for token identification in combination with possible definitions of a token. More specifically, we propose indicators for tokens and evaluate them on a large set of token and non-token contracts. Finally, we present first steps toward an automated classification of tokens regarding their purpose.

[1]  A. Wright,et al.  Blockchain-Based Token Sales, Initial Coin Offerings, and the Democratization of Public Capital Markets , 2017 .

[2]  Radu State,et al.  Standardising smart contracts: Automatically inferring ERC standards , 2019, 2019 IEEE International Conference on Blockchain and Cryptocurrency (ICBC).

[3]  Xiapu Luo,et al.  TokenScope: Automatically Detecting Inconsistent Behaviors of Cryptocurrency Tokens in Ethereum , 2019, CCS.

[4]  Gerhard Schwabe,et al.  To Token or not to Token: Tools for Understanding Blockchain Tokens , 2018, ICIS.

[5]  Jia-Guang Sun,et al.  Enabling Clone Detection For Ethereum Via Smart Contract Birthmarks , 2019, 2019 IEEE/ACM 27th International Conference on Program Comprehension (ICPC).

[6]  Zibin Zheng,et al.  Traveling the token world: A graph analysis of Ethereum ERC20 token ecosystem , 2020, WWW.

[7]  T. Lambert,et al.  Security token offerings , 2020, Small Business Economics.

[8]  Lei Wu,et al.  Characterizing Code Clones in the Ethereum Smart Contract Ecosystem , 2019, Financial Cryptography.

[9]  LinXiaodong,et al.  Understanding Ethereum via Graph Analysis , 2020 .

[10]  Sunil Bhirud,et al.  STEM: Secure Token Exchange Mechanisms , 2019, ACeS.

[11]  P. Hacker,et al.  Crypto-Securities Regulation: ICOs, Token Sales and Cryptocurrencies under EU Financial Law , 2017, European Company and Financial Law Review.

[12]  Yaniv Altshuler,et al.  Network Analysis of ERC20 Tokens Trading on Ethereum Blockchain , 2018 .

[13]  Osamu Mizuno,et al.  Code cloning in smart contracts: a case study on verified contracts from the Ethereum blockchain platform , 2020, Empirical Software Engineering.

[14]  Aspen Olmsted,et al.  Ethereum transaction graph analysis , 2017, 2017 12th International Conference for Internet Technology and Secured Transactions (ICITST).

[15]  Gernot Salzer,et al.  Tokens, Types, and Standards: Identification and Utilization in Ethereum , 2020, 2020 IEEE International Conference on Decentralized Applications and Infrastructures (DAPPS).

[16]  Rainer Böhme,et al.  Detecting Token Systems on Ethereum , 2018, Financial Cryptography.

[17]  P. Hacker,et al.  Crypto-Securities Regulation: ICOs, Token Sales and Cryptocurrencies under EU Financial Law , 2017, European Company and Financial Law Review.

[18]  Gernot Salzer,et al.  A Survey of Tools for Analyzing Ethereum Smart Contracts , 2019, 2019 IEEE International Conference on Decentralized Applications and Infrastructures (DAPPCON).

[19]  Gernot Salzer,et al.  Characteristics of Wallet Contracts on Ethereum , 2020, 2020 2nd Conference on Blockchain Research & Applications for Innovative Networks and Services (BRAINS).

[20]  Daniel Davis Wood,et al.  ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2014 .

[21]  Friedhelm Victor,et al.  Measuring Ethereum-Based ERC20 Token Networks , 2019, Financial Cryptography.

[22]  Chao Liu,et al.  EClone: detect semantic clones in Ethereum via symbolic transaction sketch , 2018, ESEC/SIGSOFT FSE.

[23]  Gernot Salzer,et al.  Mayflies, Breeders, and Busy Bees in Ethereum: Smart Contracts Over Time , 2019, Proceedings of the Third ACM Workshop on Blockchains, Cryptocurrencies and Contracts - BCC '19.

[24]  Kai Wang,et al.  Graph structure and statistical properties of Ethereum transaction relationships , 2019, Inf. Sci..

[25]  Gernot Salzer,et al.  Towards the Identification of Security Tokens on Ethereum , 2021, 2021 11th IFIP International Conference on New Technologies, Mobility and Security (NTMS).