Empreinte SHA-1 du certificat de magasin de clés


459

La méthode pour obtenir une empreinte digitale SHA-1 est-elle la même que pour obtenir une empreinte digitale? Auparavant, j'exécutais cette commande:

Invite de commandes Windows exécutant keytool.exe

Je ne sais pas si le résultat que j'obtiens est l'empreinte digitale SHA-1. Quelqu'un peut-il clarifier cela?


J'espère que ce lien vous aidera. stackoverflow.com/questions/12214467/…
Poras Bhardwaj

Le moyen le plus simple d'obtenir SHA-1 pour la version et le débogage du studio Android en mode gradle. Vérifiez cela
Naeem Ibrahim

exécutez cette commande dans votre terminal: keytool -exportcert -list -v \ -alias androiddebugkey -keystore ~ ​​/ .android / debug.keystore. Il vous demandera votre mot de passe de magasin de clés. que vous pouvez trouver dans le fichier nommé "debug.keystore.properties" dans le dossier android / keystore
Akhilesh Sinha

Réponses:


805

Suivez ce tutoriel pour créer l'empreinte SHA1 pour Google Map v2

Pour le mode débogage:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android 

pour le mode Release:

keytool -list -v -keystore {keystore_name} -alias {alias_name}

exemple:

keytool -list -v -keystore C:\Users\MG\Desktop\test.jks -alias test

Sous Windows, lorsque la commande keytool est introuvable , accédez à votre répertoire JDK installé <YourJDKPath>\Java\jdk1.8.0_231\bin\, par exemple , ouvrez la ligne de commande et essayez les commandes ci-dessus pour le mode débogage / libération.


9
~ / est votre répertoire personnel dans les systèmes * nix. Sous Windows, utilisez simplement% USERPROFILE%
Jay Sidri

1
Si vous écrivez des applications Android sur Xamarin, utilisez ceci: keytool -list -v -keystore "% USERPROFILE% \ AppData \ Local \ Xamarin \ Mono for Android / debug.keystore" -alias androiddebugkey -storepass android -keypass android
Jay Sidri

comment obtenir la libération sha1. Je l'obtiens de mon app.jks mais console.google montre que c'est déjà utilisé.
عثمان غني

1
$ keytool -list -v -keystore ~ ​​/ .android / debug.keystore -storepass android seulement cela fonctionne aussi
Napolean

1
Regardez ceci pour obtenir la clé SHA-1 en utilisant Android Studio. easybook4u.com/index.php/2017/08/25/…
Himanshu arora

652

Si vous utilisez Android Studio, utilisez une étape simple

  1. Exécutez votre projet
  2. Cliquez sur le menu Gradle
  3. Développer l' Tasksarborescence Gradle
  4. Double-cliquez sur android-> signingReportet voyez la magie
  5. Il vous dira tout sur l'onglet Exécuter

entrez la description de l'image ici

Résultat sous l' onglet Exécuter si Android Studio <2.2
entrez la description de l'image ici

Depuis Android Studio 2.2 Le
résultat sera disponible sous la console Exécuter mais utilisez le bouton bascule en surbrillance

entrez la description de l'image ici

Ou
Second Way est
Créer un nouveau projet dans le studio Android Nouveau -> Activité Google Maps

entrez la description de l'image ici

puis ouvrez le fichier xml google_maps_api.xml comme indiqué sur les photos, vous verrez votre clé SHA

entrez la description de l'image ici


2
Ma fenêtre «projets gradle» est vide ... des idées pourquoi cela pourrait être?
LairdPleng

1
Il apparaîtra lorsque vous exécuterez le projet dans l'émulateur ou sur l'appareil
Lokesh Tiwari

1
Oui, j'ai essayé mais rien ne s'est passé. On dirait que, dans mon cas, j'ai dû appuyer sur le bouton «rafraîchir» avant que quoi que ce soit n'apparaisse!
LairdPleng

1
la clé sha1 est-elle la même pour toutes les applications? ou différent pour chaque application?
Anwar Hossain

3
Il apparaît maintenant sous l'onglet "Gradle Console" du studio Android 2.2.3
Irfan Raza

196

Le moyen le plus simple d'obtenir la clé SHA1 dans Android Studio à la fois (mode débogage et libération)

  1. Ouvert Android Studio
  2. Ouvrez votre projet
  3. Cliquez sur Gradle (dans le panneau de droite , vous verrez la barre Gradle )
  4. Cliquez sur Actualiser (Cliquez sur Actualiser dans la barre Gradle, vous verrez la liste des scripts Gradle de votre projet)
  5. Cliquez sur votre projet (liste du formulaire de nom de votre projet)
  6. Cliquez sur Tâches / Android
  7. Double-cliquez sur signingReport(vous obtiendrez SHA1et MD5dans la barre d'exécution)

Si vous utilisez le nouveau Android Studio, il montre le temps de s'exécuter en haut, il y a basculer le mode d'exécution de la tâche, cliquez dessus que vous obtiendrez votre clé SHA-1. Vérifiez les 2e et 3e images de référence.

Vérifiez l'image pour plus de détails entrez la description de l'image icientrez la description de l'image ici

Générer SHA-1 pour le mode Release

1-Ajoutez d'abord une configuration de fichier de clés dans votre gradle Comment ajouter une configuration dans gradle .

2-Après l'ajout de la configuration dans la variante de construction de changement de niveau. entrez la description de l'image ici

3-Ensuite, suivez la procédure ci-dessus, vous obtiendrez SHA-1 pour le mode de libération.

4-Vérifiez l'image. entrez la description de l'image ici


1
Comment changer de lieu? Je sais comment changer de magasin de clés lors de la signature, mais qu'en est-il de celui par défaut?
portfoliobuilder

1
réponse très détaillée avec des images, aide beaucoup ... très facile à comprendre que les autres réponses ici ... voter pour les images en réponse
Shirish Herwade

52

Accédez à votre répertoire java bin via la cmd:

C: \ Program Files \ Java \ jdk1.7.0_25 \ bin>

Tapez maintenant la commande ci-dessous dans votre cmd:

keytool -list -v -keystore "c:\users\your_user_name\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android 

45

Si vous utilisez eclipse, allez dans: Fenêtre-> Préférences-> Android-> Build Vous y trouverez ce que vous cherchez.

entrez la description de l'image ici


1
Où puis-je trouver l'équivalent sur Android Studio? Mon IDE pointe vers le mauvais SHA1
portfoliobuilder

42

! [Aller à l'extrême gauche [! [] [1] [1]

Veuillez vous référer aux images suivantes et obtenir la clé SHA-1 Rafraîchir

Vue dans le panneau de la console en bas


D'accord: meilleure option. "Plused" un. J'ai manqué un peu plus d'informations textuelles, mais le chemin principal que vous avez montré. Je vous remercie.
statosdotcom

1) Vous devez double-cliquer sur le nom du fichier.
Sushant Patekar

39

Exécutez la commande suivante pour obtenir votre sha1: keytool -v -list -keystore "< debug.keystore path >"
Si vous ne connaissez pas le chemin de debug.keystore, vous pouvez trouver votredebug.keystore chemin en vérifiantwindows-->preferences-->android-->build

J'ai préparé un tutoriel étape par étape pour montrer comment vous pouvez utiliser google map android v2 sur l'émulateur (android 4.2.2)
consultez mon blog: http://umut.tekguc.info/en/content/google-android- map-v2-step-step


33

J'ai vu beaucoup de messages sur ce problème, donc je vais rester simple + exemples.

Pour obtenir le SHA1 pour ClientID pour vous connecter avec Google+ et plus d'actions:

Forme générale:

keytool -list -v -keystore <your_keystore_full_path> -alias <your_alias_name>

Pour Debug, remplacez par votre chemin debug.keystore, par exemple:

keytool -list -v -keystore C:\Users\DAVID\.android\debug.keystore -alias androiddebugkey

Mot de passe: android

Pour la version, remplacez par votre chemin de fichier de clés et votre mot de passe d'alias, par exemple:

keytool -list -v -keystore C:\ProjectsData\keystore\my-release-key.keystore -alias alias_name 

Mot de passe: votre mot de passe d'alias.


1
Fonctionne très bien! J'ai inclus à la fois un DEBUG et une clé RELEASE dans console.developer.google.com. Je ne sais pas si les deux sont vraiment nécessaires. Néanmoins, cela fonctionne très bien, après avoir passé 4 heures sur cette fonctionnalité G ** gle.
Vincent

Si votre clé d'alias a un espace comme "App Moon", ajoutez la double quation "App Moon" comme nom d'alias.
Shihab Uddin

la meilleure solution et fonctionnelle, pour google clientID j'avais besoin de SHA-1 en mode release, d'autres solutions nous donnent le SHA-1 en mode debug
parsa dadras

31

C'est un processus étape par étape de ce qui a fonctionné pour moi.

Exécutez d'abord l'application, puis suivez les étapes ci-dessous (également affichées sur la capture d'écran)

  1. cliquez sur le rapport de signature
  2. ouvrir la boîte de dialogue de la console Gradle
  3. il devrait afficher votre numéro de certificat SHA-1

entrez la description de l'image ici


1
Un vrai sauveur! Je ne sais pas pourquoi la clé SHA-1 était différente lorsqu'elle était générée à partir de l'invite de commande et du studio Android.
Abhishek Mehandiratta

1
il montre sha1 pour le débogage, est-ce la même chose pour la variante de version?
Sanket Patel

@SanketPatel avez-vous la version SHA1?
Oliver D

non, en fait j'ai résolu mon problème, j'ai donc arrêté de le chercher @Oliver
Sanket Patel

27

Solution simple ...

  1. Ouvrez votre projet dans Android studio.
  2. Cliquez sur l'onglet Gradle sur le côté droit. comme ci-dessous

entrez la description de l'image ici

suivez les étapes ci-dessous. 3. Développez: module d'application -> Tâches -> Android -> rapport de signature. entrez la description de l'image ici

  1. SHA-1 générera comme indiqué dans la console

@Ambilpur


Je l'ai fait mais maintenant je ne suis plus en mesure de déboguer mon application
Giacomo M

vérifiez que votre téléphone est correctement connecté à un ordinateur portable ou à un ordinateur de bureau via USB, sinon redémarre Studio ... cela fonctionnera.
Ambilpura Sunil Kumar

Excellent post, Kumar! Simple, clair et efficace! Je viens d'obtenir mon SHA1 pour mon jeu. Ce que je dois dire, c'est que SHA1 pour le mode DEBUG pour Android Studio et pour Eclipse pour TOUS les projets sont égaux - un SHA1 pour tous les projets dans AS et Eclipse.
AlexPap

C'est le moyen le plus simple.
Tarasantan

Cela m'a fait gagner du temps
jokermt235

20

à partir d'un magasin de clés de débogage, nous pouvons obtenir la valeur SHA1Eclipse . Accès depuis le menu: Window-> Preferences-> Android->Build

mais ça ne marche pas pour une production Keystore . entrez la description de l'image ici

Donc, pour obtenir la valeur SHA1 d'un Keystore de production, allez à: Android Tools-> Export Signed Application Package. Suivez le processus de signature de votre apk et le SHA1 s'affichera comme un certificat.

entrez la description de l'image ici


17

Vous utilisez la fonctionnalité de signature d'application Google Play et l'intégration des API Google dans votre application?

  1. Si vous utilisez la signature d'application Google Play, n'oubliez pas que l'empreinte digitale du certificat de signature de version requise pour les informations d'identification de l'API Google n'est pas la clé de signature de téléchargement régulière (SHA-1) que vous obtenez de votre application par cette méthode:

Télécharger le certificat de signature

  1. Vous pouvez obtenir votre version SHA-1 uniquement à partir de la page de signature d'application de votre console Google Play, comme indiqué ci-dessous: -

Si vous utilisez la signature d'application Google Play, Google signe à nouveau votre application. Voilà comment votre empreinte digitale de certificat de signature est donnée par la signature de l'application Google Play, comme indiqué ci-dessous:

Page de signature d'application - Google Play Console

En savoir plus Comment obtenir la version SHA-1 (empreinte numérique du certificat de signature) si vous utilisez la signature d'application Google Play


10

Dans Gnu / Linux

Première

Vous avez besoin de key.jks, par exemple dans mon cas ce fichier est dans le dossier dans / Desktop / Keys

/Desktop/Keys/key.jks

Seconde

cd /usr/lib/jvm/java-1.7.0-openjdk-amd64

Maintenant, vous devez exécuter cette commande

keytool -list -v -keystore /PATH/file.jks -alias YourAlias -storepass *** -keypass ***

remplaçant ces champs

-keystore
-alias
-storepass
-keypass

Par exemple

 keytool -list -v -keystore /home/david/Desktop/Keys/key.jks -alias MyAlias -storepass 456 -keypass 123

entrez la description de l'image ici

Bonne chance!!


8

Il y a d'abord le même .jarfichier que dans fb-sdk android-support-v4.jar.
Générez ensuite la SHA1clé en utilisant:

PackageInfo info;
try {

    info = getPackageManager().getPackageInfo(
        "com.example.worldmission", PackageManager.GET_SIGNATURES);

    for (Signature signature : info.signatures) {
        MessageDigest md;
        md = MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        String something = new String(Base64.encode(md.digest(), 0));
        Log.e("Hash key", something);
        System.out.println("Hash key" + something);
    }

} catch (NameNotFoundException e1) {
    Log.e("name not found", e1.toString());
} catch (NoSuchAlgorithmException e) {
    Log.e("no such an algorithm", e.toString());
} catch (Exception e) {
    Log.e("exception", e.toString());
}

3
Rien à voir avec les certificats.
Marquis de Lorne,

8

keytool est un utilitaire de gestion de clés et de certificats. Il permet aux utilisateurs d'administrer leurs propres paires de clés publiques / privées et les certificats associés à utiliser dans l'auto-authentification (où l'utilisateur s'authentifie auprès d'autres utilisateurs / services) ou l'intégrité des données et les services d'authentification, à l'aide de signatures numériques.

Pour les fenêtres

keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

Autre

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

L'autorisation sur Android utilise une empreinte digitale SHA1 et un nom de package pour identifier votre application au lieu d'un ID client et d'un secret client .

entrez la description de l'image ici

http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html


7

La meilleure façon jamais avec toutes les étapes:

Pour la libération de la clé SHA1 du Keystore :

  1. Ouvrir l'invite de commande
  2. C:\Users\hiren.patel>cd..
  3. C:\Users>cd..
  4. C:\>cd "Program Files"
  5. C:\Program Files>cd Java
  6. C:\Program Files\Java>cd jdk_version_code
  7. C:\Program Files\Java\jdk_version_code>cd bin
  8. C:\Program Files\Java\jdk_version_code\bin>keytool -list -v -keystore "D:\Hiren Data\My Root Folder\My Project Folder\keystore_title.jks" -alias my_alias_name -storepass my_store_password -keypass my_key_password

Remplacez la chose ci-dessous:

  1. jdk_version_code
  2. D:\Hiren Data\My Root Folder\My Project Folder\keystore_title.jks
  3. my_alias_name
  4. my_store_password
  5. my_key_password

Terminé


7

// le moyen le plus simple d'obtenir SHA1

// ajoutez la commande suivante à votre terminal et appuyez sur Entrée

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android 

6

Vous pouvez obtenir MD5 et SHA1 empreintes digitales pour tout espace de travail en allant Window>Preference>Android>Builddans Eclipse .


1
cela fera le travail au lieu de passer par les tracas de l'exportation et de l'utilisation de CMD
ssj3goku878

6

Si vous utilisez Android Studio IDE, vous pouvez obtenir SHA1 a valeur pour toutes vos variantes de construction en un seul clic.

Sous la fenêtre Projets Gradle> Sélectionner le projet racine > Signer le rapport > double-cliquer

Navigation dans les fichiers

Prochain

Ouvrir la fenêtre d'exécution

Aller à la variante: libération pour version

Aller à la variante: déboguer pour déboguer

http://devdeeds.com/create-sha1-key-using-android-studio/


Je le fais mais je n'ai pas le SHA pour publication!
Oliver D

1
Veuillez vous assurer que vous avez ajouté les informations d'identification de connexion dans la configuration de connexion sous le bloc de version dans gradle. Sinon, il ne montrera pas la libération de la touche sha
Jayakrishnan PM

6

Ouvrez l'invite de commandes dans Windows et accédez au dossier suivant.

C: \ Program Files \ Java \ jdk1.7.0_05 \ bin

Utilisez les commandes cd <next directory name>pour passer du répertoire au suivant. Utilisez la commande cd ..pour changer le répertoire en Prev

Tapez maintenant la commande suivante telle quelle:

keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

Après avoir lutté avec ce problème pendant PLUSIEURS heures, votre réponse a sauvé la vie de mon application. MERCI!!!!
Emzor


4

Si vous utilisez Android Studio, utilisez des étapes simples:

  • Exécutez votre projet

  • Cliquez sur le menu Gradle

  • Développer l'arborescence des tâches Gradle

  • Cliquez sur android-> signatureReport

entrez la description de l'image ici S'il n'y a rien affiché (android studio 2.2) alors

Cliquez sur Toggle tasks execution/text modedans la barre d'exécution



3

J'utilise Ubuntu 12.0.4 et j'ai les empreintes digitales du certificat de cette manière pour libérer le magasin de clés à l'invite de commande après avoir généré le fichier de clés, vous pouvez utiliser cette clé pour l'application publiée, si vous utilisez google map dans votre application, donc ceci peut afficher la carte correctement dans l'application après la sortie, j'ai obtenu le résultat à l'invite de commande ci-dessous

administrator@user:~$ keytool -list -v -keystore /home/administrator/mykeystore/mykeystore.jks -alias myprojectalias

 
Enter keystore password:  ******

Alias name: myprojectalias

Creation date: 22 Apr, 2014

Entry type: PrivateKeyEntry

Certificate chain length: 1
Certificate[1]:
Owner: CN=xyz, OU= xyz, O= xyz, L= xyz, ST= xyz, C=91
Issuer: CN= xyz, OU= xyz, O= xyz, L= xyz, ST= xyz, C=91

Serial number: 7c4rwrfdff
Valid from: Fri Apr 22 11:59:55 IST 2014 until: Tue Apr 14 11:59:55 IST 2039

Certificate fingerprints:
     MD5:  95:A2:4B:3A:0D:40:23:FF:F1:F3:45:26:F5:1C:CE:86
     SHA1: DF:95:Y6:7B:D7:0C:CD:25:04:11:54:FA:40:A7:1F:C5:44:94:AB:90
     SHA276: 00:7E:B6:EC:55:2D:C6:C9:43:EE:8A:42:BB:5E:14:BB:33:FD:A4:A8:B8:5C:2A:DE:65:5C:A3:FE:C0:14:A8:02
     Signature algorithm name: SHA276withRSA
     Version: 2

Extensions: 

 ObjectId: 2.6.28.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 1E A1 57 F2 81 AR 57 D6   AC 54 65 89 E0 77 65 D9  ..W...Q..Tb..W6.
0010: 3B 38 9C E1             

Sur la plate-forme Windows, nous pouvons obtenir le fichier de clés pour le mode débogage en utilisant la méthode ci-dessous

C:\Program Files\Java\jdk1.8.0_102\bin>keytool -l
.android\debug.keystore -alias androiddebugkey -s
id
Alias name: androiddebugkey
Creation date: Oct 21, 2016
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: C=US, O=Android, CN=Android Debug
Issuer: C=US, O=Android, CN=Android Debug
Serial number: 1
Valid from: Fri Oct 21 00:50:00 IST 2016 until: S
Certificate fingerprints:
         MD5:  86:E3:2E:D7:0E:22:D6:23:2E:D8:E7:E
         SHA1: B4:6F:BE:13:AA:FF:E5:AB:58:20:A9:B
         SHA256: 15:88:E2:1E:42:6F:61:72:02:44:68
56:49:4C:32:D6:17:34:A6:7B:A5:A6
         Signature algorithm name: SHA1withRSA


Vous pouvez également obtenir ce détail de certification pour le mode débogage à partir de (1) Faites un clic droit sur la barre Gradle dans le studio Android (2) puis cliquez sur l'application -> Tâches -> Android -> signatureRapports puis sur la console Gradle, vous obtiendrez les rapports
Ghanshyam

3

En plus de la réponse de Lokesh Tiwar

Pour les versions, ajoutez ce qui suit dans le gradle:

android {

defaultConfig{
//Goes here
}

    signingConfigs {
        release {
            storeFile file("PATH TO THE KEY_STORE FILE")
            storePassword "PASSWORD"
            keyAlias "ALIAS_NAME"
            keyPassword "KEY_PASSWORD"
        }
    }
buildTypes {
        release {
            zipAlignEnabled true
            minifyEnabled false
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

}

Maintenant, exécuter le rapport de signature comme dans la réponse de Lokesh afficherait également les clés SHA 1 et MD5 pour les versions.

Échantillon


2

Si vous utilisez Android Studio, c'est très simple.

Créez une nouvelle activité Google map et vous pouvez voir l'empreinte digitale sha1 comme l'image ci-dessous.

Nouvelle activité Google Map

VOUS POUVEZ VOIR SHA1 DANS L'IMAGE CI-DESSOUS


1

Commencez par aller dans le fichier jar, copiez le chemin du keytool puis ajoutez-le dans le chemin du système puis exécutez .. j'espère que celui-ci est travaillé ..


1

Si vous utilisez la signature d'application Google Play , au lieu d'obtenir le SHA à partir du magasin de clés, un moyen plus simple consiste à accéder à la console Google Play> Votre application> Gestion des versions> Signature de l'application et recherchez votre certificat de téléchargement.

Capture d'écran de la page où vous obtenez ces informations


montrant ici 2 certificats de connexion appsignin et uploaded signincertificates.which celui que je dois utiliser pour la sortie
Harsha

Pour la libération, vous devez utiliser le certificat de signature d'application
ßiansor Å. Ålmerol

1

Cette solution est pour la version Android Studio 3.5:

  1. Ouvrez votre projet dans Android studio.
  2. Cliquez sur l'onglet Gradle sur le côté droit.
  3. Va voir deux choses, l'une est notre projet (racine) et juste une application.
  4. Sélectionnez notre projet dans votre cas, il pourrait s'agir de votre application.
  5. Faites un clic droit sur le projet et actualisez-le.
  6. Cliquez ensuite sur le bouton de dépôt du projet.
  7. Cliquez sur les tâches où le dossier Android apparaîtra.
  8. Double-cliquez sur signatureRapport et verra les détails dans la console Exécuter.

0

Pour les locaux, vous obtenez facilement sha1 du studio Android, mais pour le live, veuillez vérifier l'URL ci-dessous:

Facebook Android générer un hachage de clé

La plupart du temps, nous n'avons pas effectué les étapes ci-dessous, veuillez donc vérifier le lien qui est 100% correct.

8) If you see in openssl Bin folder, you will get a file with the name of debug.txt

9) Maintenant, vous pouvez redémarrer l'invite de commande ou travailler avec l'invite de commande existante

10) Revenez au lecteur C et indiquez le chemin du dossier openssl Bin

11) copiez le code suivant et collez

openssl sha1 -binary debug.txt > debug_sha.txt

12) vous obtiendrez debug_sha.txt dans le dossier bin openssl

13) Copiez à nouveau le code suivant et collez

openssl base64 -in debug_sha.txt > debug_base64.txt

14) vous obtiendrez debug_base64.txt dans le dossier bin openssl

15) ouvrir le fichier debug_base64.txt Voici votre hachage de clé.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.