Skip to content

FuzzingLabs/aleovera

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AleoVera, the aleo bytecode analyzer and disassembler

AleoVera is an Aleo analyzer & disassembler written in Python 3. AleoVera's features also include the generation of the call graph of a given Aleo compilation artifact (.avm).

Installation

sudo apt install graphviz

git clone https://github.com/FuzzingLabs/ALeoVera && cd AleoVera

pip install .

aleovera -h

Disassemble the contract's compilation artifact (AVM)

aleo new foo
cd foo
aleo build
aleovera -f ./build/main.avm

Example :

aleovera -f tests/finalize/build/main.avm -color

Print the contract's call graph

The call flow graph represents calling relationships between functions, imported functions and closures of the contract.

 python3 main.py -f tests/multiple_calls/build/main.avm -c


F.A.Q

How to run the tests?

python3 tests/test.py

How to build the documentation?

# Install sphinx
apt-get install python3-sphinx

#Create the docs folder
mkdir docs & cd docs

#Init the folder
sphinx-quickstart docs

#Modify the `conf.py` file by adding
import aleovera

#Generate the .rst files before the .html files
sphinx-apidoc -f -o . ..

#Generate the .html files
make html

#Run a python http server
cd _build/html; python3 -m http.server

License

AleoVera is licensed and distributed under the AGPLv3 license. Contact us if you're looking for an exception to the terms.

Releases

No releases published

Packages

No packages published

Languages