9

アプリケーションマネージャー( Astroなど)を介して電話からapkアプリを抽出するのは非常に簡単です。

Google には、より効果的なライセンス管理を支持して放棄された基本的な保護がありましたが、古い保護は、Google Play 市場外での apk の無差別なシェアをより複雑にしました。

LVLにはオープンソース ライブラリがありますが、GooglePlay ベースのアンチ apk コピー保護の実装については何も見つかりませんでした。

ライセンス管理保護に加えて、同様のソリューションが役立ちます。

古い Google Play 保護と同じ方法で、一部のアプリがまだ apk のコピーを防止しているのを見てきました。

アンチ apk コピーがどのように機能するかを知っている人はいますか、または同様のオープン ソース保護ライブラリがあるかどうかは?

誰かが、この種の操作の理由は何なのかと尋ねました。

理由はたくさんあります:

-無許可のチャネルを介した APK の無差別拡散を回避する

- 最初の noob が単に APK を winzip で開くだけで、すべてのリソース (PNG 画像、ボタン、テクスチャ、DB など) を簡単に使用できるように抽出することは避けてください。

-一般的なセキュリティを向上させる

PS

すべての保護には、それを破る回避策が常にあることを知っていますが、これは、作業を悪用するための非常に簡単な方法を残すことが常に最良の選択であることを意味するものではありません.

4

1 に答える 1

2

誰かがデバイスからファイルをコピーするのを防ぐのは難しいと思います。しかし、なぜこれを達成したいのですか?安全上の理由だけである場合は、他の方法がいくつかあります。

基本的に、コードを隠すためにプロガードを使用できます。これで十分でない場合、私はJavaで知っています.jarファイルを暗号化し、カスタムClassLoaderを使用してファイルを復号化し、クラスをロードできるメカニズムがあります。

これはアンドロイドでも使えます。

  1. c と jni を使用して、暗号化/復号化 API を提供します。(.so ファイルの逆コンパイルはより複雑です。)
  2. コアを jar ファイルにパッケージ化します。jar を暗号化し、assets/.
  3. 新しい DexClassLoader を使用して、デフォルトのものを置き換えます。.jar ファイルの復号化とクラスのロードを試みます。
于 2012-12-17T06:14:15.383 に答える