keystone-engine/keystone
GitHub: keystone-engine/keystone
一个轻量级跨平台多架构汇编器框架,将汇编指令编码为多种处理器架构的机器码,提供丰富的多语言绑定。
Stars: 2611 | Forks: 533
# Keystone Engine
[](https://travis-ci.org/keystone-engine/keystone)
[](https://semaphoreci.com/aquynh/keystone)
[](https://ci.appveyor.com/project/aquynh/keystone)
Keystone 是一个轻量级的跨平台、多架构汇编器框架。
它提供了一些无与伦比的功能:
- 多架构,支持 Arm、Arm64 (AArch64/Armv8)、以太坊虚拟机、Hexagon、Mips、PowerPC、RISC-V、Sparc、SystemZ 和 X86(包括 16/32/64 位)。
- 干净/简单/轻量级/直观且架构无关的 API。
- 使用 C/C++ 语言实现,并提供 Java、Masm、C#、PowerShell、Perl、Python、NodeJS、Ruby、Go、Rust、Haskell、VB6 和 OCaml 的绑定。
- 原生支持 Windows 和 \*nix(已确认支持 Mac OSX、Linux、\*BSD 和 Solaris)。
- 设计上保证线程安全。
- 开源 - 采用双许可证。
Keystone 基于 LLVM,但通过[提供更多功能](/docs/beyond_llvm.md)进一步扩展了其能力。
更多信息请访问 http://www.keystone-engine.org
## 许可证
Keystone 采用双许可证:
- GNU 通用公共许可证第 2 版 (GPLv2)。(即不包含“任何更高版本”条款。)
许可证信息可以在 [COPYING 文件](COPYING)和 [EXCEPTIONS-CLIENT 文件](EXCEPTIONS-CLIENT)中找到。
这种组合允许几乎所有开源项目毫无冲突地使用 Keystone。
- 如需在生产环境中进行商业使用,请联系 Keystone 作者购买免版税许可证。
有关更多信息,请参阅 [LICENSE-COM.TXT](LICENSE-COM.TXT)。
## 编译与文档
有关如何编译和安装 Keystone 的信息,请参阅 [COMPILE.md](docs/COMPILE.md) 文件。
更多文档请见 [docs/README.md](docs/README.md)。
## 联系方式
如有任何问题,请通过邮件列表、电子邮件或 Twitter [联系我们](http://www.keystone-engine.org/contact/)。
## 贡献
没有[我们的赞助商](/SPONSORS.TXT)的慷慨支持,Keystone 就不可能存在。我们对他们感激不尽!
[CREDITS.TXT](CREDITS.TXT) 记录了我们项目的其他重要贡献者。
如果您想做出贡献,请从我们的 [Github issues](https://github.com/keystone-engine/keystone/issues) 中挑选一些任务。
我们还在 [TODO 列表](https://github.com/keystone-engine/keystone/wiki/TODO)中维护了一系列更具挑战性的问题。
标签:C/C++, JS文件枚举, UML, 事务性I/O, 可视化界面, 多架构, 底层开发, 日志审计, 汇编框架, 漏洞数据库, 编译器工具, 逆向工具