Запуск утилиты Jarsigner в системе Android

Я хочу создать приложение безопасности и хочу проверить, не было ли загруженное приложение подделано, я нашел решение для проверки приложения с помощью jarsigner утилита, но я могу сделать это программно?

Я видел, что мы можем добавлять двоичные файлы и использовать их программно, могу ли я сделать это в этом сценарии? КАК??

2 ответа

Решение

Android проверяет, проверяет ли подпись APK во время установки, вам не нужно делать это вручную. Однако это не обязательно означает, что подпись является вашей подписью, любой может переподписать APK. А с недавними так называемыми эксплойтами "MasterKey", APK могут быть изменены без аннулирования подписи (что касается Android). Итак, если вы хотите убедиться, что получаете тот же двоичный файл, который ожидаете, вычислите его хэш SHA1 и т. Д. И сравните с тем, что вы ожидаете. Вы также можете проверить, является ли сертификат подписи вашим собственным. Это даст вам двоичный сертификат:

PackageManager pm = getPackageManager();
byte[] certDer = pm.getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES).signatures[0];

Для этого есть плагин maven. Вы можете использовать его для подписи вашего APK-файла. https://code.google.com/p/maven-android-plugin/wiki/SigningAPKWithMavenJarsigner

Другие вопросы по тегам