逆コンパイル

提供: セキュリティ
2014年12月7日 (日) 18:22時点におけるDaemon (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク

逆コンパイル (decompile, デコンパイル) とは、コンパイルとは逆の行いをします。オブジェクトコードをソースコードに変換することです。そのため、逆コンパイルに用いられるプログラムは、逆コンパイラと呼ばれます。マルウェア解析、静的なプログラムの解析などを行う目的で、逆コンパイルされます。

読み方

逆コンパイル
ぎゃく こんぱいる
デコンパイル
でこんぱいる
decompile
でこんぱいる

概要

逆コンパイルは、プログラムの調査を行うときに、行います。 ソースコードは、持っていないが、オブジェクトファイルを持っているときに、オブジェクトのプログラムがどのように動作するのか、調査するときに、オブジェクトからプロプラム言語に変換します。

ソースコードは、コンパイラがコンパイルすることにより、オブジェクトファイル(実行ファイル)ができます。 オブジェクトファイルは、逆コンパイラで逆コンパイルすることで、ソースコードになります。図式すると以下の通りです。

ソースコード(1) -> コンパイラ -> オブジェクトファイル -> 逆コンパイラ -> ソースコード(2)

上記のソースコード(1)とソースコード(2)は、たいていの場合、完全な同一のソースコードにはなりません。

逆アセンブラ

マシン語からアセンブリ言語に逆コンパイルするツールは、逆アセンブラと呼ばれます。

関連項目




スポンサーリンク