このプロジェクトについて

Unicorn Engineは、QEMU上に構築された軽量でマルチプラットフォーム、マルチアーキテクチャ対応のCPUエミュレータフレームワークです。CPUエミュレーションのためのクリーンでシンプル、かつアーキテクチャに依存しないAPIを提供し、ARM、ARM64(ARMv8)、M68K、MIPS、PowerPC、RISCV、SPARC、S390X、TriCore、x86(16、32、64ビット)をサポートしています。 主な特徴は以下の通りです: - 幅広いCPUファミリにわたるマルチアーキテクチャ対応 - アーキテクチャに依存しない、クリーンで直感的かつ軽量なAPI - 純粋なCで実装され、Crystal、Clojure、Visual Basic、Perl、Rust、Ruby、Python、Java、.NET、Go、Delphi/Free Pascal、Haskell、Pharo、Lua、Zig向けのバインディングを提供 - WindowsおよびUnix系システム(macOS、Linux、Android、BSD、Solaris)のネイティブサポート - Just-In-Time(JIT)コンパイルによる高いパフォーマンス - さまざまなレベルでのきめ細かなインストルメンテーション - 設計上スレッドセーフ - GPLv2ライセンスの下でリリース Unicornは、セキュリティ研究、リバースエンジニアリング、マルウェア解析、ファジングで広く使用されています。完全なシステムエミュレーションを必要とせずにCPU命令をエミュレートできるため、バイナリコードの解析、エミュレータの構築、セキュリティツールの作成に最適です。 このプロジェクトは活発にメンテナンスされており、コントリビューションを歓迎しています。コンパイルと使用方法のドキュメントはdocsディレクトリで入手でき、FAQではよくある質問に回答しています。また、コミュニティサポート用のTelegramグループもあります。