VeriSmart-benchmarks

VeriSmart is a safety analyzer for Ethereum smart contracts written in Solidity. This repository contains dataset that we used for experiments in our paper.

This repository has been developed and maintained by Software Analysis Laboratory at Korea University.

Structure of Contents

  • benchmarks/cve: This folder contains 487 Solidity smart contracts reported in CVE. The 60 contracts used in our S&P '20 paper are specified in labels/cve_labels.csv (the column SP20). The deduplicated 443 contracts in our Security '21 paper are specified in metadata/cve-meta.csv (the column actual_order). The sampled 300 contracts in Table 2 of our Security '21 paper are specified in labels/cve_labels.csv (the column SEC21).

  • benchmarks/zeus: This folder contains 25 Solidity smart contracts from public dataset provided by the authors of Zeus.

  • benchmarks/leaking_suicidal: This folder contains 104 Solidity smart contracts with Ether-leaking and Suicidal vulnerabilities. The contracts whose names start with 0x and end with _N.sol (where N is one of 1,2,3) are the ones constructed by us (see our Security '21 paper for more details). The others come from SmartBugs repository.

  • metadata: This folder contains metadata for contracts such as names of main contracts.

  • labels: This folder contains ground truths for CVE-reported vulnerabilities, and Ether-leaking and Suicidal vulnerabilities.

Related Publications

Questions

If you have any questions, please submit issues in this repository, or send an email to sunbeom_so@korea.ac.kr.