Notificación

You can now request help from the Help page in your Play Console account.  If you don't have access to Play Console, ask your account admin for an invite.

Usar la firma de aplicaciones de Play

Con la firma de aplicaciones de Play, Google gestiona y protege la clave de firma de tu aplicación en la misma infraestructura segura que utiliza Google para guardar sus propias claves. Estas claves están protegidas por el servicio de gestión de claves (KMS) de Google. Si quieres consultar más información sobre esta infraestructura líder del sector, lee el informe sobre seguridad de Google Cloud.
 

¿Por qué usar la firma de aplicaciones de Play? Además de proteger tus claves frente a pérdidas o vulneraciones permanentes, registrarte en la firma de aplicaciones de Play te permite acceder a las mejoras para tus Android App Bundles (.aab). Si permites que Google firme los APKs de distribución optimizados que se generan a partir de tus app bundles, podrás acceder a servicios valiosos, como la protección automática y la traducción automática de cadenas con modelos de Gemini. Los juegos obtienen acceso a servicios automáticos adicionales, como Play Games Sidekick, la función para jugar durante la descarga y pruebas sin coste para títulos de pago.

Para configurar la firma de aplicaciones de Play, debes ser el propietario de la cuenta.

Conceptos básicos

Cuando usas la firma de aplicaciones de Play, trabajas con dos claves distintas. Es fundamental conocer la diferencia entre ambas, así como sus formatos técnicos, para evitar problemas de autenticación con APIs de terceros.

Tipo de clave ¿Quién la tiene? Detalles técnicos y finalidad

Clave de subida

Tú (¡guárdala de forma segura!)

  • Formato: se almacena en un almacén de claves de Java (.jks o .keystore).
  • Requisito: debe ser una clave RSA de al menos 2048 bits.
  • Finalidad: usas esta clave para firmar tu app bundle antes de subirlo a Play Console. Google la usa para verificar tu identidad. Si se vulnera o se pierde, Google puede cambiarla.
Clave de firma de aplicación

Google Play

  • Formato: asociado a un certificado público (.der o .pem).
  • Requisito: las claves generadas por Google son RSA de 4096 bits. Las claves personalizadas deben ser claves RSA de 2048 bits o más.
  • Finalidad: Google usa esta clave para firmar los APKs finales que se envían a los dispositivos de los usuarios. Puedes dejar que Google la genere o proporcionar una propia. Esta clave no se puede cambiar si la gestionas por tu cuenta (sin la firma de aplicaciones de Play) y la pierdes.
Preparada para la computación cuántica Google Play
  • Formato: dos claves asociadas a certificados públicos (.der o .pem).
  • Requisito: la firma híbrida preparada para la computación cuántica combina una clave RSA clásica de 4096 bits y una clave ML-DSA-65 poscuántica. Google genera una nueva clave clásica para la firma híbrida que es diferente de la clave clásica que usa para dispositivos anteriores a Android 17, lo que hace que tu aplicación use tres claves distintas.
  • Finalidad: los dispositivos con Android 17 o versiones posteriores verifican la aplicación mediante la versión 3.2 del esquema de firma de APKs para protegerla frente a futuros ataques de computación cuántica. Los dispositivos que ejecutan versiones anteriores de Android siguen verificando la aplicación con los bloques de firma clásicos.

Nota: Para obtener la máxima seguridad, la clave de subida y la clave de firma de aplicación deben ser diferentes.

Cómo firma Google tu aplicación: cuando Google genera y firma tus APKs con la clave de firma de aplicación, usa apksigner para añadir dos sellos al archivo de manifiesto de tu aplicación (com.android.stamp.source y com.android.stamp.type). Estos sellos garantizan que tus APKs se puedan rastrear de forma segura hasta el firmante original.

Configurar la firma de aplicaciones de Play

El proceso de configuración varía en función de si vas a publicar una aplicación nueva o a migrar una que ya tengas.

Para aplicaciones nuevas

  1. Crear una aplicación: tu aplicación se registrará automáticamente en la firma híbrida preparada para la computación cuántica con claves generadas por Google. También generamos una clave clásica independiente que se usa en los bloques de firma que se reconocen en dispositivos con Android 16 o versiones anteriores.
  2. Crear una clave de subida: genera un almacén de claves para firmar el app bundle de la versión. Puedes generarlo en Android Studio o usar la utilidad keytool de Java desde la línea de comandos.
  3. Subir tu app bundle: ve a Play Console y prepara una nueva versión. De forma predeterminada, cuando subes tu app bundle, tu aplicación se registra automáticamente en la firma híbrida preparada para la computación cuántica con claves generadas por Google.
  4. Cambiar la clave de firma de aplicación (opcional): los desarrolladores expertos que quieran gestionar su propia clave pueden cambiar este valor predeterminado antes de que se lance una versión en el canal de prueba abierta o en el de producción. Para ello, ve a Protegida con Play > Distribución en Play Store > Ir a Firma de aplicaciones de Play y haz clic en Cambiar la clave de firma de la aplicación. A continuación, puedes elegir entre las siguientes opciones:
  • Usar la misma clave que otra aplicación de esta cuenta de desarrollador
  • Proporcionar una copia de tu clave de firma de aplicación (siguiendo las instrucciones)

Para aplicaciones que ya tengas

Si actualmente gestionas tus propias claves y subes APKs, puedes cambiar a la firma de aplicaciones de Play para aprovechar las ventajas de los app bundles y las mejoras de Play.

  1. En Play Console, ve a Protegida con Play > Distribución en Play Store > Ir a Firma de aplicaciones de Play.
  2. Si aún no lo has hecho, acepta los términos del servicio.
  3. Transfiere una copia de tu clave original: descarga la herramienta PEPK y sigue las instrucciones unificadas paso a paso para cifrar y subir tu clave de firma de aplicación desde cualquier repositorio.
Crea una nueva clave de subida (recomendado): genera una clave nueva en Android Studio para usarla como clave de subida a partir de ahora y registra su certificado en Play Console.

Registrarse con proveedores de APIs

Si tu aplicación usa APIs (como Google Maps, OAuth o Inicio de sesión con Facebook), esos servicios autentican tu aplicación mediante la huella digital de tu clave de firma de aplicación.

Debido a que Google firma el APK final, debes registrar la huella digital de la clave de firma de aplicación que custodia Google en tus proveedores de APIs, no solo tu clave de subida local.

  1. Ve a Protegida con Play > Distribución en Play Store > Ir a Firma de aplicaciones de Play.
  2. Desplázate hasta la sección Clave de firma de aplicación.
  3. Copia las huellas digitales necesarias (SHA-1 o SHA-256). Si tu aplicación usa la firma híbrida preparada para la computación cuántica, debes copiar las huellas digitales de tres claves y registrar cada una de ellas con tus proveedores de APIs: tus nuevas claves clásicas y PQC usadas en dispositivos más recientes, y tu clave clásica usada en dispositivos más antiguos.
  4. Pega estas huellas digitales en la consola del proveedor de la API (por ejemplo, la consola de Google Cloud).
    Nota: Actualiza tu archivo assetlinks.json con estas huellas digitales si usas Android App Links.

Gestionar tus claves

Actualizar tu clave de firma de aplicación

Si tu clave de firma de aplicación se ha vulnerado o necesitas una clave con mayor seguridad criptográfica, puedes solicitar una actualización anual de la clave para todas las descargas en Android 17 (nivel 37 de la API) y versiones posteriores.

Cómo funciona este requisito en las distintas versiones de Android:

  • Android 17 (nivel 37 de la API) y versiones posteriores: la plataforma Android requiere el uso de la clave híbrida actualizada preparada para la computación cuántica. Consulta la versión 3.2 del esquema de firma de APKs.
  • De Android 13 (nivel 33 de la API) a Android 16 (nivel 36 de la API): la plataforma Android requiere el uso de la clave clásica más reciente. Consulta la versión 3.1 del esquema de firma de APKs.
  • Entre Android 7 (nivel 24 de la API) y Android 12 (nivel 32 de la API): la plataforma Android no requiere la clave actualizada y sigue reconociendo la clave clásica más reciente. Sin embargo, Google Play Protect proporciona una validación adicional comprobando que las actualizaciones de las aplicaciones se firmen con tu clave clásica más reciente (a menos que el usuario desactive esta opción).

Consideración importante:

  • Datos compartidos: como la plataforma no requiere la clave actualizada en Android S (nivel 32 de la API) y versiones anteriores, si usas la misma clave en varias aplicaciones para compartir datos, esas versiones anteriores de Android solo reconocerán la clave antigua para funciones como compartir permisos personalizados.

Cómo actualizar la clave:

  1. Ve a Protegida con Play > Distribución en Play Store > Ir a Firma de aplicaciones de Play.
  2. En la sección Clave de firma de aplicación, haz clic en Actualizar clave.
  3. Elige la ruta de actualización:
    • Permitir que Google Play genere una nueva clave de firma de aplicación (recomendado)
    • Usar la misma clave de firma de aplicación que otra aplicación de esta cuenta de desarrollador
    • Proporcionar una copia de tu clave de firma de aplicación (siguiendo las instrucciones)
  4. Haz clic en Guardar.
  5. Registra las nuevas huellas digitales de la clave con tus proveedores de APIs. Si tu aplicación usa la firma híbrida preparada para la computación cuántica, debes registrar las huellas digitales de dos claves nuevas: tu nueva clave clásica y tu nueva clave PQC.

Solicitar que se cambie la clave de subida

Si pierdes tu clave de subida o sospechas que se ha vulnerado, no se te impedirá acceder a tu aplicación.

  1. Crea una nueva clave de subida en Android Studio.
  2. Exporta el certificado en formato PEM:
    keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
    Para obtener más ayuda sobre keytool y las rutas de almacén de claves, consulta la guía de firma de aplicaciones de Android Studio.
  3. Una vez que se haya generado el archivo PEM, envía la solicitud de cambio en Play Console.
  4. Ve a Protegida con Play > Protección de Play Store > Gestionar firma de aplicaciones de Play.
  5. En la sección Certificado de clave de subida, haz clic en Solicitar cambio de la clave de subida.
  6. Indica el motivo del cambio.
  7. Sube el archivo upload_certificate.pem y haz clic en Solicitar.

Prácticas recomendadas y distribución alternativa

  • Seguridad: protege tu acceso a Play Console obligando a todos los usuarios a usar la verificación en dos pasos.
  • Mejoras de app bundles: si te registras en la firma de aplicaciones de Play, podrás acceder a las mejoras para tus app bundles. Para aplicar mejoras, primero haz los cambios de configuración necesarios al crear un nuevo lanzamiento y, a continuación, sube un nuevo app bundle.
  • Distribuir fuera de Google Play: si distribuyes tu aplicación en otras tiendas de aplicaciones y quieres usar la misma clave de firma en todas ellas, tienes dos opciones. [1] Puedes dejar que Google genere tu clave de firma de aplicación y descargar un APK universal firmado desde Play Console o la API Play Developer para distribuirlo en otro lugar (en Play Console, ve a Probar y publicar > Últimas versiones y paquetes, selecciona tu app bundle y haz clic en la pestaña Descargas). [2] También puedes generar la clave de firma de aplicación que quieras usar en todas las tiendas de aplicaciones y transferir una copia a Google cuando configures la firma de aplicaciones de Play. Consulta más información sobre cómo funcionan las actualizaciones de aplicaciones y las opciones que tienes para habilitar o inhabilitar las actualizaciones entre tiendas.
  • Pruebas: usa la función de compartir aplicaciones de forma interna para probar exactamente lo que Google Play ofrecerá a los usuarios o descarga los archivos APK específicos de un dispositivo desde el explorador de app bundles e instálalos de forma local con adb install-multiple *.apk.
  • Versión 4 del esquema de firma de APKs: la firma de aplicaciones de Play usa automáticamente la versión 4 en las aplicaciones que cumplen los requisitos para admitir la distribución optimizada en dispositivos con Android 11 o versiones posteriores. No es necesario que realices ninguna acción. Esto excluye todas las aplicaciones que usan la firma híbrida preparada para la computación cuántica, que aún no es compatible con la firma v4. Puedes consultar más información sobre las ventajas técnicas en la documentación de la versión 4 del esquema de firma de APKs.

Proyectos de Google Cloud alojados en servidores propios 

Si tienes requisitos de seguridad muy específicos (por ejemplo, usar claves OEM), puedes utilizar la API Play Developer para registrarte en la firma de aplicaciones de Play con un proyecto de Google Cloud alojado en servidores propios.

Esta es una configuración no estándar que no se recomienda. Si usas un proyecto alojado en servidores propios, asumes toda la responsabilidad de las operaciones de firma de aplicaciones.

  • Google Play no podrá realizar funciones esenciales, como la recuperación tras fallos.
  • Google no puede volver a generar ni corregir una versión que ya se haya publicado. Para corregir los errores relacionados con la versión, debes subir un nuevo lanzamiento.
  • Es posible que las optimizaciones avanzadas, algunas mejoras de Play y las funciones de seguridad, como la firma híbrida preparada para la computación cuántica, no estén disponibles en esta configuración.
  • Genera o importa tus claves de firma en Cloud KMS. Asegúrate de que la ubicación esté configurada como multirregión de EE. UU. y sigue las instrucciones de la documentación sobre la importación de claves de KMS.
  1. Para cambiar tu clave de firma, usa el método enrollApp. Las claves de firma solo se pueden cambiar antes de que la aplicación se publique en los canales de prueba abierta o de producción.
  2. Para actualizar tu clave de firma después de publicar, usa el método rotateAppSigningKey
  3. Concede los siguientes roles de gestión de identidades y accesos al cliente o a la cuenta de servicio que se autentique con la API Google Play Developer:
    1. role/cloudkms.signer
    2. roles/cloudkms.viewer
    3. roles/cloudkms.publicKeyViewer
  4. Asegúrate de que tienes cuota suficiente para realizar operaciones criptográficas. En concreto, te recomendamos que aumentes la cuota de asymmetric_requests a 350 CPS como mínimo.
  5. Para ver cómo se usan las claves de firma, habilita el registro de auditoría en tu proyecto de Cloud KMS.
Esta página puede incluir contenido traducido con tecnología de IA. Las traducciones generadas por IA pueden contener errores.

¿Te ha resultado útil esta información?

¿Cómo podemos mejorar esta página?
Búsqueda
Borrar búsqueda
Cerrar búsqueda
Menú principal
4081619035240961630
true
Buscar en el Centro de ayuda
false
true
true
true
true
true
92637
false
false
false
false
false