Мне нужно посмотреть, кто подписал приложение, которое я установил на свое устройство. Это вообще возможно сделать на устройстве или на ПК?
Как узнать личность человека, подписавшего apk на устройстве Android?
Ответы (2)
(при условии, что вы можете получить доступ к необработанному файлу apk - что обычно возможно, если вы знаете или делаете обоснованное предположение о его имени и местоположении, даже если вы не можете перечислить содержимое / data на не рутированном телефоне)
Вы можете открыть apk как zip-файл и отфильтровать текст ascii из двоичного содержимого META-INF / CERT.RSA
Или используя реальный инструмент,
jarsigner -verify -certs -verbose some_application.apk
Конечно, единственный способ проверить, что подписывающий является тем, кем они себя называют, - это получить что-то еще, подписанное с тем же ключом от этой стороны, с помощью прямых или проверенных средств и сравнить отпечатки ключей подписи - именно так Android сам проверяет, что приложение обновляется. и совместное использование идентификатора приложения осуществляется той же стороной, что и существующий APK-файл, на который они нацелены.
X.509, CN=Android, OU=Android, O=Google Inc., L=Mountain View, ST=California, C=US [certificate is valid from 22-08-08 01:13 to 08-01-36 00:13] [CertPath not validated: Path does not chain with any of the trust anchors]
. Как мне получить сертификат Google, чтобы подтвердить, что они действительно были подписавшими. (Я думаю, что уместно добавить к этому ответу, но дайте мне знать, если вы хотите, чтобы я разместил отдельный вопрос.)
- person mgd; 13.05.2015
Из получения сведений о сертификате из apk вы можете использовать следующую команду
openssl pkcs7 -inform DER -in CERT.RSA -noout -print_certs -text