3

だから、コピー防止を削除するためにアプリのDalvikキャッシュにパッチを当てるツールがいくつかあります-実際にdalvikキャッシュをチェックする方法はありますか?

コピーされるのはDEXファイルだけですか?はいの場合、それでも同じチェックサムがありますか?また、root以外のアプリがチェックサムを取得することは実際に可能ですか?

4

2 に答える 2

4

dalvikキャッシュ内のファイルは、元のdexファイルではなく、odex(最適化されたdex)ファイルです。アプリケーションがインストールされると、そのdexファイルが抽出され、dalvikはそのアプリケーションに対して最適化パスを実行し、結果をdalvikキャッシュに保存します。

dalvikキャッシュディレクトリのディレクトリ権限は、非システムアプリケーションがディレクトリの内容を一覧表示することを防ぎますが、実行権限が設定され、odexファイル自体は誰でも読み取り可能であるため、アプリケーションはファイル名を知っていればそれらにアクセスできます。

ただし、odexファイルはデバイスごとに異なる可能性があるため、odexファイルの整合性を確認することは困難です。したがって、単純なチェックサムチェックを行うことはできません。

dexファイルの構造を深く比較し、元のdexファイルと比較する必要があると思います。本当に確認したい場合は、最初にodexファイルのデデックスを解除してから、結果を元のdexファイルと比較する必要があります。

于 2012-04-01T17:10:26.750 に答える
1

dexoptプロセスを(デバイスで直接)呼び出して、新しく生成されたdexをdalvikキャッシュ内のものと比較できると思います。もちろん、キャッシュされたdexが変更された場合、変更によってチェック自体が無効になる可能性があります。ラッキーパッチャーの作者は、アセットから外部コードをロードしてその場で実行することを提案しましたが、これは簡単ではなく、100%効果的です。

于 2012-12-02T05:15:31.723 に答える