Usar la firma de aplicaciones de Play

Google usa la firma de aplicaciones de Play para gestionar y proteger la clave de firma de tu aplicación, así como para firmar los APKs de distribución optimizados que se generan a partir de tus app bundles. La firma de aplicaciones de Play almacena la clave de firma de aplicación en la infraestructura segura de Google y ofrece opciones de actualización para aumentar la seguridad.

Para usar la firma de aplicaciones de Play, debes ser el propietario de la cuenta o un usuario con el permiso Lanzar a producción, excluir dispositivos y usar la firma de aplicaciones de Play. Además, debes aceptar los Términos del Servicio de la Firma de Aplicaciones de Play.

Cómo funciona

Cuando uses la firma de aplicaciones de Play, las claves se guardarán en la misma infraestructura segura que utiliza Google para almacenar las suyas. Las claves están protegidas por el servicio de gestión de claves de Google. Si quieres consultar más información sobre la infraestructura de Google, lee el informe sobre seguridad de Google Cloud.

Las aplicaciones Android se firman con una clave privada. Para tener la seguridad de que las actualizaciones de las aplicaciones son de fiar, cada una de estas claves tiene asociado un certificado público que los dispositivos y servicios utilizan para verificar que las actualizaciones proceden de la misma fuente que las aplicaciones correspondientes. Los dispositivos solo aceptan actualizaciones si la firma coincide con la de la aplicación instalada. Si permites que Google gestione tu clave de firma de aplicación, el proceso será más seguro.

Nota: En el caso de las aplicaciones creadas antes de agosto del 2021, puedes subir un APK y gestionar tus propias claves en vez de usar la firma de aplicaciones de Play y publicar con un Android App Bundle. Sin embargo, si pierdes tu almacén de claves o su seguridad se pone en riesgo, no podrás actualizar tu aplicación sin publicar otra nueva con un nombre de paquete diferente. Para estas aplicaciones, Google Play recomienda usar la firma de aplicaciones de Play y cambiar a app bundles.

Descripciones de claves, artefactos y herramientas
Término Descripción
Clave de firma de aplicación

Clave que utiliza Google Play para firmar los APKs que se envían a los dispositivos de los usuarios. Si usas la firma de aplicaciones de Play, podrás subir una clave de firma de aplicación que ya tengas o dejar que Google genere una.

Debes mantener esta clave en secreto, pero puedes compartir el certificado público de la aplicación.

Clave de subida

Clave que utilizas para firmar tu app bundle antes de subirlo a Google Play. La clave de subida debe mantenerse en secreto, pero puedes compartir el certificado público de la aplicación. Por motivos de seguridad, es recomendable que las claves de firma de aplicación y las de subida sean diferentes.

Hay dos formas de generar una clave de subida:

  • Con tu clave de firma de aplicación: si eliges que Google genere una clave de firma de aplicación, la clave que utilices en tu primera versión será también la clave de subida.
  • Con una clave de subida diferente: si proporcionas tu propia clave de firma de aplicación, podrás generar una clave de subida diferente para aumentar la seguridad. Si no generas ninguna, utiliza la clave de firma de aplicación como clave de subida para firmar versiones.
Certificado (.der o .pem)

Un certificado incluye una clave pública e información de identificación adicional sobre el propietario de la clave. El certificado de clave pública permite que cualquiera compruebe quién ha firmado el app bundle o el APK. Además, puedes compartirlo con quien quieras, ya que no incluye tu clave privada.

Para registrar tus claves con los proveedores de APIs, puedes descargar el certificado público de tu clave de firma de aplicación y tu clave de subida desde la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación) de Play Console. El certificado de clave pública se puede compartir con cualquier persona. No incluye tu clave privada.

Huella digital de certificado

Representación única y breve del certificado que suelen solicitar los proveedores de APIs con el nombre del paquete para registrar una aplicación y usar sus servicios.

Las huellas digitales MD5, SHA‑1 y SHA‑256 de los certificados de la clave de subida y de la firma de aplicaciones están disponibles en la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación) de Play Console. Se pueden conseguir otras huellas digitales descargando el certificado original (.der) en esa misma página.

Almacén de claves de Java (.jks o .keystore) Repositorio de certificados de seguridad y claves privadas.
Herramienta PEPK

Una herramienta que permite exportar claves privadas desde un almacén de claves de Java y cifrarlas para transferirlas a Google Play.

Si proporcionas a Google la clave de firma de aplicaciones para que la utilice, selecciona la opción para exportar y subir tu clave (y su certificado público si es necesario) y sigue las instrucciones para descargar y usar la herramienta. Si lo prefieres, puedes descargar, revisar y utilizar el código abierto de la herramienta PEPK.

Proceso de firma de aplicaciones

El proceso es el siguiente:

  1. Firma tu app bundle y súbelo a Play Console.
  2. Google genera APKs optimizados a partir de tu app bundle y, después, los firma con la clave de firma de aplicación.
  3. Google usa apksigner para añadir dos sellos al archivo de manifiesto de tu aplicación (com.android.stamp.source y com.android.stamp.type) y, luego, firma los APKs con la clave de firma de aplicación. Los sellos añadidos por apksigner permiten rastrear los APKs para saber quién los ha firmado.
  4. Google entrega los APKs firmados a los usuarios.

Configurar la firma de aplicaciones de Play

Instrucciones para aplicaciones creadas después de agosto del 2021

Paso 1: Crea una clave de subida

  1. Sigue las instrucciones para crear una clave de subida.
  2. Firma tu app bundle con la clave de subida.

Paso 2: Prepara tu versión

  1. Sigue las instrucciones para preparar y lanzar versiones.
  2. Una vez que hayas seleccionado el canal de lanzamiento, en la sección "Integridad de la aplicación" se mostrará el estado de la firma de aplicaciones de Play en tu aplicación.
  3. Para continuar con una clave de firma de aplicación generada por Google, sube tu app bundle. También puedes seleccionar Cambiar clave de firma de aplicación para acceder a las siguientes opciones:
    • Usar una clave de firma de aplicación generada por Google: más del 90 % de las aplicaciones nuevas utilizan claves de firma de aplicación generadas por Google. Si usas una clave generada por Google, te protegerá en caso de pérdidas o riesgos de seguridad (la clave no se puede descargar). Si eliges esta opción, puedes descargar los APKs de distribución del explorador de app bundles firmados con la clave generada por Google para otros canales de distribución, o bien usar una clave diferente en dichos canales.
    • Usar una clave de firma de aplicación diferente: puedes utilizar la misma clave que otra aplicación de tu cuenta de desarrollador o guardar una copia local de la clave para disfrutar de una mayor flexibilidad. Por ejemplo, es posible que ya hayas decidido usar una clave porque tu aplicación viene preinstalada en algunos dispositivos. Al tener una copia de tu clave fuera de los servidores de Google, el riesgo es mayor si la copia local se vulnera en algún momento. Tienes las siguientes opciones para usar una clave diferente:
      • Usar la misma clave de firma de aplicación que otra aplicación de esta cuenta de desarrollador.
      • Exportar y subir una clave del almacén de claves de Java.
      • Exportar y subir una clave sin usar el almacén de claves de Java.
  4. Completa el resto de las instrucciones para preparar y lanzar versiones.

Nota: Debes aceptar los Términos del Servicio y habilitar la firma de aplicaciones para continuar.

Paso 3: Registra tu clave de firma de aplicación en los proveedores de APIs

Si tu aplicación utiliza APIs, probablemente tendrás que registrar la clave de firma de tu aplicación con las APIs para autenticarlas usando la huella digital del certificado. Sigue estos pasos para encontrarlo:

  1. Abre Play Console y ve a la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación).
  2. Desplázate a la sección "Certificado de la clave de firma de aplicación" y copia las huellas digitales (MD5, SHA-1 y SHA-256) del certificado de firma de aplicaciones.
    • Si el proveedor de APIs requiere un tipo de huella digital diferente, puedes descargar el certificado original en formato .der y convertirlo usando las herramientas especificadas por el proveedor de APIs.
Requisitos de la clave de firma de aplicación

Cuando uses una clave generada por Google, Google generará automáticamente una clave RSA de seguridad criptográfica de 4096 bits. Si decides subir tu propia clave de firma de aplicación, debe ser una clave RSA de al menos 1024 bits.

Instrucciones para aplicaciones creadas antes de agosto del 2021

Paso 1: Configura la firma de aplicaciones de Play

  1. Abre Play Console y ve a la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación).
  2. Si aún no lo has hecho, revisa los Términos del Servicio de la Firma de Aplicaciones de Play y selecciona Aceptar.

Paso 2: Envía una copia de tu clave original a Google y crea una clave de subida

  1. Busca tu clave de firma de aplicación original.
  2. Abre Play Console y ve a la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación).
  3. Selecciona la opción de subida y exportación que mejor se adapte a tu proceso de lanzamiento y sube una clave de firma de aplicación que ya tengas.

Paso 3: Crea una clave de subida (es opcional, pero te recomendamos que lo hagas)

  1. Crea una clave de subida y sube el certificado a Google Play.
    • Si quieres, puedes seguir utilizando la clave de firma de aplicación como clave de subida.
  2. Copia las huellas digitales (MD5, SHA‑1 y SHA‑256) de tu certificado de firma de aplicaciones.
    • Para hacer pruebas, es posible que tengas que registrar el certificado de tu clave de subida en los proveedores de APIs usando la huella digital del certificado y la clave de firma de aplicación.

Paso 4: Firma la próxima actualización de tu aplicación con la clave de subida

Cuando publicas actualizaciones de tu aplicación, tienes que firmarlas con la clave de subida.

  • Si no has generado una clave de subida nueva: sigue usando tu clave de firma de aplicación original para firmar app bundles antes de subirlos a Google Play. Si pierdes tu clave de firma de aplicación original, puedes generar una clave de subida diferente y registrarla en Google para poder seguir actualizando tu aplicación.
  • Si has generado una clave de subida diferente: úsala para firmar app bundles antes de subirlos a Google Play. Google utiliza la clave de subida para verificar tu identidad. Si pierdes la clave de subida, ponte en contacto con el equipo de asistencia para cambiarla.

Crear una clave de subida y actualizar los almacenes de claves

Para aumentar la seguridad, es recomendable que firmes tu aplicación con una clave de subida nueva en lugar de con la clave de firma de aplicación.

Puedes crear una clave de subida cuando te registres para utilizar la firma de aplicaciones de Play. También puedes crear una después en la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación).

Sigue estos pasos para crear una clave de subida:

  1. Sigue las instrucciones del sitio web para desarrolladores de Android. Guarda la clave en un lugar seguro.
  2. Exporta el certificado de la clave de subida a formato PEM. Reemplaza los siguientes argumentos subrayados:
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. Cuando se te solicite durante el proceso de lanzamiento, sube el certificado para registrarlo en Google.

Al utilizar una clave de subida:

  • La clave de subida solo se registra en Google para autenticar la identidad del creador de la aplicación.
  • Tu firma se elimina de todos los APKs subidos antes de que se envíen a los usuarios.
Requisitos de la clave de subida
  • Debe ser una clave RSA de al menos 2048 bits.
Actualizar los almacenes de claves

Una vez que hayas creado la clave de subida, revisa y actualiza ubicaciones como:

  • Equipos locales
  • Servidor físico bloqueado (las listas de control de acceso varían)
  • Equipo en la nube (las listas de control de acceso varían)
  • Servicios específicos para gestionar secretos
  • Repositorios (Git)

Actualizar la clave de firma de aplicaciones para las nuevas descargas

En algunos casos, puedes solicitar la actualización de la clave de firma de aplicaciones. La clave actualizada se utilizará para firmar las nuevas descargas y actualizaciones de la aplicación. La clave antigua se utilizará para firmar actualizaciones de los usuarios que hayan instalado la aplicación antes de que actualizaras la clave.

La clave de firma de cada aplicación solo puede actualizarse una vez durante su tiempo de vida. En el improbable caso de que varias de tus aplicaciones utilicen la misma clave de firma para ejecutarse en el mismo proceso, no podrás actualizar la clave para esas aplicaciones.

A continuación se indican dos motivos por los que solicitar una actualización de la clave de firma de una aplicación:

  • Necesitas una clave con más seguridad criptográfica.
  • La clave de firma de aplicación está en riesgo.

Nota: Solicitar una actualización de la clave de firma de aplicación en Play Console no tiene nada que ver con la rotación de claves que se introdujo en la versión 3 del esquema de firma de APKs para Android P y versiones posteriores. Actualmente, Google Play no admite este tipo de rotación de claves.

Información importante antes de solicitar la actualización de una clave

Antes de solicitar la actualización de una clave, es importante saber qué cambios tendrás que hacer una vez que se complete.

  • Si usas la misma clave de firma en varias aplicaciones o compartes código o datos entre ellas, tendrás que actualizar las aplicaciones para que reconozcan los certificados tanto de la clave de firma de aplicación antigua como de la nueva.
  • Si tu aplicación utiliza APIs, registra los certificados de la clave de firma de aplicación nueva y de la antigua en los proveedores de APIs antes de publicar una actualización para asegurarte de que las APIs sigan funcionando. Los certificados están disponibles en la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación) de Play Console.  
  • Si alguno de tus usuarios instala actualizaciones de la aplicación a través de P2P, solo podrá instalar actualizaciones firmadas con la misma clave que la versión de tu aplicación que tenga instalada. Si no pueden actualizar la aplicación porque tienen una versión de tu aplicación firmada con otra clave, tendrán la opción de desinstalar la aplicación y volver a instalarla para recibir la actualización.
Solicitar la actualización de la clave para las nuevas descargas
  1. Abre Play Console y ve a la página Firma de aplicaciones de Play (Versión > Configuración > Integridad de la aplicación).
  2. En la tarjeta "Actualizar la clave de firma de aplicación para las nuevas descargas", selecciona Solicitar actualización de la clave.
  3. Selecciona una de las siguientes opciones.
    • Según la opción que selecciones, es posible que tengas que ponerte en contacto con el servicio de asistencia para completar la solicitud.
  4. Pide a Google que genere una nueva clave de firma de aplicación (recomendado) o una clave de subida.
    • Después de actualizar la clave de firma de aplicación, si utilizabas la misma clave como clave de subida y clave de firma, puedes seguir usando la antigua clave de firma de aplicación como clave de subida o generar una nueva clave de subida.
  5. Si es necesario, registra tu nueva clave de firma de aplicación en los proveedores de APIs.

Prácticas recomendadas

  • Si también distribuyes tu aplicación fuera de Google Play (o piensas hacerlo) y quieres utilizar la misma clave de firma, tienes dos opciones: 
    • Dejar que Google genere la clave (recomendado) y, a continuación, descargar un APK universal firmado desde el explorador de app bundles para distribuirlo fuera de Google Play.
    • La segunda opción es generar la clave de firma de aplicación que quieras utilizar en todas las tiendas de aplicaciones y, a continuación, transferir una copia a Google cuando te registres para configurar la firma de aplicaciones de Play.
  • Para proteger tu cuenta, activa la verificación en dos pasos en todas las cuentas con acceso a Play Console.
  • Después de publicar un app bundle en un canal de lanzamiento, puedes ir al explorador de app bundles para acceder a los APKs instalables que genera Google a partir de tu app bundle. Puedes hacer lo siguiente:
    • Copiar y distribuir un enlace para compartir aplicaciones de forma interna que te permita probar con un solo toque lo que instalaría Google Play en distintos dispositivos a partir de tu app bundle.
    • Descargar un archivo APK firmado y universal. Este APK único está firmado con la clave de firma de aplicación que tiene Google y se puede instalar en cualquier dispositivo que sea compatible con tu aplicación.
    • Descargar un archivo ZIP con todos los APKs para un dispositivo específico. Estos APKs están firmados con la clave de firma de aplicación que tiene Google. Además, puedes instalarlos en el archivo ZIP de un dispositivo con el comando adb install-multiple *.apk.
  • Para reforzar la seguridad, genera una clave de subida diferente a tu clave de firma de aplicación.
  • Si utilizas alguna API de Google, es recomendable que registres los certificados de la clave de subida y de la clave de firma de aplicación en la consola de Google Cloud de tu aplicación.

Qué hacer si has perdido la clave de subida o si su seguridad se ha puesto en riesgo

Si has perdido la clave de subida privada o su seguridad se ha puesto en riesgo, puedes crear otra y, a continuación, pedirle al propietario de la cuenta que se ponga en contacto con el equipo de asistencia para cambiarla. Cuando lo haga, deberá adjuntar el archivo upload_certificate.pem.

Cuando el equipo de asistencia haya registrado la clave de subida nueva, recibirás un correo electrónico. A continuación, podrás actualizar los almacenes de claves y registrar la clave en los proveedores de APIs.

Importante: Cambiar tu clave de subida no afecta a la clave de firma de aplicación que Google Play utiliza para volver a firmar los APKs antes de enviarlos a los usuarios.

Versión 4 del esquema de firma de APKs

Los dispositivos con Android 11 y versiones posteriores admiten la nueva versión 4 del esquema de firma de APKs. La firma de aplicaciones de Play empezará a desplegar la versión 4 para seleccionar aplicaciones de manera que puedan acceder de forma opcional a funciones de rendimiento disponibles en los dispositivos más recientes. No hace falta que los desarrolladores hagan nada, y no se espera que haya ningún impacto para los usuarios.

 

¿Te ha resultado útil esta información?
¿Cómo podemos mejorar esta página?

¿Necesitas más ayuda?

Inicia sesión si quieres ver otras opciones de asistencia para solucionar tu problema.

Búsqueda
Borrar búsqueda
Cerrar búsqueda
Aplicaciones de Google
Menú principal
Buscar en el Centro de ayuda
true
92637
false