Huella digital SHA-1 del certificado del almacén de claves


459

¿El método para obtener una huella digital SHA-1 es el mismo que el método para obtener una huella digital? Anteriormente, estaba ejecutando este comando:

Símbolo del sistema de Windows que ejecuta keytool.exe

No me queda claro si el resultado que obtengo es la huella digital SHA-1. ¿Alguien puede aclarar esto?


Espero que este enlace te ayude. stackoverflow.com/questions/12214467/…
Poras Bhardwaj

La forma más fácil de obtener SHA-1 para la versión y el modo de depuración de Android Studio Gradle Mira esto
Naeem Ibrahim

ejecute este comando en su terminal: keytool -exportcert -list -v \ -alias androiddebugkey -keystore ~ ​​/ .android / debug.keystore. Le pedirá su contraseña del almacén de claves. que puede encontrar en el archivo llamado "debug.keystore.properties" en la carpeta android / keystore
Akhilesh Sinha

Respuestas:


805

Siga este tutorial para crear la huella digital SHA1 para Google Map v2

Para el modo de depuración:

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

para el modo Release:

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

ejemplo:

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

En Windows, cuando no se encuentra el comando keytool , vaya al directorio JDK instalado, por ejemplo <YourJDKPath>\Java\jdk1.8.0_231\bin\, abra la línea de comando y pruebe los comandos anteriores para el modo de depuración / liberación.


99
~ / es su directorio de inicio en los sistemas * nix. En Windows, solo use% USERPROFILE%
Jay Sidri el

1
Si está escribiendo aplicaciones de Android en Xamarin, use esto: keytool -list -v -keystore "% USERPROFILE% \ AppData \ Local \ Xamarin \ Mono para Android / debug.keystore" -alias androiddebugkey -storepass android -keypass android
Jay Sidri

cómo obtener la liberación sha1. Lo obtengo de mi app.jks pero console.google muestra que ya está en uso.
عثمان غني

1
$ keytool -list -v -keystore ~ ​​/ .android / debug.keystore -storepass android solo esto también funciona
Napolean

1
Mira esto para obtener la clave SHA-1 con Android Studio. easybook4u.com/index.php/2017/08/25/…
Himanshu arora

652

Si está utilizando Android Studio, use el paso simple

  1. Ejecute su proyecto
  2. Haga clic en el menú de Gradle
  3. Expandir Gradle Tasks tree
  4. Haga doble clic en android->signingReport y vea la magia.
  5. Te dirá todo en la pestaña Ejecutar

ingrese la descripción de la imagen aquí

Resultado en la pestaña Ejecutar si Android Studio <2.2
ingrese la descripción de la imagen aquí

Desde Android Studio 2.2, el
resultado estará disponible en la consola Ejecutar, pero use el botón de alternancia resaltado

ingrese la descripción de la imagen aquí

O
Second Way es
Crear un nuevo proyecto en el estudio de Android Nuevo -> Actividad de Google Maps

ingrese la descripción de la imagen aquí

luego abra el archivo google_maps_api.xml xml como se muestra en las fotos, verá su clave SHA

ingrese la descripción de la imagen aquí


2
Mi ventana de 'proyectos de gradle' está vacía ... ¿alguna idea de por qué podría ser?
LairdPleng

1
Aparecerá una vez que ejecute el proyecto en el emulador o en el dispositivo
Lokesh Tiwari

1
Sí, lo intenté pero no pasó nada. ¡Parece que, en mi caso, tuve que presionar el botón 'actualizar' antes de que apareciera algo!
LairdPleng

1
¿Es sha1 key igual para todas las aplicaciones? o diferente para cada aplicación?
Anwar Hossain

3
Ahora aparece en la pestaña "Gradle Console" del estudio Android 2.2.3
Irfan Raza

196

La forma más fácil de obtener la clave SHA1 en el estudio de Android tanto (modo de depuración como de liberación)

  1. Abierto Android Studio
  2. Abre tu proyecto
  3. Haga clic en Gradle (desde el panel lateral derecho , verá la barra de Gradle )
  4. Haga clic en Actualizar (haga clic en Actualizar desde la barra de Gradle, verá la lista de secuencias de comandos de Gradle de su proyecto)
  5. Haga clic en su proyecto (lista de formularios de nombre de proyecto)
  6. Haga clic en Tareas / Android
  7. Haga doble clic en signingReport(Obtendrá SHA1y MD5en la barra de ejecución)

Si está utilizando el nuevo Android Studio, muestra el tiempo para ejecutar en la parte superior, haga clic en el modo de ejecución de la tarea Alternar y obtendrá la clave SHA-1. Verifique las imágenes de referencia segunda y tercera.

Verifique la imagen para más detalles ingrese la descripción de la imagen aquíingrese la descripción de la imagen aquí

Generar SHA-1 para el modo de lanzamiento

1-Primero agregue la configuración del almacén de claves en su gradle Cómo agregar la configuración en gradle .

2-Después de agregar Config en la variante de compilación de cambio de gradle. ingrese la descripción de la imagen aquí

3-Luego siga el procedimiento anterior obtendrá SHA-1 para el modo de liberación.

4-Verificar imagen. ingrese la descripción de la imagen aquí


1
¿Cómo cambiar la ubicación? Sé cómo cambiar a un almacén de claves diferente al firmar, pero ¿qué pasa con el predeterminado?
portfoliobuilder

1
respuesta muy detallada con imágenes, ayuda mucho ... muy fácil de entender que otras respuestas aquí ... vote por las imágenes en respuesta
Shirish Herwade

52

Vaya a su directorio java bin a través del cmd:

C: \ Archivos de programa \ Java \ jdk1.7.0_25 \ bin>

Ahora escriba el siguiente comando en su cmd:

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

45

Si está utilizando eclipse, vaya a: Ventana-> Preferencias-> Android-> Build Encontrará lo que está buscando allí.

ingrese la descripción de la imagen aquí


1
¿Dónde puedo encontrar el equivalente en Android Studio? Mi IDE apunta al SHA1 incorrecto
portfoliobuilder

42

! [Ir al extremo izquierdo [! [] [1] [1]

Consulte las siguientes imágenes y obtenga la clave SHA-1 Actualizar

Ver en el panel de la consola en la parte inferior


De acuerdo: la mejor opción. "Plused" uno. Extrañé un poco más de información de texto, pero la ruta principal que has mostrado. Gracias.
statosdotcom

1) Tienes que hacer doble clic en el nombre del archivo.
Sushant Patekar

39

Ejecute el siguiente comando para obtener su sha1: keytool -v -list -keystore "< debug.keystore path >"
Si no conoce la ruta de debug.keystore, puede encontrar su debug.keystoreruta marcandowindows-->preferences-->android-->build

Preparé un tutorial paso a paso para mostrar cómo puedes usar google map android v2 en el emulador (android 4.2.2).
Mira mi blog: http://umut.tekguc.info/en/content/google-android- mapa-v2-paso-paso


33

Vi muchas publicaciones sobre este tema, por lo que lo mantendré simple + ejemplos.

Para obtener el SHA1 para ClientID para iniciar sesión con Google+ y más acciones:

Forma general:

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

Para la depuración, reemplace con su ruta debug.keystore, por ejemplo:

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

Contraseña: android

Para la versión, reemplace con su ruta de almacén de claves y contraseña de alias, por ejemplo:

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

Contraseña: su contraseña de alias.


1
¡Funciona genial! He incluido una clave DEPURACIÓN y LIBERACIÓN en console.developer.google.com. No estoy seguro si ambos son realmente necesarios. Sin embargo, funciona muy bien, después de pasar 4 horas en esta función G ** gle.
Vincent

Si su clave de alias tiene espacio como "App Moon", agregue la doble cita "App Moon" como nombre de alias.
Shihab Uddin

la mejor solución de trabajo y, por google ClientId que necesitaba SHA-1 en modo de lanzamiento, otras soluciones nos dan la SHA-1 en el modo de depuración
Parsa Dadras

31

Este es el proceso paso a paso de lo que funcionó para mí.

Primero ejecute la aplicación y luego siga los pasos a continuación (también se muestra en la captura de pantalla)

  1. haga clic en el informe de firma
  2. abrir el cuadro de diálogo de la consola gradle
  3. debería mostrar su número de certificado SHA-1

ingrese la descripción de la imagen aquí


1
Un verdadero salvador! No sé por qué la clave SHA-1 fue diferente cuando se generó desde el símbolo del sistema y el estudio de Android.
Abhishek Mehandiratta

1
muestra sha1 para depuración, ¿es esto también para la variante de lanzamiento?
Sanket Patel

@SanketPatel ¿tienes el lanzamiento SHA1?
Oliver D

no, en realidad resolví mi problema, así que dejé de buscarlo @Oliver
Sanket Patel

27

Solución simple...

  1. Abre tu proyecto en el estudio de Android.
  2. Haga clic en la pestaña Gradle en el lado derecho. como a continuación

ingrese la descripción de la imagen aquí

siga los pasos a continuación. 3. Expanda: módulo de aplicación -> Tareas -> Android -> informe de firma. ingrese la descripción de la imagen aquí

  1. SHA-1 generará. Como se muestra en la consola

@Ambilpur


Lo hice pero ahora ya no puedo depurar mi aplicación
Giacomo M

compruebe que su teléfono esté conectado correctamente a la computadora portátil o de escritorio a través de USB, de lo contrario, reinicia Studio ... funcionará.
Ambilpura Sunil Kumar

Gran publicación, Kumar! ¡Simple, claro y efectivo! Acabo de obtener mi SHA1 para mi juego. Lo que tengo que decir es que SHA1 para el modo DEBUG para Android Studio y para Eclipse para TODOS los proyectos son iguales: un SHA1 para todos los proyectos en AS y Eclipse.
AlexPap

Esta es la manera más fácil.
Tarasantan

Esto me ahorró tiempo
jokermt235

20

desde un Depósito de claves de depuración podemos obtener el valor SHA1Eclipse . Accediendo desde el menú: Window-> Preferences-> Android->Build

pero no funciona para una producción Keystore. ingrese la descripción de la imagen aquí

Entonces, para obtener el valor SHA1 de un Keystore de producción, vaya a: Android Tools-> Export Signed Application Package. Siga el proceso para firmar su apk y el SHA1 se mostrará como un certificado.

ingrese la descripción de la imagen aquí


17

¿Utiliza la función de firma de la aplicación Google Play y la integración de las API de Google en su aplicación?

  1. Si está utilizando la firma de aplicaciones de Google Play, no olvide que la huella digital del certificado de firma de liberación necesaria para las credenciales de API de Google no son las claves de firma de carga habituales (SHA-1) que obtiene de su aplicación mediante este método:

Subir certificado de firma

  1. Puede obtener su versión SHA-1 solo desde la página de firma de la aplicación de su consola Google Play como se muestra a continuación: -

Si usa la firma de la aplicación Google Play, Google vuelve a firmar su aplicación. Así es como la firma de la aplicación de Google Play da su huella digital del certificado de firma como se muestra a continuación:

Página de firma de la aplicación - Google Play Console

Más información Cómo obtener la versión SHA-1 (huella digital del certificado de firma) si usa 'Firma de la aplicación Google Play'


10

En Gnu / Linux

primero

Necesita key.jks, por ejemplo, en mi caso, este archivo está en la carpeta en / Desktop / Keys

/Desktop/Keys/key.jks

Segundo

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

Ahora necesitas ejecutar este comando

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

remplazando estos campos

-keystore
-alias
-storepass
-keypass

Por ejemplo

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

ingrese la descripción de la imagen aquí

¡¡Buena suerte!!


8

Primero hay el mismo .jararchivo que en fb-sdk android-support-v4.jar.
Luego genere la SHA1clave usando:

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
Nada que ver con los certificados de ningún tipo.
Marqués de Lorne

8

keytool es una utilidad de administración de claves y certificados. Permite a los usuarios administrar sus propios pares de claves públicas / privadas y los certificados asociados para su uso en la autenticación propia (donde el usuario se autentica ante otros usuarios / servicios) o servicios de autenticación e integridad de datos, utilizando firmas digitales.

Para ventanas

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

Otro

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

La autorización en Android utiliza una huella digital SHA1 y el nombre del paquete para identificar su aplicación en lugar de una ID de cliente y un secreto de cliente .

ingrese la descripción de la imagen aquí

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


7

La mejor manera con todos los pasos:

Para liberar la clave SHA1 del almacén de claves :

  1. Abrir símbolo del sistema
  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

Reemplazar a continuación la cosa:

  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

Hecho


7

// la forma más simple de obtener SHA1

// agregue el siguiente comando a su terminal y presione enter

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

6

Puede obtener MD5 y SHA1 de huellas digitales para cualquier espacio de trabajo por ir a Window>Preference>Android>Builden Eclipse .


1
esto hará el trabajo en lugar de pasar por la molestia de exportar y usar CMD
ssj3goku878

6

Si está utilizando Android Studio IDE, puede obtener SHA1 tiene valor para todas sus variantes de compilación con un solo clic.

En Ventana de proyectos Gradle> Seleccionar proyecto raíz > firmaReporte > doble clic

Navegación de archivos

próximo

Abrir ventana de ejecución

Ir a variante: lanzamiento para lanzamiento

Ir a la variante: depurar para depurar

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


¡Lo hago pero no tengo el SHA para el lanzamiento!
Oliver D

1
Asegúrese de haber agregado la credencial de inicio de sesión en la configuración de inicio de sesión bajo el bloque de liberación en gradle. De lo contrario, no se mostrará la tecla sha de lanzamiento
Jayakrishnan PM

6

Abra el símbolo del sistema en Windows y vaya a la siguiente carpeta.

C: \ Archivos de programa \ Java \ jdk1.7.0_05 \ bin

Use los comandos cd <next directory name>para cambiar el directorio al siguiente. Usar comandocd .. para cambiar el directorio a Prev

Ahora escriba el siguiente comando tal como está:

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

Después de luchar con este problema durante VARIAS horas, su respuesta salvó la vida de mi aplicación. ¡¡¡¡GRACIAS!!!!
Emzor


4

Si está utilizando Android Studio, use pasos simples:

  • Ejecute su proyecto

  • Haga clic en el menú de Gradle

  • Expande el árbol de tareas de Gradle

  • Haga clic en Android-> SignatureReport

ingrese la descripción de la imagen aquí Si no se muestra nada (Android Studio 2.2), entonces

Haga clic en Toggle tasks execution/text modedesde la barra Ejecutar



3

Estoy usando Ubuntu 12.0.4 y obtuve las huellas dactilares del Certificado de esta manera para liberar el almacén de claves en el símbolo del sistema después de generar el archivo de almacén de claves, puede usar esta clave para la aplicación lanzada, si está utilizando el mapa de Google en su aplicación, así que esto puede mostrar el mapa correctamente dentro de la aplicación después del lanzamiento, obtuve el resultado en el símbolo del sistema a continuación

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             

En la plataforma Windows, podemos obtener el almacén de claves para el modo de depuración utilizando la siguiente manera

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


Otra forma en que puede obtener este detalle de certificación para el modo de depuración desde (1) Haga clic derecho en la barra de Gradle en el estudio de Android (2) luego haga clic en la aplicación -> Tareas -> android -> SignatureReports y luego en la consola de Gradle obtendrá los informes
Ghanshyam

3

Además de la respuesta de Lokesh Tiwar

Para las versiones de lanzamiento, agregue lo siguiente en el 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'
        }
    }

}

Ahora, ejecutar el informe de firma como en la Respuesta de Lokesh también mostraría las claves SHA 1 y MD5 para las versiones de lanzamiento.

Muestra


2

Si está utilizando Android Studio, esto es muy simple.

Cree una nueva actividad de mapa de Google y podrá ver la huella digital sha1 como se muestra a continuación.

Nueva actividad de Google Map

PUEDES VER SHA1 A CONTINUACIÓN


1

Primero vaya al archivo jar copie la ruta de keytool luego agregue a la ruta del sistema y luego ejecute ... espero que este funcione.


1

Si está utilizando la firma de aplicaciones de Google Play , en lugar de obtener el SHA del almacén de claves, una forma más fácil es ir a Google Play Console> Su aplicación> Administración de versiones> Firma de la aplicación y buscar su certificado de carga.

Captura de pantalla de la página donde obtienes esta información


Aquí se muestran 2 signin certificados appsignin y subo una signincertificates.which necesito utilizar para la liberación
Harsa

Para el lanzamiento, debe usar el certificado de firma de la aplicación
ßiansor Å. Ålmerol

1

Esta solución es para la versión Android Studio 3.5:

  1. Abre tu proyecto en el estudio de Android.
  2. Haga clic en la pestaña Gradle en el lado derecho.
  3. Veremos dos cosas, una es nuestro proyecto (root) y solo la aplicación.
  4. Seleccione nuestro proyecto en su caso, podría ser su aplicación.
  5. Haga clic derecho en el proyecto y actualícelo.
  6. Luego haga clic en el botón desplegable del proyecto.
  7. Haga clic en las tareas donde verá la carpeta de Android.
  8. Haga doble clic en SignatureReport y verá los detalles en Ejecutar consola.

0

Para el local, obtienes sha1 fácilmente desde el estudio de Android, pero en vivo, consulta la siguiente URL:

Facebook Android generar clave hash

La mayoría de las veces no hemos realizado los siguientes pasos, así que verifique el enlace que es 100% correcto.

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

9) Ahora puede reiniciar el símbolo del sistema o trabajar con el símbolo del sistema existente

10) regrese a la unidad C y proporcione la ruta de la carpeta Bin de openssl

11) copie el siguiente código y péguelo

openssl sha1 -binary debug.txt > debug_sha.txt

12) obtendrá debug_sha.txt en la carpeta bin de openssl

13) Nuevamente copie el siguiente código y péguelo

openssl base64 -in debug_sha.txt > debug_base64.txt

14) obtendrá debug_base64.txt en la carpeta bin de openssl

15) abra el archivo debug_base64.txt Aquí está su clave hash.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.