12
Mai
2023
11:28

Wie prüfe ich die elektronische Signatur einer APK-Datei?

12 Mai 2023 11:28

Programme für Android-Smartphones werden in Form von APK-Dateien nicht nur über App-Stores, sondern auch über verschiedene Websites vertrieben. Um Integrität und Urheberschaft sicherzustellen, signiert der Entwickler die APK-Dateien mit seiner digitalen Signatur. Wie kann ich die digitale Signatur einer APK-Datei unter Linux manuell überprüfen?

1) Laden Sie das Command Tools Only-Archiv aus dem Android Studio-Paket herunter

https://developer.android.com/studio – Downloads

Auf der Suchseite suchen wir nach dem Abschnitt „Nur Befehlszeilentools“.

Darin interessiert uns das Archiv mit dem SDK-Tools-Paket für die Linux-Befehlszeile:

  • commandlinetools-linux...latest.zip

2) Extrahieren Sie das Archiv mit Pfaden, beispielsweise in den Ordner ~/android

Gehen Sie zum Ordner cmdline-tools/bin:

cd ~/android/cmdline-tools/bin

3) Starten Sie ein Terminal. Darin mit dem Dienstprogramm SDK-Manager lassen Sie uns die neueste Version der Befehlszeilenprogramme zum Erstellen von Paketen herausfinden (sie enthält ein Programm zur Überprüfung digitaler Signaturen).

./sdkmanager --list --sdk_root='' | grep build

Dabei ist --list der Befehl zum Anzeigen einer Liste der verfügbaren SDK-Versionen, --sdk_root='' – der Pfad zu Android Studio ist leer, da ich Android Studio nicht installiert habe.

4) Lesen Sie die neueste verfügbare Version des Pakets „build-tools“ vom Bildschirm, zum Beispiel 33. Kopieren Sie die Zeile in die Zwischenablage.

5) Basierend auf den Daten in Punkt 4 erstellen Sie den Befehl und führen ihn aus:

./sdkmanager "build-tools;33.0.2" --sdk_root=''

Akzeptieren Sie die Lizenzbedingungen.

Die Build-Tools-Programme werden im untergeordneten Ordner „build-tools/version number“ installiert.
zum Beispiel: build-tools/33.0.2.

6) Gehen Sie zum Ordner „build-tools/version number“.

cd build-tools/33.0.2

oder durch vollständigen Pfad

cd ~/android/cmdline-tools/bin/build-tools/33.0.2

7) Verwendung eines Skripts apksigner lassen Sie uns die digitale Signatur der APK-Datei überprüfen:

./apksigner verify -v --print-certs ~/folder/file.apk

Dabei ist ~/folder/file.apk der Pfad zur APK-Datei, deren digitale Signatur wir überprüfen möchten.

Um das Lesen aus einer Datei statt vom Bildschirm zu erleichtern, können Sie das Testergebnis in eine Datei auf der Festplatte ausgeben, indem Sie die Konsolenausgabe umleiten.

./apksigner verify -v --print-certs ~/folder/file.apk > ~/signs.txt

Quelle:

*So überprüfen Sie APK-Signaturen manuell und vergleichen Signaturschlüssel



Verwandte Veröffentlichungen