Skip to content

A prototype of overflow detection tool for Ethereum smart contracts.

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING
Notifications You must be signed in to change notification settings

Jianbo-Gao/EasyFlow

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EasyFlow

EasyFlow is a prototype of overflow detection tool for Ethereum smart contracts.

This tool is developed based on the official evm tool in go-ethereum .

A brief introduction video has been uploaded to Youtube.

Building the source

Installation instructions for Ubuntu 16.04

(Typically these commands must be run as root or through sudo.)

Install latest distribution of Go(v1.10.3):

wget https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.10.3.linux-amd64.tar.gz

Add /usr/local/go/bin to the PATH environment variable. You can do this by adding this line to /etc/profile:

export PATH=$PATH:/usr/local/go/bin

Apply the changes in /etc/profile immediately:

source /etc/profile

Install C compilers:

apt-get install -y build-essential

Clone the repository to a directory of your choosing build:

git clone git@github.com:Jianbo-Gao/EasyFlow.git

Finally, build EasyFlow core module using the following command.

cd EasyFlow
make evm

You can now run python run.py in taint_scripts to use EasyFlow.

Using the tool

Using EasyFlow

Examples can be accessed in taint_scripts/cmd.sh

Using Modified EVM Tool (Core module of EasyFlow)

Examples can be accessed in taint_contracts/cmd.sh

About

A prototype of overflow detection tool for Ethereum smart contracts.

Resources

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 75.4%
  • JavaScript 9.5%
  • CSS 6.1%
  • C 5.3%
  • C++ 0.9%
  • Solidity 0.6%
  • Other 2.2%