Como posso obter a impressão digital MD5 do keytool do Java, não apenas SHA-1?

105

Como desejo usar o Google Maps em meu aplicativo, preciso da impressão digital MD5 dos certificados de depuração. Eu tentei seguir:

(Aqui, copiei o arquivo debug.keystore de C: \ Documents and Settings \ Administrator.android na pasta bin)

C:\Program Files\Java\jdk1.7.0\bin>keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android

Mas obteve os seguintes resultados:

androiddebugkey, May 27, 2011, PrivateKeyEntry,Certificate fingerprint (SHA1): "some code"

No entanto, isso não está funcionando para obter a chave da API do MAP. SHA1 é o mesmo que MD5?

O que devo fazer para obter o certificado MD5?

Prachi Kshirsagar
fonte

Respostas:

189

Com o JDK 1.7 instalado, o keytool sempre gera como padrão a impressão digital SHA1, não MD5. você pode obter o Certificado MD5 adicionando a opção -v.

use o seguinte código: -

C:\Program Files\Java\jdk1.7.0\bin>keytool -v -list -alias
androiddebugkey -keystore debug.keystore -storepass android -keypass android

ele também produzirá o certificado MD5.

Ankit Saxena
fonte
7
Obrigado, a opção -v fez isso por mim
Joseph Earl
Agora o processo MD5 e sha1 mudou no Google. Depois de termos o MD5 aqui, precisamos obter a chave API do console de APIs do Google corretamente. obrigado pessoal
Crishnan Iyengar
@ Ankit-Saxena - Você pode responder a esta stackoverflow.com/questions/55336382/… opção -v não está funcionando comigo.
v1h5
25

Para obter o valor MD5 e SHA1 ... etc, siga abaixo:

Antes disso, não se esqueça de copiar o debug.keystore para uma pasta Androidkeystore como a criada na unidade C.

C:\Program Files\Java\jdk1.7.0_05\bin>keytool -v -list -keystore C:\Androidkeyst
ore\debug.keystore

ele pergunta aqui .. Digite a senha do keystore: android

digite você conseguiu aqui MD5 & SHA1..etc

Keystore type: JKS
Keystore provider: SUN

Your keystore contains ? entry

Alias name: androiddebugkey
Creation date: ?? ???, ????
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[?]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 67b6344b
Valid from: Mon Jun 18 20:33:56 IST 2012 until: Wed Jun 11 20:33:56 IST 2042
Certificate fingerprints:
         MD5:  C2:61:51:3E:BC:C8:0C:DB:75:B6:E7:C4:90:AD:91:39
         SHA1: CD:5E:8A:0F:4E:0F:2E:FD:92:5E:5E:4R:CF:F8:44:33:2C:8C:B8:97
         SHA256: B5:BF:75:60:DB:62:09:49:F1:38:CH:49:18:22:18:95:03:C9:5C:14:F6:
B0:F4:21:D2:19:B8:FF:38:D2:B9:FD
         Signature algorithm name: SHA256withRSA

NOTA: se houver espaços no caminho do diretório, você DEVE colocá-lo entre aspas. por exemplo, use este formato:

-keystore "C: \ Usuários \ Seu nome \ .android \ debug.keystore"

Crishnan Iyengar
fonte
3
@AnkitSaxena Esta resposta é melhor e me ajudou, então, por favor, não impeça ninguém de fornecer uma resposta alternativa com informações diferentes. Obrigado K.krishnan por esta resposta +1
Onimusha
6

Se você estiver usando o jdk 7:

Use a opção -v.

fjs
fonte
1
Observe a data em que esta pergunta foi feita. Não responda a perguntas antigas, a menos que você ache que tem uma resposta melhor.
Riking
Só fiz isso porque resolveu meu problema. E eu só tenho o problema agora. Só queria deixar algo se alguém tiver o mesmo problema agora. A propósito, obrigado pelos menos 2 pontos. :(
fjs
5

adicionar -v

logo depois keytoole antes-list

keytool -v -list
mago
fonte
3

copie o arquivo 'debug.keystore' para c:\ ou alguma pasta

você tenta entrar c:\Program Files\Java\jdk1.6.25\bin folder e entrar

c:\Program Files\Java\jdk1.6.25\bin>keytool -list -keystore c:\debug.keystore

a senha é 'android'

Fénix
fonte
3

O sinalizador -v também fornece a certificação SHA1. Sem esse sinalizador, você obtém apenas a impressão digital MD5.

Karan Kalra
fonte
3

A maneira mais fácil de obter SHA 1, MD 5 é clicar no Gradle no lado superior direito, próximo ao canto da tela do Android Studio. Em seguida, clique no nome do aplicativo (por exemplo, android123 (root) : ele deve aparecer assim). Depois disso, você encontrará uma subpasta chamada android e clicando nela vá para o relatório de assinatura . Deve ser executado no console e deve mostrar o SHA 1, MD 5. Espero que ajude.

Sk Saqlain Ali
fonte
Obrigado! Todas as outras respostas não funcionaram para mim, mas esta sim.
Yuri Reis
2

Resolvi o problema no Windows 8 abrindo o Prompt de Comando (Admin) e digite:

C:\Program Files (x86)\Java\jre7\bin>keytool -v -list -keystore C:\<Your Path>\<Your Keystore>

Depois disso, basta ir para https://code.google.com/apis/console/

Como eles mudaram para uma nova interface, você deve ir para a aba APIs e autenticação no lado esquerdo, então ir para Aplicativos Registrados , selecionar sua chave API existente para substituí-la ou criar uma nova, usando o código SHA1 gerado anteriormente.

É assim que eu fiz isso funcionar.


fonte
1

Simplesmente exporte seu projeto usando seu keystore no eclipse e na última etapa você obterá SHA-1 e MD-5.

insira a descrição da imagem aqui

Veja esta questão para mais detalhes.

Akshat
fonte