CFR vs radare2
CFR
benf.orgradare2
radare.orgSide by side
| Figure | CFR | radare2 |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| iOS | — | Yes |
| Android | — | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Reverse Engineering Tools | 8.2 (#10) | 7.6 (#31) |
| License | The maker’s FAQ directs users to the project README for its license; the project repository identifies the license as MIT. | Most of radare2 is licensed under LGPLv3, while dependencies and plugins may have different licenses. |
| Purpose | CFR is a Java decompiler that converts Java class files back into Java source. | radare2 is a UNIX-like reverse engineering framework and command-line toolset. |
| Support | The maker invites users to email reports of problems and directs bug reports to the GitHub issue tracker. | The project points users to its official book, chats, and community channels for questions and feedback. |
Plans
In their own words
CFR
CFR is a free Java decompiler that reconstructs Java source from Java class files. It can process individual named classes, classes found on a classpath, or a whole JAR, and the command-line tool can place output in a chosen directory with the --outputdir option. Decompilation behavior can be adjusted through command-line options or an options file. The maker says CFR handles many features from Java 9, 12, and 14, and it can attempt class files from other JVM languages; those are rendered as Java rather than their original language. CFR is written in Java 6 and is said to run wherever Java 6 does. It is available as a downloadable JAR, through Maven, and from GitHub. The FAQ notes an API from version 0.135, and the project repository identifies the license as MIT. CFR handles bytecode rather than native code. Its maker also notes that some inputs fall into edge cases where output may be poor. There are no paid plans or usage limits stated.
radare2
radare2 is a free, UNIX-like reverse-engineering framework and command-line toolset for working with binaries across many architectures. It can analyze, emulate, debug, modify, and disassemble binaries, as well as support firmware analysis and decompilation. The tools can edit local files, view kernel memory, and debug programs locally or through remote GDB and WinDbg servers. Scripting is available through an embedded JavaScript interpreter or r2pipe. Its r2pm package manager searches for, installs, updates, and uninstalls plugins and tools; listed plugins include r2ghidra, r2frida, r2yara, and r2pipe. The project identifies iaito, a Qt graphical interface, as its official GUI. Installation options include the Git repository, released binaries, Nix packaging, and source builds. Most of radare2 is licensed under LGPLv3, while dependencies and plugins may have different licenses. It supports operating systems including Windows, Linux, macOS, iOS, Android, BSD, and others, alongside a broad range of architectures.