2017-01-07 4 views
2

私はAndroidアプリを開発しており、コードの一部は非常にプライベートで機密です。私は安全性を高めるために私のコードに暗号化アルゴリズムを作ります。.apkを使用すると、そのソースコードを抽出できます。 Androidアプリは安全ですか?

最近、.apkファイルを持っている人は、100%の正しいSourceでJavaソースコードを抽出できます。

だけではなく、それは、人々はまた

ストアSourceをGoogle Playからの.apk得ることができ、それは私の.apkはすべて私のソースコード(Javaの、.xmlのレイアウト、ライブラリー)を表示することができた人を意味していますか?はいの場合は、安全なアプリを保有するためのすべての苦労は達成されません。

+2

あなたのソースコードが表示されないようにするよりも、アプリを安全にすることを検討する必要があります。あなたは機密情報がアプリケーションにハードコードされていますか?それとも、人々があなたのレイアウトをコピーしないようにしたいのですか?誰かが、ソースコードを見なくてもアプリケーションを再作成しようとする可能性があるからです。 –

+0

独自のscsiコマンドコードを含む暗号化機能を導入しました。他の人に見せてはいけません。再作成しても問題ありませんが、専有命令が流出した場合は危険です。はい、私はこの後に私のアプリをより安全にする必要があります –

答えて

3

はい、うまくいけば、他の人が難しい労働プロジェクトを手に入れるのを防ぐ方法がありますfull source code。 あなたのAndroidアプリケーションにProGuardを有効にします。 antProGuardに電話してコードを難読化します。 よりになりますあなたのコードはpossible.Many関数と変数名限りは誰もデコードしないか、まったく理解:)

詳細はここにあることを縮め形に置き換えられます縮め:https://developer.android.com/studio/build/shrink-code.html

Note that enabling ProGuard takes build time much more than normal build time.So better to do it before release of your app.

2

このプロセスは、Androidリバースエンジニアリングと呼ばれています。 @ ash12によると、ProGuardを使用してソースコードを難読化することができます。しかし、それはソースでapiトークン、パスワードなどのようなあなたのアプリの認証情報を保存するならば、深刻なセキュリティ脅威になります。

また、ProGuardの商用バージョンであるDexGuardをご覧ください。また、レイアウトファイルを暗号化し、マニフェストやその他のリソースファイルの内容を(他の多くのものと一緒に)難読化することもできます。

関連する問題