2012-07-06 27 views
35

¿Cómo hago para obtener los detalles del certificado con el que se firmó una aplicación? Tengo un montón de apk firmados con diferentes certificados y estoy tratando de agruparlos según su certificado.Obtener detalles del certificado de una apk

Puedo obtener los detalles de vencimiento del certificado utilizando el jarsigner y completar mi tarea, pero tenía curiosidad si puedo obtener más detalles o extraer la clave pública (creo que se almacenó en META-INF/cert.RSA pero no es legible)

+0

usted puede hacerlo [ejecución] (http://stackoverflow.com/a/7632973/967142) mediante la extracción del X509Certificate desde la aplicación (s) - también debe dar y O la clave pública, supongo. – Jens

+0

Me gustaría hacerlo sin código (No me lastime stackoverflow) –

+0

posible duplicado de [¿Cómo ver la identidad de la persona que firmó el apk en el dispositivo Android?] (Http://stackoverflow.com/questions/ 4324120/how-to-view-the-identity-of-person-who-signed-the-apk-on-android-device) –

Respuesta

37

intente lo siguiente:

openssl pkcs7 -inform DER -in CERT.RSA -noout -print_certs -text 
+4

Puede obtener información también con 'keytool' de java:' keytool -printcert -file CERT .RSA', pero 'openssl' es más detallado, por eso lo prefiero. – pevik

30

unzip -p Name-of-apk.apk META-INF/CERT.RSA | keytool -printcert es lo que solía.

Produce información como el propietario, el emisor, el número de serie, válida, las huellas digitales de los certificados, los algoritmos de firma y la versión.

19

Sobre la base de las respuestas existentes, aquí está la línea de comandos para on-the-fly uso de openssl(descomprimir & tubería el CERT en lugar de definir una opción -infile):

unzip -p App.apk META-INF/CERT.RSA |openssl pkcs7 -inform DER -noout -print_certs -text 
+0

no hay SHA1 – HendraWD

2

sin desembalar que pueda utilizar ApkSigner desde Android SDK y siguiente:

apksigner.jar verify --print-certs myApplication.apk 
+1

Excelente respuesta. Tenga en cuenta que a partir de Android 7, se introdujo un nuevo esquema de firma (V2) que producirá archivos APK sin CERT.RSA. Entonces los viejos métodos (que usan openssl/keytool) no funcionarán. (ver: https://source.android.com/security/apksigning/v2) –

Cuestiones relacionadas