Skip to the content.

Byron v0.8a1.dev66 “Don Juan”

Byron is a source code fuzzer designed to support assembly or higher level languages. It starts by generating a set of random programs, which are then iteratively improved by an evolutionary algorithm. Internally, it encodes candidate solutions as typed, directed multigraphs, and can effectively handle complex, realistic structures containing local and global variables, conditional and looping statements, and subroutines.

Programs can be evaluated using a user-defined Python function or an external tool, such as an interpreter or a simulator. Different types of parallelization are supported out of the box, from simple multithreading to the creation of temporary directories where multiple subprocesses are concurrently spawned.

Byron, formerly known as MicroGP v4, was made possible by the contributions of many individuals over many years.

Installation and Usage

⚠️ Byron is currently in alpha and under active development

The Python package is available on PyPi, the source code is on GitHub.

Contacts

License

Copyright (c) 2023-24 Giovanni Squillero and Alberto Tonda
Byron is free and open-source software, and it is distributed under the Apache License 2.0.