タグ付けされた質問 「decompile」

4
ネイティブマシンコードを簡単に逆コンパイルできないのはなぜですか?
Java、VB.NET、C#、ActionScript 3.0などのバイトコードベースの仮想マシン言語では、インターネットからデコンパイラーをダウンロードしてバイトコードを1回実行するだけの簡単さについて時々耳にします。多くの場合、数秒で元のソースコードからそれほど離れていないものを見つけます。おそらく、この種の言語はそれに対して特に脆弱です。 私は最近、ネイティブバイナリコードに関して、これが元々どの言語で書かれていたのか(したがって、どの言語に逆コンパイルしようとするのか)を少なくとも知っているのに、なぜこれについて聞いていないのだろうと思い始めました。長い間、ネイティブマシン言語が典型的なバイトコードよりも非常にクレイジーで複雑だからだと考えていました。 しかし、バイトコードはどのように見えますか?次のようになります。 1000: 2A 40 F0 14 1001: 2A 50 F1 27 1002: 4F 00 F0 F1 1003: C9 00 00 F2 そして、ネイティブマシンコードは(16進数で)どのように見えますか?もちろん、次のようになります。 1000: 2A 40 F0 14 1001: 2A 50 F1 27 1002: 4F 00 F0 F1 1003: C9 00 00 F2 そして、指示はやや似たような心構えから来ています。 1000: mov EAX, 20 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.