Pour contourner le débat sur la légitimité de l’installation de cette application sur votre téléphone, je voulais depuis un moment comprendre la question de la vérification, et vous m’avez incité à essayer de trouver un moyen de vérifier qui a signé. un apk.
Les applications Android sont signées à la manière habituelle des fichiers .jar (.apk n’est en fait qu’un fichier .jar spécial, qui n’est qu’un fichier .zip spécial.) Toutefois, il peut s'avérer utile de tracer l'authenticité des certificats à moins que vous ne connaissiez quelque chose d'intéressant. comparer aux. C’est essentiellement ce que le téléphone fait lui-même - vérifie que quelque chose qui prétend appartenir à la même personne que quelque chose qui est déjà au téléphone est réellement - le téléphone ne refuse pas d’installer des choses avec des signataires inconnus, il ne peut que (object to / clear application données de) falsifications apparentes quand quelque chose de nouveau ne correspond pas à quelque chose de vieux auquel il prétend.
Vous aurez besoin d'avoir jarsigner et keytool. Je crois que ceux-ci proviennent du JDK, qui est une condition préalable au SDK android plutôt qu'au SDK lui-même.
Tout d’abord, vous voulez essayer de vérifier la clé publique contenue dans le fichier .apk. C’est généralement dans META-INF / CERTS.RSA, mais cela peut être dans un autre fichier - unzip -l vous le dira. Vous voulez voir ce que vous pouvez trouver à ce sujet:
unzip -p suspect.apk META-INF/CERT.RSA | keytool -printcert
Cela va déverser beaucoup d'informations sur qui le signataire prétend être. Certains certificats sont apparemment eux-mêmes signés par des parties connues, mais je ne pense pas que vous puissiez faire quelque chose comme ceci:
unzip -p suspect.apk META-INF/CERT.RSA | keytool -printcert | grep MD5
unzip -p knowngood.apk META-INF/CERT.RSA | keytool -printcert | grep MD5
Si vous avez un apk de confiance connu du même auteur qui a utilisé le même certificat. Je suppose que les certificats ayant la même somme MD5 sont suffisants.
En supposant que vous ayez décidé de faire confiance au certificat, vous pourrez voir s'il a été utilisé pour signer chacun des fichiers du fichier .apk.
jarsigner -verbose -verify suspect.apk
(S'il y a plus d'un fichier .RSA dans l'archive, vous devez ajouter l'indicateur -certs pour vous indiquer quel (s) certificat (s) ont été utilisés pour signer chaque fichier, afin que vous puissiez être sûr que c'est le certificat que vous avez vérifié)
m.google.com/maps
:, vous offre-t-elle un lien de téléchargement ou quelque chose de similaire?