Utiliser la signature d'application Play

Avec le service Signature d'application Play, Google gère et protège à votre place votre clé de signature d'application, et l'utilise pour signer des APK optimisés, destinés à la distribution et générés à partir de vos app bundles. Ce service stocke votre clé de signature d'application sur l'infrastructure sécurisée de Google et propose des options de mise à niveau pour une sécurité renforcée.

Pour utiliser ce service, vous devez être titulaire d'un compte ou disposer, en tant qu'utilisateur, de l'autorisation Mettre les applications à disposition de tous les utilisateurs, exclure des appareils et utiliser la signature d'application Play. Vous devez également accepter les Conditions d'utilisation du service Signature d'application Play.

Fonctionnement

Lorsque vous utilisez le service Signature d'application Play, vos clés sont stockées sur la même infrastructure sécurisée que celle que Google utilise pour ses propres clés. Les clés sont protégées par le service de gestion des clés Google. Pour en savoir plus sur l'infrastructure de Google, lisez le Livre blanc sur la sécurité avec Google Cloud.

Les applications Android sont signées à l'aide d'une clé privée. Pour garantir la fiabilité des mises à jour d'applications, chaque clé privée est associée à un certificat public que les appareils et services utilisent pour vérifier que ces mises à jour ont la même source. Les appareils n'acceptent les mises à jour que lorsque leur signature correspond à celle de l'application installée. Ce processus est plus sûr lorsque vous confiez la gestion de votre clé de signature d'application à Google.

Remarque : Pour les applications créées avant août 2021, vous pouvez encore importer un APK et gérer vos propres clés au lieu d'utiliser le service Signature d'application Play et procéder à la publication avec un Android App Bundle. Toutefois, si vous perdez votre keystore ou que sa sécurité est compromise, vous ne pourrez pas mettre à jour votre application sans en publier une nouvelle avec un nouveau nom de package. Pour ces applications, Play vous recommande d'utiliser le service Signature d'application Play et de passer aux app bundles.

Descriptions des clés, des artefacts et des outils
Terme Description
Clé de signature d'application

Une clé de signature d'application est utilisée par Google Play pour signer les APK envoyés sur l'appareil d'un utilisateur. Lorsque vous utilisez le service Signature d'application Play, vous pouvez soit importer une clé de signature d'application existante, soit demander à Google d'en générer une pour vous.

Cette clé doit rester secrète, mais vous êtes libre de partager le certificat public de votre application avec d'autres personnes.

Clé d'importation

Une clé d'importation vous permet de signer votre app bundle avant de l'importer sur Google Play. Elle doit rester secrète, mais vous êtes libre de partager le certificat public de votre application avec d'autres personnes. Pour des raisons de sécurité, nous vous conseillons de choisir des clés de signature d'applications et d'importation différentes.

Il existe deux manières de générer une clé d'importation :

  • Utiliser votre clé de signature d'application : si Google génère une clé de signature d'application, celle associée à votre première release est également votre clé d'importation.
  • Utiliser une clé d'importation distincte : si vous fournissez votre propre clé de signature d'application, vous avez la possibilité de générer une nouvelle clé d'importation pour plus de sécurité. Si vous n'en générez pas, utilisez votre clé de signature d'application comme clé d'importation pour signer les releases.
Certificat (.der ou .pem)

Un certificat contient une clé publique et des informations d'identification supplémentaires sur le propriétaire de la clé. Le certificat de clé publique permet à quiconque de vérifier qui a signé l'app bundle ou l'APK. Vous pouvez le partager librement, car il ne contient pas votre clé privée.

Pour enregistrer vos clés auprès des fournisseurs d'API, vous pouvez télécharger le certificat public associé à votre clé de signature d'application et à votre clé d'importation depuis la page Signature d'application Play (Version > Configuration > Intégrité de l'appli) dans la Play Console. Un certificat de clé publique peut être partagé avec n'importe qui. Il n'inclut pas votre clé privée.

Empreinte du certificat

L'empreinte du certificat est une représentation courte et unique d'un certificat, souvent requise par les fournisseurs d'API en même temps que le nom du package afin de permettre à une application d'utiliser leurs services.

Les empreintes MD5, SHA-1 et SHA-256 des certificats d'importation et de signature d'application sont disponibles sur la page Signature d'application Play (Version > Configuration > Intégrité de l'appli) dans la Play Console. D'autres empreintes peuvent également être converties en téléchargeant le certificat original (.der) sur la même page.

Keystore Java (.jks ou .keystore) Le keystore est un référentiel de certificats de sécurité et de clés privées.
Outil de chiffrement Play de clé privée (PEPK, Play Encrypt Private Key)

Cet outil permet d'exporter des clés privées depuis un keystore Java et de les chiffrer en vue de leur transfert dans Google Play.

Lorsque vous fournissez la clé de signature d'applications à Google, sélectionnez l'option permettant d'exporter et d'importer votre clé (et son certificat public, si nécessaire), puis suivez les instructions pour télécharger et utiliser l'outil. Vous pouvez également, si vous le souhaitez, télécharger, examiner et utiliser le code Open Source de l'outil PEPK.

Processus de signature d'application

Voici comment procéder :

  1. Signez votre app bundle, puis importez-le dans la Play Console.
  2. Google génère des APK optimisés à partir de votre app bundle et les signe avec la clé de signature d'application.
  3. Google utilise apksigner pour ajouter deux identifiants au fichier manifeste de votre application (com.android.stamp.source et com.android.stamp.type) et signer ensuite les APK avec votre clé de signature d'application. Ces identifiants permettent de tracer les APK jusqu'à la personne qui les a signés.
  4. Google fournit aux utilisateurs des APK signés.

Configurer la signature d'application Play

Instructions pour les applications créées après août 2021

Étape 1 : Créez une clé d'importation

  1. Suivez ces instructions pour créer une clé d'importation.
  2. Signez votre app bundle avec la clé d'importation.

Étape 2 : Préparez votre release

  1. Suivez les instructions pour préparer et déployer votre release.
  2. Une fois que vous avez sélectionné un canal de publication, l'état du service Signature d'application Play pour votre application est affiché dans la section "Intégrité de l'appli".
  3. Pour continuer avec une clé de signature d'application générée par Google, importez votre app bundle. Vous pouvez également sélectionner Modifier la clé de signature d'application pour accéder aux options suivantes :
    • Utiliser une clé de signature d'application générée par Google : plus de 90 % des nouvelles applications utilisent des clés de signature d'application générées par Google. Ce type de clé vous protège en cas de perte ou de piratage (la clé n'est pas téléchargeable). Si vous choisissez cette option, vous pouvez télécharger des APK destinés à la distribution à partir de l'explorateur d'app bundle et signés avec la clé générée par Google pour d'autres canaux de distribution, ou utiliser pour eux une autre clé.
    • Utiliser une autre clé de signature d'application : si vous choisissez cette clé, vous pouvez utiliser la même clé qu'une autre application dans votre compte de développeur ou conserver une copie locale de cette clé pour plus de flexibilité. Par exemple, vous avez peut-être déjà choisi une clé, car votre application est préinstallée sur certains appareils. Avoir une copie de la clé en dehors des serveurs de Google augmente le risque de piratage (votre copie locale peut être compromise). Vous disposez des options suivantes pour utiliser une autre clé :
      • Utiliser la même clé de signature d'application qu'une autre application de ce compte de développeur
      • Exporter et importer une clé à partir d'un keystore Java
      • Exporter et importer une clé (sans keystore Java)
  4. Suivez les instructions restantes pour préparer et déployer votre release.

Remarque : Vous devez accepter les conditions d'utilisation et activer la signature d'application pour continuer.

Étape 3 : Enregistrez votre clé de signature d'application auprès des fournisseurs d'API

Si votre application utilise des API, vous devez généralement enregistrer votre clé de signature d'application auprès de ces fournisseurs à des fins d'authentification à l'aide de l'empreinte du certificat. Pour trouver le certificat, procédez comme suit :

  1. Ouvrez la Play Console, puis accédez à la page Signature d'application Play (Version > Configuration > Intégrité de l'appli).
  2. Faites défiler la page jusqu'à la section "Certificat de la clé de signature d'application" et copiez les empreintes (MD5, SHA-1 et SHA-256) de votre certificat de signature d'application.
    • Si le fournisseur d'API requiert un autre type d'empreinte, vous pouvez également télécharger le certificat original au format .der et le convertir à l'aide des outils imposés par ce fournisseur d'API.
Exigences concernant la clé de signature d'application

Lorsque vous utilisez une clé générée par Google, Google génère automatiquement une clé cryptographique RSA forte de 4 096 bits. Si vous choisissez d'importer votre propre clé de signature d'application, il doit s'agir d'une clé RSA d'au moins 1 024 bits.

Instructions pour les applications créées avant août 2021

Étape 1 : Configurez la signature d'application Play

  1. Ouvrez la Play Console, puis accédez à la page Signature d'application Play (Version > Configuration > Intégrité de l'appli).
  2. Si vous ne l'avez pas déjà fait, lisez les conditions d'utilisation du service Signature d'application Play, puis sélectionnez Accepter.

Étape 2 : Envoyez une copie de votre clé d'origine à Google et créez une clé d'importation

  1. Trouvez la clé de signature d'application d'origine.
  2. Ouvrez la Play Console, puis accédez à la page Signature d'application Play (Version > Configuration > Intégrité de l'appli).
  3. Sélectionnez l'option d'exportation et d'importation qui convient le mieux à votre processus de publication, puis importez une clé de signature d'application existante.

Étape 3 : Créez une clé d'importation (facultatif et recommandé)

  1. Créez une clé d'importation, puis importez le certificat dans Google Play.
    • Vous pouvez également continuer d'utiliser la clé de signature d'applications comme clé d'importation.
  2. Copiez les empreintes (MD5, SHA-1 et SHA-256) de votre certificat de signature d'applications.
    • À des fins de test, vous devrez peut-être enregistrer le certificat de votre clé d'importation auprès des fournisseurs d'API à l'aide de son empreinte et de la clé de signature d'applications.

Étape 4 : Signez la mise à jour de votre application avec la clé d'importation

Lorsque vous publiez des mises à jour pour votre application, vous devez les signer avec votre clé d'importation.

  • Si vous n'avez pas généré de nouvelle clé d'importation : continuez à utiliser votre clé de signature d'application d'origine pour signer les app bundles avant de les importer dans Google Play. Si vous la perdez, vous pouvez générer une nouvelle clé d'importation et l'enregistrer auprès de Google pour continuer à mettre à jour votre application.
  • Si vous avez généré une nouvelle clé d'importation : utilisez cette nouvelle clé d'importation pour signer les app bundles avant de les importer dans Google Play. Google valide votre identité à l'aide de la clé d'importation. Si vous perdez cette clé d'importation, vous pouvez contacter l'équipe d'assistance pour la réinitialiser.

Créer une clé d'importation et mettre à jour les keystores

Pour plus de sécurité, il est recommandé de signer votre application avec une nouvelle clé d'importation plutôt que d'utiliser votre clé de signature d'application.

Vous pouvez créer une clé d'importation lorsque vous activez le service Signature d'application Play ou ultérieurement depuis la page Signature d'application Play (Version > Configuration > Intégrité de l'appli).

Voici comment créer une clé d'importation :

  1. Suivez les instructions sur le site pour les développeurs Android. Stockez votre clé en lieu sûr.
  2. Exportez le certificat de cette clé d'importation au format PEM. Remplacez les arguments soulignés suivants :
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. Pendant le processus de publication, lorsque vous y êtes invité, importez le certificat pour l'enregistrer auprès de Google.

Lorsque vous utilisez une clé d'importation :

  • Votre clé d'importation est uniquement enregistrée auprès de Google pour authentifier l'identité du créateur de l'application.
  • Votre signature est supprimée de tous les fichiers APK importés avant leur envoi aux utilisateurs.
Exigences concernant la clé d'importation
  • Cette clé doit être une clé RSA de 2 048 bits ou plus.
Mise à jour des keystores

Une fois que vous avez créé votre clé d'importation, voici quelques emplacements à vérifier et à mettre à jour :

  • Ordinateurs locaux
  • Serveur sur site verrouillé (LCA variables)
  • Ordinateur cloud (LCA variables)
  • Services dédiés de gestion des secrets
  • Dépôts (Git)

Mettre à jour votre clé de signature d'applications pour les nouvelles installations

Dans certains cas, vous pouvez demander la mise à jour d'une clé de signature d'applications. Votre nouvelle clé permet de signer les nouvelles installations et les mises à jour d'applications. L'ancienne clé de signature d'applications est toujours utilisée pour signer les mises à jour des utilisateurs qui ont installé votre application avant la mise à jour de la clé.

Chaque application ne peut avoir sa clé de signature d'applications mise à jour qu'une seule fois depuis sa publication. Dans le cas peu probable où plusieurs applications utiliseraient la même clé de signature pour exécuter spécifiquement le même processus, vous ne pourrez pas mettre à jour la clé pour ces applications.

Voici deux raisons pour lesquelles vous devez demander une mise à jour de clé de signature d'applications :

  • Vous avez besoin d'une clé avec un chiffrement renforcé.
  • Votre clé de signature d'applications a été piratée.

Remarque : La demande de mise à jour d'une clé de signature d'applications sur la Play Console n'est pas liée à la rotation des clés introduite dans le schéma de signature des fichiers APK v3 pour Android P ou version ultérieure. Ce type de rotation de clés n'est pas compatible avec Google Play pour le moment.

Éléments importants à prendre en compte avant de demander une mise à jour de la clé

Avant de demander une mise à jour de la clé, il est important de comprendre les modifications que vous devrez apporter une fois la mise à jour terminée.

  • Si vous utilisez la même clé de signature d'application pour partager des données et/ou du code entre plusieurs applications, vous devez mettre à jour vos applications afin qu'elles reconnaissent vos nouveaux certificats de clé de signature d'application en plus des anciens certificats.
  • Si votre application utilise des API, veillez à enregistrer les certificats de votre nouvelle clé de signature d'application et de l'ancienne auprès des fournisseurs d'API afin que les API continuent de fonctionner. Les certificats sont disponibles sur la page Signature d'application Play (Version > Configuration > Intégrité de l'appli) dans la Play Console.  
  • Si certains de vos utilisateurs installent des mises à jour via le partage peer-to-peer, ils peuvent uniquement installer des mises à jour signées avec la même clé que la version de votre application déjà installée. S'ils ne parviennent pas à mettre à jour leur application parce qu'une version de votre application est signée avec une clé différente, ils ont la possibilité de désinstaller et de réinstaller l'application pour obtenir la mise à jour.
Demander une mise à jour de la clé pour les nouvelles installations
  1. Ouvrez la Play Console, puis accédez à la page Signature d'application Play (Version > Configuration > Intégrité de l'appli).
  2. Dans la fiche "Mettre à jour votre clé de signature d'applications pour les nouvelles installations", sélectionnez Demander la mise à jour de votre clé.
  3. Choisissez une option.
    • En fonction de l'option sélectionnée, vous devrez peut-être contacter l'équipe d'assistance pour finaliser votre demande.
  4. Demandez à Google de générer une nouvelle clé de signature d'applications (recommandé) ou importez-en une.
    • Après avoir mis à jour votre clé de signature d'application : si vous utilisiez la même clé pour la signature d'application et l'importation, vous pouvez continuer à vous servir de votre ancienne clé de signature d'application comme clé d'importation, ou générer une nouvelle clé d'importation.
  5. Si nécessaire, enregistrez votre nouvelle clé de signature d'application auprès des fournisseurs d'API.

Bonnes pratiques

  • Si vous distribuez également votre application en dehors de Google Play (ou si vous prévoyez de le faire plus tard) et que vous souhaitez utiliser la même clé de signature, deux possibilités s'offrent à vous : 
    • Laisser Google générer la clé (recommandé), puis télécharger un APK universel signé à partir de l'explorateur d'app bundle afin de le distribuer en dehors de Google Play.
    • Générer la clé de signature d'application que vous voulez utiliser pour toutes les plates-formes de téléchargement d'applications, puis en transférer une copie à Google lorsque vous configurez le service Signature d'application Play.
  • Pour protéger votre compte, activez la validation en deux étapes pour tous les comptes ayant accès à la Play Console.
  • Après avoir publié un app bundle dans un canal de publication, vous pouvez consulter l'explorateur d'app bundle pour accéder aux APK installables que Google génère à partir de votre app bundle. Vous pouvez :
    • copier et partager un lien de partage interne d'application qui vous permet de tester, d'un seul geste, ce que Google Play installera à partir de votre app bundle sur différents appareils ;
    • télécharger un APK universel signé (cet APK unique est signé avec la clé de signature d'application que détient Google et peut être installé sur n'importe quel appareil compatible avec votre application) ;
    • télécharger une archive ZIP contenant tous les APK d'un appareil spécifique. Ces APK sont signés avec la clé de signature d'application que détient Google. Vous pouvez également les installer dans l'archive ZIP sur un appareil à l'aide de la commande adb install-multiple *.apk.
  • Pour plus de sécurité, générez une clé d'importation différente de votre clé de signature d'application.
  • Si vous utilisez une API Google, vous pouvez enregistrer les certificats de la clé d'importation et de la clé de signature d'application dans Google Cloud Console pour votre application.

Clé d'importation perdue ou compromise ?

Si vous avez perdu votre clé d'importation privée ou si sa sécurité est compromise, vous pouvez en créer une autre, puis demander au titulaire de votre compte de contacter l'équipe d'assistance pour la réinitialiser. À cette occasion, le titulaire du compte doit joindre le fichier upload_certificate.pem.

Une fois que notre équipe d'assistance a enregistré la nouvelle clé d'importation, vous recevez un e-mail de confirmation. Vous pouvez ensuite mettre à jour vos keystores et enregistrer votre clé auprès des fournisseurs d'API.

Important : Le fait de réinitialiser votre clé d'importation n'affectera pas la clé de signature d'applications que Google Play utilise pour signer de nouveau les fichiers APK avant de les fournir aux utilisateurs.

Schéma de signature des APK v4

Les appareils Android 11 et versions ultérieures sont compatibles avec le nouveau schéma de signature des APK v4. Le service Signature d'application Play commencera à déployer la signature v4 pour certaines applications afin qu'elles aient la possibilité d'accéder aux fonctionnalités de performances à venir sur les nouveaux appareils. Aucune action de la part du développeur n'est requise, et aucun impact sur l'utilisateur n'est attendu.

 

Ces informations vous-ont elles été utiles ?
Comment pouvons-nous l'améliorer ?

Vous avez encore besoin d'aide ?

Connectez-vous pour accéder à des options d'assistance supplémentaires afin de résoudre rapidement votre problème.

Recherche
Effacer la recherche
Fermer le champ de recherche
Applications Google
Menu principal
Rechercher dans le centre d'aide
true
92637
false