0

暗号化されたアセット (画像、テキストなど) を含む apk をパッケージ化しようとしました。
Android で実行すると、アセットが復号化されてから表示されます (もちろん、ソース コードに復号化キーをハードコーディングしました)。ソース コードが保護さ
れている限り、復号化キーも保護されるということは、最終的 に資産が保護されるということでしょうか。

質問:
1. ProGuardを使用して apk を難読化する場合、復号化キーは安全ですか?
2. JNI (C++)で復号化キーをコーディングし、JNIに復号化を任せると、復号化キーの方が安全ですか?

ハッキングを試すことができる、暗号化されたアセットを使用した 2 つのデモ Android アプリも作成しました。
最初のものは、難読化された Javaを使用して、AES キー (Java でハードコーディング) で資産を復号化します:
https://drive.google.com/file/d/0B9O3ChlSQJL1dVZUZmFtWlRyMXc/edit?usp=sharing

2 つ目は、 JNIを使用して、AES キー (JNI でハードコーディング) でアセットを復号化します:
https://drive.google.com/file/d/0B9O3ChlSQJL1UWU0VlprcXdVUjg/edit?usp=sharing

最初のデモで元のアセットを入手できる場合は、お知らせください。
2 番目のデモで元のアセットを入手できる場合は、それもお知らせください。
資産保護のためのより良いソリューションについての提案は大歓迎です!

4

1 に答える 1

1

コードを見ずに、難読化を行っても「平文」の秘密鍵を 100% 隠すことはできません。

于 2013-11-14T14:49:24.483 に答える