Skip to content
SPECIFICTION
Get listed

BAP (Binary Analysis Platform) vs Refinery

BAP (Binary Analysis Platform)

binaryanalysisplatform.github.io

Refinery

github.com

Side by side

FigureBAP (Binary Analysis Platform)Refinery
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Windows—Yes
macOS—Yes
LinuxYesYes
APIYes—
Self-hostedYesYes
Plans published11
Spec score · Reverse Engineering Tools8.7 (#3)7.6 (#32)
LicenseThe GitHub repository identifies the project license as MIT.The project is licensed under the MIT License.
PurposeBAP is a suite of utilities and libraries for analyzing binary programs.Refinery is a SQL migration toolkit for Rust that runs migrations on a provided database connection.

Plans

BAP (Binary Analysis Platform)

  • BAPFree

BAP (Binary Analysis Platform) pricing →

Refinery

  • RefineryFree

Refinery pricing →

In their own words

BAP (Binary Analysis Platform)

BAP (Binary Analysis Platform) has no write-up on Specifiction yet; its figures are above.

Visit binaryanalysisplatform.github.io

Refinery

Refinery is a free, MIT-licensed SQL migration toolkit for Rust applications. It runs migrations against a database connection supplied by the application, either from embedded Rust code or through the refinery_cli command-line tool. Migrations can be SQL files or Rust modules whose migration function returns a String. Refinery records applied versions and metadata, then checks for missing or divergent migrations before running unapplied work. By default, each migration runs in its own transaction; grouped mode can place all migrations in one transaction. Migrations can also be built into a binary, so separate files are not needed at deployment. Listed drivers include postgres, tokio-postgres, mysql, mysql_async, rusqlite, and tiberius; SQLx can be used with a Config implementing Migrate. Driver selection is handled through features. Maintainers describe limited capacity to maintain additional drivers and point to external repositories, naming Klickhouse as an example. Refinery aims to support stable Rust, the previous Rust version, and nightly. To reverse a migration, users must create another migration with the reversing changes.

Visit github.com