Amazon resigns APKs

This commit is contained in:
M66B 2021-06-30 11:04:46 +02:00
parent 87222cd225
commit 393659c121
2 changed files with 15 additions and 3 deletions

View File

@ -1576,12 +1576,16 @@ public class Helper {
} }
static String getFingerprint(Context context) { static String getFingerprint(Context context) {
return getFingerprint(context, "SHA1");
}
static String getFingerprint(Context context, String hash) {
try { try {
PackageManager pm = context.getPackageManager(); PackageManager pm = context.getPackageManager();
String pkg = context.getPackageName(); String pkg = context.getPackageName();
PackageInfo info = pm.getPackageInfo(pkg, PackageManager.GET_SIGNATURES); PackageInfo info = pm.getPackageInfo(pkg, PackageManager.GET_SIGNATURES);
byte[] cert = info.signatures[0].toByteArray(); byte[] cert = info.signatures[0].toByteArray();
MessageDigest digest = MessageDigest.getInstance("SHA1"); MessageDigest digest = MessageDigest.getInstance(hash);
byte[] bytes = digest.digest(cert); byte[] bytes = digest.digest(cert);
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
for (byte b : bytes) for (byte b : bytes)
@ -1596,8 +1600,15 @@ public class Helper {
static boolean hasValidFingerprint(Context context) { static boolean hasValidFingerprint(Context context) {
if (hasValidFingerprint == null) { if (hasValidFingerprint == null) {
String signed = getFingerprint(context); String signed = getFingerprint(context);
String expected = context.getString(R.string.fingerprint); String[] fingerprints = new String[]{
hasValidFingerprint = Objects.equals(signed, expected); context.getString(R.string.fingerprint),
context.getString(R.string.fingerprint_amazon)
};
for (String fingerprint : fingerprints)
if (Objects.equals(signed, fingerprint)) {
hasValidFingerprint = true;
break;
}
} }
return hasValidFingerprint; return hasValidFingerprint;
} }

View File

@ -1935,5 +1935,6 @@
</string-array> </string-array>
<string name="fingerprint" translatable="false">17BA15C1AF55D925F98B99CEA4375D4CDF4C174B</string> <string name="fingerprint" translatable="false">17BA15C1AF55D925F98B99CEA4375D4CDF4C174B</string>
<string name="fingerprint_amazon" translatable="false">200D0AA43A8ADBC7BB8237023C1553F4753CA7D2</string>
<string name="public_key" translatable="false">MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtFbxEbzL8u5accPGgBw/XdyiSS5BBE6ZQ9ELpKyJ/OQN+kdYniCAOw3lsQ/GuJScy4Y2HobqbBgLL8GLHG+Yu2EHC9dLjA3v2Mc25vvnfn86BsrpQvz1poN2n+roTBdq09FWbtebJ8m0hDBVmtfRi7RhTKIL4No3kodLhksdnucKjcFheubebWKgpmvbmw7NwuELhaZmyhw8WTtnQ4rZPMhjY1JJZgzwNExXgD7zzg4pJPkuQlfkuRkkvBpHpi3C7VDnYjrBlLHngI4wv3wxQBVwJqlvAT9PmX8dOVnTsWWdJdLQBZVWphuqVY54kjBIovN+o8w03WjsV9QiOQq+XwIDAQAB</string> <string name="public_key" translatable="false">MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtFbxEbzL8u5accPGgBw/XdyiSS5BBE6ZQ9ELpKyJ/OQN+kdYniCAOw3lsQ/GuJScy4Y2HobqbBgLL8GLHG+Yu2EHC9dLjA3v2Mc25vvnfn86BsrpQvz1poN2n+roTBdq09FWbtebJ8m0hDBVmtfRi7RhTKIL4No3kodLhksdnucKjcFheubebWKgpmvbmw7NwuELhaZmyhw8WTtnQ4rZPMhjY1JJZgzwNExXgD7zzg4pJPkuQlfkuRkkvBpHpi3C7VDnYjrBlLHngI4wv3wxQBVwJqlvAT9PmX8dOVnTsWWdJdLQBZVWphuqVY54kjBIovN+o8w03WjsV9QiOQq+XwIDAQAB</string>
</resources> </resources>