8 min de lectura

Firma de apps de Google Play: clave de carga, AAB y SHA

Qué es la firma de apps de Google Play (Play App Signing): diferencia entre clave de carga y clave de firma, cómo configurar el AAB en Play Console, copiar SHA-1/SHA-256 y restablecer la clave si la pierdes.

Portada del artículo Firma de apps en Play con tarjeta Play App Signing: Clave de carga, Subes el AAB, Google firma y SHA-1/SHA-256

La firma de apps de Google Play (Play App Signing) es el sistema con el que Google guarda la clave que firma los APKs que llegan a los usuarios, mientras tú firmas el Android App Bundle (.aab) con una clave de carga distinta. Si publicas una app nueva, casi seguro vas a usarla: sin ella no puedes aprovechar bien los paquetes de aplicación ni varias mejoras de Play. En esta guía verás qué es, cómo funcionan las dos claves, cómo configurarla en Play Console, qué hacer con el SHA-1/SHA-256 y cómo recuperar la clave de carga si la pierdes.

Qué es la firma de apps de Google Play

Según la ayuda oficial de Play Console, con la firma de apps de Play Google administra y protege la clave de firma de la app en la misma infraestructura segura que usa para sus propias claves. Tú te quedas con la clave de carga: la usas para firmar el .aab antes de subirlo; Google verifica esa firma y, después, firma los APKs optimizados que descarga cada dispositivo.

En la práctica significa tres cosas:

  1. No subes un APK «final» firmado para distribución en Play: subes un App Bundle.
  2. Google genera y firma los APKs por dispositivo, idioma y densidad.
  3. Si pierdes la clave de carga, puedes pedir un restablecimiento; si gestionas tú solo la clave de firma antigua y la pierdes, el daño es mucho mayor.

La documentación de Android Studio (Cómo firmar tu app) lo resume igual: con App Bundles firmas el paquete con la clave de carga y Play App Signing se encarga del resto.

Clave de carga vs. clave de firma de la app

Entender esta diferencia evita el error más común: registrar en Firebase, Maps o App Links el SHA de la clave equivocada.

Clave¿Quién la tiene?Para qué sirve
Clave de carga (upload key)Tú, en un .jks / .keystoreFirmar el .aab que subes a Play Console
Clave de firma de la appGoogle Play (por defecto)Firmar los APKs que instalan los usuarios

Requisitos técnicos habituales (ayuda oficial):

  • Clave de carga: RSA de 2048 bits o más, en almacén Java.
  • Clave generada por Google: RSA de 4096 bits (y, en apps nuevas, también esquemas de firma híbrida preparados para criptografía cuántica en dispositivos recientes).

Para máxima seguridad, no uses la misma clave como carga y como firma. Si la de carga se compromete, Google puede restablecerla; la de firma de la app es la que identifica las actualizaciones en el dispositivo.

Cómo configurarla si tu app es nueva

En apps nuevas el flujo es el más simple: al crear la app y subir el primer paquete, Play te inscribe en la firma de apps de Play con claves generadas por Google (salvo que cambies la clave de firma antes de lanzar a prueba abierta o producción).

Checklist práctica:

  1. Ten una cuenta de desarrollador de Google Play activa y entra a Play Console.
  2. Crea la app y completa lo básico del panel (ficha, políticas, etc.). Si es tu primera vez en la consola, conviene leer qué es Google Play Console.
  3. Genera un keystore de carga en Android Studio (Build → Generate Signed Bundle / APK → Create new…) o con keytool. Guarda contraseñas, alias y backup en un lugar seguro (gestor de contraseñas + copia cifrada).
  4. Compila un Android App Bundle (.aab) firmado con esa clave de carga.
  5. En Play Console, prepara una versión (prueba interna o cerrada suele ser el primer paso) y sube el .aab.
  6. Revisa la sección de firma (en la ayuda aparece bajo Protegido con Play → Distribución en Play Store → Firma de apps de Play). Confirma que la app quedó inscrita.

Solo cambia la clave de firma por defecto si necesitas reutilizarla entre apps de la misma cuenta. Para la mayoría de indies, dejar que Google la genere es lo recomendado.

Apps existentes: migrar desde APK autofirmado

Si tu app ya estaba en Play y tú gestionabas la clave de firma (típico en apps creadas antes de agosto de 2021), puedes migrar para usar App Bundles y las mejoras de Play:

  1. En Play Console abre la página de Firma de apps de Play.
  2. Acepta las condiciones del servicio.
  3. Transfiere una copia de tu clave original con la herramienta PEPK, siguiendo el asistente unificado de Google.
  4. Crea una clave de carga nueva (recomendado) y registra su certificado.

Hasta completar ese proceso, no podrás aprovechar del todo el flujo moderno de .aab con firma gestionada por Google.

SHA-1 y SHA-256: el detalle que rompe Maps y Firebase

Cuando Google firma el APK final, las huellas que ven los servicios de Google (y muchos SDKs) son las de la clave de firma de la app, no las de tu keystore de carga.

Pasos:

  1. Ve a la página de Firma de apps de Play.
  2. En Clave de firma de la app, copia SHA-1 y SHA-256.
  3. Pégalas en Google Cloud / Firebase / Maps / Facebook Login / etc.
  4. Si usas Android App Links, actualiza también assetlinks.json con esas huellas.

Si tu app usa firma híbrida lista para criptografía cuántica, la ayuda oficial indica que pueden hacer falta varias huellas (clásica y poscuántica, más la clásica para dispositivos antiguos). Registra todas las que muestre Play Console.

Error típico: «Google Sign-In / Maps funciona en debug y en el APK local, pero falla en la versión de Play». Casi siempre es porque solo registraste el SHA de la clave de carga o del debug keystore.

Si pierdes la clave de carga

No pierdes la app. Según Google:

  1. Crea un keystore nuevo en Android Studio.
  2. Exporta el certificado PEM, por ejemplo:
    keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. En Firma de apps de Play, pide restablecer la clave de carga, indica el motivo y sube el .pem.

Mientras tanto, no borres backups antiguos hasta confirmar que el restablecimiento quedó aplicado.

Relación con AAB, pruebas y publicación

Buenas prácticas (sin humo)

  • Activa verificación en 2 pasos en la cuenta de Google de Play Console.
  • Separa clave de carga y clave de firma; no compartas el .jks por chat ni lo subas al repositorio Git.
  • Documenta alias, contraseñas y ruta del keystore en un sitio privado del equipo.
  • Tras el primer release, copia los SHA de la clave de firma de Play a todos los proveedores de APIs.
  • Para probar lo que verá el usuario, usa el uso compartido interno de apps o los APKs del explorador de App Bundle.

FAQ

¿La firma de apps de Google Play es obligatoria?

Para apps nuevas que publican con App Bundle, sí: es el modelo estándar. Apps muy antiguas podían seguir con APK autofirmado, pero pierden ventajas y el camino moderno es migrar.

¿Qué diferencia hay entre clave de carga y clave de firma?

La de carga la usas tú para subir el .aab. La de firma la usa Google (o la que le hayas transferido) para firmar lo que instalan los usuarios. Los SHA de producción son los de la clave de firma.

¿Puedo recuperar mi app si pierdo el keystore?

Si estás en Play App Signing y pierdes solo la clave de carga, sí: pides el restablecimiento. Si no usas Play App Signing y pierdes la clave de firma, no podrás actualizar la misma app con esa identidad.

¿Dónde veo el SHA-1 en Play Console?

En la página de Firma de apps de Play, sección de la clave de firma de la app (no en el certificado de carga, salvo que lo necesites para otro fin).

¿Necesito firmar el AAB aunque Google firme los APKs?

Sí. Firmas el bundle con la clave de carga; Google verifica esa firma y luego firma los APKs de distribución.


Si estás armando tu primera publicación, configura la firma de apps de Google Play, sube un .aab de prueba y deja listos icono, capturas y política con las herramientas de AppConsol. Así evitas un release que no se pueda actualizar por una clave mal guardada.

Sigue aprendiendo