安装securify1.0
- ubuntu16 docker
docker run --name ubuntu16_g --privileged=true -m 50g -it -v /bdata/gcf/securify/:/workdir -e LANG="C.UTF-8" ubuntu:16.04 /bin/bash
docker start ubuntu16_g
docker exec -it ubuntu16_g /bin/bash
- souffle 1.6.2
wget https://github.com/souffle-lang/souffle/releases/download/1.6.2/souffle_1.6.2-1_amd64.deb
dpkg -i souffle_1.6.2-1_amd64.deb
# 缺少包报错
apt install -f
dpkg -i souffle_1.6.2-1_amd64.deb
- java8
#教程 https://www.cnblogs.com/lfri/p/10437266.html
#下载安装包 https://www.oracle.com/java/technologies/downloads/#java8
tar -zxvf jdk-8u202-linux-x64-demos.tar.gz
cd /usr/lib
sudo mkdir jdk
sudo mv ~/jdk1.8.0_202/usr/lib/jdk
sudo vim /etc/profile
#添加下列信息
#set java env
export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_202
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#执行命令使修改立即生效
source /etc/profile
#配置软连接
sudo update-alternatives --install /usr/bin/java java /usr/lib/jdk/jdk1.8.0_202/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jdk/jdk1.8.0_202/bin/javac 300
java -version
- solc 0.5.13
#下载solc-static-linux https://github.com/ethereum/solidity/releases
//把文件所属改为root,也可以不改,因为我是以root用户使用
$ chown root solc-static-linux
//把文件名改为solc
$ mv solc-static-linux solc
//把你的solc可执行文件添加到/usr/bin/,就可以在任何目录运行该程序
$ cp ./solc /usr/bin/
- securify
# https://github.com/eth-sri/securify
git clone https://github.com/eth-sri/securify.git
cd securify
./gradlew jar
java -jar build/libs/securify.jar -fs src/test/resources/solidity/transaction-reordering.sol
制作镜像
docker commit -m 'securify1.0' -a 'gcf' ubuntu16_g securify1.0