この問題を長らく調査した後、われわれの状況に対して有効な解決策は見つかっていない。Androidアプリの安全なAPIキー
Googleのアプリで使用している外部SDKとAPI用のAPIキーがあります。
This linkは、鍵を署名証明書にバインドすると言います。独自のSDKまたはAPIをお持ちの場合はこれが最適ですが、割り当てられたキーをパラメータとして指定する必要のある外部要素の場合、これはオプションではありません。
以下のリンクは、私たちの状況には当てはまりません。 Implementing (secure) Api Keys in an app
また、ProGuardを使用して私たちのコードを難読化しようとするProGuard UIとは別の設定を試みるのに3日間を費やしています。
また、AndroidManifest.xmlのキー参照も実装していますが、生成されたconfig.javaクラスに明示的に表示されています。したがって、これは実行可能な解決策でもありません。
ソースコードを保護することは、マイナー優先です。主な懸念事項は、APIキーのセキュリティです。
誰でも可能な解決策を提供できますか? ProGuardにシンプルなプロジェクトを使用させることができない場合、DexGuard製品は本当の解決策ですか?あなたは常にリモート設定
firebase使用することができます
"私たちの主な関心事はAPIキーのセキュリティです" - 誰に対するセキュリティか?あなたはロシアのマフィアがあなたのTwitterキーを盗んで、あなたの名前の下にsnarkyコメントを投稿するためにそれらを使用することを心配ですか?自動ボットを防ぎ、Google Playでプレーンテキストキーをクロールするには、あまりにも不明な変数名(AndroidManifest定数なし)を使用し、ハードコードされたバイトコードに対してキーを手動で暗号化するだけで十分です(おそらくBase64は使用しないでください)。誰かが手作業で鍵を抽出することに決めた場合、どれだけの労力をかけても成功する可能性が最も高い – user1643723