2016-11-13 6 views
0

Beginnend mit Android habe ich gesehen, dass es notwendig ist, die apk zu unterschreiben. Aber darüber nachzudenken, was eine digitale Signatur ist und wofür sie dient (garantiere Authentizität und Integrität von Informationen) Ich habe gelesen, dass Android die App nicht wirklich signiert, um Authentizität und Integration zu überprüfen, sondern weil "Android diese Signatur verwendet, um sie zu identifizieren die App, die irgendeine Art von Anfrage entweder an das System oder an andere Anwendungen stellt ".Signierte apk android. Wofür verwendet Android die Signatur?

  1. Ist das so?

  2. Ich habe gelesen, dass es empfohlen wird, dass ein Entwickler seine Apps mit der gleichen Signatur signiert. Das Konzept der digitalen Signatur ist einzigartig für jedes Dokument, also wie ist es möglich, dass verschiedene Apps eines Entwicklers dieselbe Signatur haben?

  3. Ich denke, ich lese, dass durch die Unterzeichnung der apk, kann mich niemand sonst diese App ändern. Ist das so? Wie ist das?

Danke

Antwort

4
  1. Beide korrekt sind. Signaturen werden tatsächlich verwendet, um zu erkennen, dass die App, die Sie installieren, nicht geändert wurde, aber sie können auch verwendet werden, um den Zugriff von anderen Apps auf Ihrem Gerät zu beschränken. Angenommen, ein Unternehmen erstellt zwei Apps und möchte Daten zwischen ihnen teilen. Sie können eine signature-protected permission verwenden, um sicherzustellen, dass Ihre Daten nur von den Apps dieser Firma abgerufen werden können.

  2. Es ist nicht die Unterschrift, die die gleiche ist, aber der private Schlüssel verwendet, um diese Unterschrift zu erzeugen. Die Signatur ist für jeden Build Ihrer App einzigartig, wie Sie es erwarten würden. Weitere Informationen finden Sie unter https://developer.android.com/studio/publish/app-signing.html.

  3. Es ist nicht so, dass Sie die App nicht ändern können; Android erlaubt es Ihnen nicht, eine App von Version A auf Version B zu aktualisieren, wenn die Signaturen von A und B aus verschiedenen Schlüsseln generiert wurden. Wenn jemand die App manipuliert, wird die Signatur für ungültig erklärt, so dass sie mit ihrem eigenen Schlüssel zurücktreten müssen. Sie sollten Ihren Schlüssel niemals an nicht vertrauenswürdige Personen weitergeben, da dies es Ihnen ermöglichen würde, Ihre Apps zu ändern und zurückzugeben, ohne den Schlüssel zu ändern.

Natürlich Signaturen schützen nicht von Ihnen böswilligen geändert APKs, wenn Sie bereits eine authentische Version der App installiert haben, dass Android mit der neuen Version vergleichen. Deshalb sollten Sie APK-Dateien aus unbekannten Quellen nicht installieren.

+0

Ok, also wenn ich es gut verstanden habe, kannst du versuchen, eine dritte App zu ändern, ohne sie zu kündigen, aber natürlich würde der Prozess der Signaturvalidierung fehlschlagen und das Upgrate wäre nicht möglich mit Ihrem privaten Schlüssel und versuchen, zu aktualisieren, aber noch einmal würde der Prozess der Validierung der Signatur fehlschlagen. Recht? – user3254515

+1

@ user3254515 Yup! Der erste Fall würde auf eine ungültige Signatur zurückzuführen sein, der zweite auf eine Unterschriftsabweichung. –

Verwandte Themen