Keystone

Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings
Alternatives To Keystone
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Zydis2,778
8 days ago44mitC
Fast and lightweight x86/x86-64 disassembler and code generation library
Keystone1,987113 days ago10July 22, 2020203gpl-2.0C++
Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings
Skiko1,432
2 days ago23March 11, 202292apache-2.0Kotlin
Kotlin MPP bindings to Skia
Tensorflow Ocaml267
4 years ago4apache-2.0OCaml
OCaml bindings for TensorFlow
Udbserver266
2 months ago1April 22, 20223mitRust
Unicorn Emulator Debug Server - Written in Rust, with bindings for C, Go, Java and Python
Onnxruntime Rs220214 days ago13August 02, 202146apache-2.0Rust
Rust wrapper for Microsoft's ONNX Runtime (version 1.8)
Skia Python17911a month ago15November 07, 202234bsd-3-clauseJupyter Notebook
Python binding to Skia Graphics Library
Microx157
2 months ago10August 09, 20227apache-2.0C++
Safely execute an arbitrary x86 instruction
Frida Swift115
6 months ago1otherSwift
Frida Swift bindings
Chakracore Delphi113
2 years ago4mitPascal
Delphi and Free Pascal bindings and classes for Microsoft's ChakraCore library
Alternatives To Keystone
Select To Compare


Alternative Project Comparisons
Readme

Keystone Engine

Build Status Build Status Build status

Keystone is a lightweight multi-platform, multi-architecture assembler framework. It offers some unparalleled features:

  • Multi-architecture, with support for Arm, Arm64 (AArch64/Armv8), Ethereum Virtual Machine, Hexagon, Mips, PowerPC, RISC-V, Sparc, SystemZ & X86 (include 16/32/64bit).
  • Clean/simple/lightweight/intuitive architecture-neutral API.
  • Implemented in C/C++ languages, with bindings for Java, Masm, C#, PowerShell, Perl, Python, NodeJS, Ruby, Go, Rust, Haskell, VB6 & OCaml available.
  • Native support for Windows & *nix (with Mac OSX, Linux, *BSD & Solaris confirmed).
  • Thread-safe by design.
  • Open source - with a dual license.

Keystone is based on LLVM, but it goes much further with a lot more to offer.

Further information is available at http://www.keystone-engine.org

License

Keystone is available under a dual license:

  • Version 2 of the GNU General Public License (GPLv2). (I.e. Without the "any later version" clause.). License information can be found in the COPYING file and the EXCEPTIONS-CLIENT file.

    This combination allows almost all of open source projects to use Keystone without conflicts.

  • For commercial usage in production environments, contact the authors of Keystone to buy a royalty-free license.

    See LICENSE-COM.TXT for more information.

Compilation & Docs

See COMPILE.md file for how to compile and install Keystone.

More documentation is available in docs/README.md.

Contact

Contact us via mailing list, email or twitter for any questions.

Contribute

Keystone is impossible without generous support from our sponsors. We cannot thank them enough!

CREDITS.TXT records other important contributors of our project.

If you want to contribute, please pick up something from our Github issues.

We also maintain a list of more challenged problems in a TODO list.

Popular Bindings Projects
Popular X86 Projects
Popular Libraries Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
C Plus Plus
Security
Bindings
Arm
X86
Assembler
Reverse Engineering
Mips
Arm64
Keystone
X86 64
Hexagon
Powerpc
Sparc