diff --git a/README.md b/README.md index f2b1093a..2aca867e 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Mythril is a bug hunting tool and framework for the Ethereum blockchain. -## Installation +## Installation and setup Install from Pypi: @@ -18,7 +18,23 @@ $ cd mythril $ python setup.py install ``` -## Usage +You also need a [go-ethereum](https://github.com/ethereum/go-ethereum) node that is synced with the network (not that Mythril uses non-standard RPC APIs offered by go-ethereum, so other clients likely won't work). Start the node as follows: + +```bash +$ geth --rpc --rpcapi eth,admin,debug --syncmode fast +``` + +### Database initialization + +Mythril builds its own contract database to enable quick search for opcode sequences, function calls, et cetera. The initial sync is done over RPC. Unfortunately, this process is slow - however, you don't need to sync the whole blockchain to start working. If you abort the syncing process with `ctrl+c`, it will auto-resume the next time you run the `--init-db` command. + +```bash +$ ./mythril --init-db +Starting synchronization from latest block: 4323706 +Processing block 4323000, 3 individual contracts in database +(...) +``` +## Command line usage -- TODO --