Evaluating Machine-Learning Techniques for Detecting Smart Ponzi Schemes
Ethereum is one of the most popular platforms for exchanging cryptocurrencies and as well as the most established for peer to peer programming and smart contracts publishing. The versatility of the Solidity language allows the developers to program general-purpose smart contracts. Among the various smart contracts, there may be some fraudulent ones, whose purpose is to steal Ether from the network participants. A notorious example of one of such cases are Ponzi schemes, i.e. a financial frauds that require investors to be repaid through the investments of others who have just entered the scheme. Within the Ethereum blockchain, several contracts have been identified as being Ponzi schemes. The paper proposes a machine learning model that uses textual classification techniques to recognize contracts emulating the behavior of a Ponzi scheme. Starting from a contracts dataset containing exclusively Ponzi schemes uploaded between 2016 and 2018, we built a model that is able to classify properly Ponzi schemes contracts. We tested several models, some of which returned an overall accuracy of 99pt% on classification. The best model turned out to be the linear Support Vector Machine and the Multinomial Naive Bayes model, which provides the best results in terms of metrics evaluation.