Para los desarrolladores de Android que gestionan sus propias claves de firma, la huella digital de certificado SHA-256 es la identidad criptográfica única de su aplicación. En esta guía se muestran tres métodos para obtenerla a partir de un archivo APK firmado o del almacén de claves original.
Obtener el SHA-256 de un archivo APK
Estos métodos son útiles si tienes el archivo APK final firmado, pero quizás no puedes acceder fácilmente al almacén de claves original o a sus contraseñas.
Método 1A: Usar apksigner (recomendado para APKs)
La herramienta apksigner es la forma más moderna y fiable de extraer información de la firma de un APK, independientemente de si utiliza los esquemas de firma V1, V2, V3 o V4.
Paso 1: Localiza apksigner
Por ejemplo: /Users/nombredeusuario/Library/Android/sdk/build-tools/34.0.0/apksigner.
Paso 2: Ejecuta el comando
Abre el terminal o la petición de comando, ve al directorio donde se ha guardado el archivo APK y ejecuta el siguiente comando:
apksigner verify --print-certs <path/to/your/app.apk>
Paso 3: Localiza la huella digital SHA-256
En la salida se mostrarán los detalles del certificado de cada firmante. Localiza la etiqueta de resumen SHA-256:
Signer #1 certificate SHA-256 digest:
a32a43cd459f7ce6b82c552f5d876989d53e6af1c0b2d35fb677b51a1dc4f0e5
La cadena larga de caracteres hexadecimales separados por dos puntos es tu huella digital de certificado SHA-256.
Método 1B: Usar keytool en un APK
Paso 1: Localiza keytool y el APK
Asegúrate de conocer la ubicación de la utilidad keytool (que forma parte de tu instalación de JDK) y del archivo APK firmado.
Paso 2: Ejecuta el comando
Usa el siguiente comando y especifica el archivo APK firmado como almacén de claves:
keytool -printcert -jarfile <path/to/your/app.apk>
Paso 3: Localiza la huella digital SHA-256
El resultado incluirá la sección Huellas digitales de certificado. Busca la línea SHA-256.
Obtener el SHA-256 de un archivo de almacén de claves
Este es el método de facto para extraer la huella digital de certificado del archivo de almacén de claves de origen en cualquier sistema operativo.
Este es el método de facto para extraer la huella digital de certificado del archivo de almacén de claves de origen en cualquier sistema operativo.
Método 2: Usar la utilidad keytool estándar
Paso 1: Localiza las herramientas y el archivo de almacén de claves
Necesitas lo siguiente:
- Tu archivo de almacén de claves: el archivo que se usa para firmar tu aplicación (.jks o .keystore). Debes conocer su ruta, contraseña y nombre de alias de la clave que contiene.
- La utilidad keytool: esta herramienta se incluye en el kit de desarrollo de Java (JDK).
| Sistema operativo | Ubicación de Keytool |
| Windows | Normalmente se encuentra en el directorio bin de la instalación del JDK (por ejemplo, C:\Archivos de programa\Java\jdk-xx\bin\). |
| macOS/Linux | Generalmente disponible directamente en tu terminal una vez instalado el JDK. |
Paso 2: Desplázate hasta la ubicación correcta
Abre el terminal o la petición de comando. Para simplificar el siguiente paso, puedes ir al directorio que contiene el archivo de almacén de claves:
# Ejemplo: Sustitúyelo por la ruta real
cd /ruta/a/tu/directorio/de/almacén/de/claves
Paso 3: Ejecuta el comando
Usa el siguiente comando para indicar a keytool que muestre los detalles del certificado en modo detallado.
Nota: Si no se reconoce keytool, debes especificar la ruta completa a la utilidad (por ejemplo, "/ruta/a/jdk/bin/keytool").
keytool -list -v -keystore [nombre_del_almacén_de_claves.jks] -alias [alias_de_tu_clave]
- Sustituye [nombre_del_almacén_de_claves.jks] por el nombre real de tu archivo.
- Sustituye [alias_de_tu_clave] por el nombre de alias específico de tu clave de firma (por ejemplo, miclave).
Paso 4: Localiza la huella digital SHA-256
La utilidad te pedirá la contraseña del almacén de claves. Una vez introducido, el resultado mostrará los detalles del certificado.
Busca la sección Huellas digitales de certificado:
Huellas digitales de certificados:
SHA1: XX:XX:XX:XX:XX:...
SHA256: 0A:B3:C6:D9:E2:F5:81:B4:C7:D0:E3:F6:92:A5:B8:C1:D4:E7:F0:83:96:A9:BC:D1:E4:F7:03:96:A9:BC:D1:E4
Nombre del algoritmo de firma: SHA256withRSA
...
La cadena larga de caracteres hexadecimales separados por dos puntos que aparece junto a SHA256: es tu huella digital pública de certificado SHA-256.