タグ

javaとバイトコードに関するnantanのブックマーク (2)

  • Javaのhello worldの読み方 | mwSoft

    前書き お馴染み、hello worldのソース。 class Hello { public static void main(String[] args) { System.out.println("hello world"); } } このコードはコンパイルされると、こんなバイトコードになります。 ca fe ba be 00 00 00 32 00 22 07 00 02 01 00 05 48 65 6c 6c 6f 07 00 04 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 74 01 00 06 3c 69 6e 69 74 3e 01 00 03 28 29 56 01 00 04 43 6f 64 65 0a 00 03 00 09 0c 00 05 00 06 01 00 0f 4c 69 6e 65 4e

  • Java解析にはバイトコードの知識が必要かもしれない - KENJI’S BLOG

    Javaアプリケーションの解析をやっていて、やはりJavaバイトコードの知識は必須だと思いました。確かに、jadをはじめ、Javaデコンパイラの性能は良く、ほぼ間違いなくデコンパイルは成功するのですが、問題は、デコンパイルが完了しても「JVM INSTR」(認識できなかったバイトコードが見つかった場合に出力される)が結構頻繁に現れることと、再度コンパイルするために必要となるファイルを、別途用意しなければならない場合が多々あることです。どちらの場合においても、デコンパイルにより出力されたデータに修正、もしくは追加を行う必要があり、また、バイナリにほんの少しの修正を加えたいだけであっても、デコンパイル → 修正 → コンパイルという動作を行わなければならないため、かなりの手間となります。 例えば、「Doorman」というツールがあります。このツールは、HTTPのProxyとして動作し、通信デー

    nantan
    nantan 2009/04/07
    出来たら便利そう
  • 1