Smart-Corpus: an Organized Repository of Ethereum Smart Contracts Source Code and Metrics

11/03/2020
by   Giuseppe Antonio Pierro, et al.
0

Many empirical software engineering studies show that there is a great need for repositories where source code is acquired, filtered and classified. During the last few years, Ethereum block explorer services have emerged as a popular project to explore and search Ethereum blockchain data such as transactions, addresses, tokens, smart-contracts' source code, prices and other activities taking place on the Ethereum blockchain. Despite the availability of this kind of services, retrieving specific information useful to empirical software engineering studies, such as the study of smart-contracts' software metrics might require many sub-tasks, such as searching specific transactions in a block, parsing files in HTML format and filtering the smart-contracts to remove duplicated code or unused smart-contracts. In this paper we afford this problem creating Smart Corpus', a Corpus of Smart Contracts in an organized reasoned and up to date repository where Solidity source code and other metadata about Ethereum smart contracts can easily and systematically be retrieved. We present the Smart Corpus' design and its initial implementation and we show how the data-set of smart contracts' source code in a variety of programming languages can be queried and processed, get useful information on smart contracts and their software metrics. The Smart Corpus aims to create a smart-contracts' repository where smart contracts data (source code, ABI and byte-code) are freely and immediately available and also classified based on the main software metrics identified in the scientific literature. Smart-contracts source code has been validated by EtherScan and each contract comes with its own associated software metrics as computed by the freely available software PASO. Moreover, Smart Corpus can be easily extended, as the number of new smart-contracts increases day by day.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/26/2018

The Use of Smart Contracts and Challenges

In December 2017, "CryptoKitties", a game on the Ethereum blockchain bec...
research
07/16/2020

Inheritance software metrics on smart contracts

Blockchain systems have gained substantial traction recently, partly due...
research
02/05/2018

Smart Contracts Software Metrics: a First Study

Smart contracts (SC) are software codes which reside and run over a bloc...
research
05/11/2023

SigRec: Automatic Recovery of Function Signatures in Smart Contracts

Millions of smart contracts have been deployed onto Ethereum for providi...
research
03/12/2021

A Multi-Modal Transformer-based Code Summarization Approach for Smart Contracts

Code comment has been an important part of computer programs, greatly fa...
research
04/27/2022

Quantum Prudent Contracts with Applications to Bitcoin

Smart contracts are cryptographic protocols that are enforced without a ...
research
01/17/2021

Demystifying Pythia: A Survey of ChainLink Oracles Usage on Ethereum

Smart contracts are dependent on oracle systems for their adoption and u...

Please sign up or login with your details

Forgot password? Click here to reset