私は現在Dalvikバイトコードを調べていますが、コンパイラの背景が不足しているため、デザインを把握するのが少し難しいと感じています。 Dalvikに関する本を書いた人は誰もいません(または間違っている可能性があります)。だから、誰かが私にJava実践の例を含むリファレンスを提案することができますか?具体的に、どのような私が興味を持ってすることは、次のとおりです。DalvikまたはJava仮想マシンのリファレンス?
- 中間表現にバイトコードを逆コンパイルしてから それをバックコンパイルするVMの仕様(のDalvikまたはJava)を使用して生成されたバイトコード
- を解釈する方法を理解します
要するに、私が探しているのは、リバースエンジニアリングのバイトコードを覚えておいて、脆弱性を分析することだと思います。助言がありますか?
'.class'がありますファイル非常に読みやすいJavaのソースコードを生成するデコンパイラ。 – CodesInChaos
@ CodeInChaos:はい。私はデコンパイラのカップルを見つけることができますが、私は物事の仕組みを感じるために単純な逆コンパイラを書く方法を学ぼうとしています。 – Legend
@CodeInChaos通常の.classファイル用のデコンパイラは、まったく異なる仮想マシンアーキテクチャと完全に異なるバイトコードを使用するため、AndroidのDalvik VMではあまり役に立ちません。 –