Key Information

The challenge is finished.

Challenge Overview

Mythril is a security analysis tool for Ethereum smart contracts, written in Python. It uses the LASER-ethereum symbolic virtual machine to detect various types of issues. It can be used to analyze source code, or as a nmap-style black-box blockchain scanner (an "ethermap", if you will).

In this challenge we want you to do some refactoring of this tool, to ensure compatibility with the current Ethereum, working Dockerfile, and easy, bug-free installation for end-users:
  • Remove the dependency on web3. This involves refactoring the IPC code to work without web3. The reason for doing this is that web3 forces the user of legacy Ethereum packages;
  • Once web3 is removed, update eth-utils, eth-abi, and other eth-xxx packages. Test the myth tool and fix any incompatibilities with the updated packages.
  • Update and test the Dockerfile.
Be sure to check the following issue tickets in the repo, and ensure that all of them are resolved by your update of the code:

Final Submission Guidelines

  • Submit Git patch against the latest commit (75ac7c9aec2163cab18db952dd727a4134cd559f at the moment of writing) in master branch of mythril repo.
  • Provide verification instructions and a brief verification video.


2018 Topcoder(R) Open


Final Review:

Community Review Board


User Sign-Off


ID: 30063470