アプリケーションに、実行時にアプリケーション証明書を取得し、それをキーとして使用して機密情報を暗号化するコードがあります。
一部の攻撃者がbyte[]
私のコードを逆コンパイルしてその証明書を取得することは可能ですか、それともその証明書は私のアプリケーションにのみ表示されますか?
証明書を取得する方法は次のとおりです。
PackageManager pm = this.getPackageManager();
String packageName = this.getPackageName();
int field = PackageManager.GET_SIGNATURES;
PackageInfo packageInfo;
packageInfo = pm.getPackageInfo(packageName, field);
Signature[] signatures = packageInfo.signatures;
// and here we have the DER encoded X.509 certificate
byte[] certificate = signatures[0].toByteArray()