Как я могу получить отпечаток MD5 из ключа Java, а не только SHA-1? - PullRequest
104 голосов
/ 10 июня 2011

Поскольку я хочу использовать карты Google в своем приложении, мне нужен отпечаток MD5 отладочного сертификата.Я попробовал следующее:

(Здесь я скопировал файл debug.keystore из C: \ Documents and Settings \ Administrator.android в папку bin)

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

Но получил следующие результаты:

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

Однако это не работает, чтобы получить ключ MAP API.Является ли SHA1 таким же, как MD5?

Что я должен сделать, чтобы получить сертификат MD5?

Ответы [ 10 ]

188 голосов
/ 21 августа 2011

При установленном JDK 1.7 keytool по умолчанию всегда выводит отпечаток SHA1, а не MD5. Вы можете получить сертификат MD5, добавив опцию -v.

используйте следующий код: -

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

он также выдаст сертификат MD5.

25 голосов
/ 20 июня 2012

Чтобы получить значение MD5 и SHA1 ... и т.д., следуйте ниже:

Перед этим не забудьте скопировать debug.keystore в папку Androidkeystore, например, созданную на диске C.

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

спрашивает здесь .. Введите пароль хранилища ключей: Android

введите вы получили здесь 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

ПРИМЕЧАНИЕ: если в пути к каталогу есть пробелы, вы ДОЛЖНЫ заключить его в кавычки. например используйте этот формат:

-кейстор "C: \ Users \ Ваше имя \ .android \ debug.keystore"

6 голосов
/ 14 мая 2012

Если вы используете JDK 7:

Используйте параметр -v.

5 голосов
/ 07 октября 2012

добавить -v

сразу после keytool и до -list

keytool -v -list
3 голосов
/ 09 октября 2012

Флаг -v также дает сертификат SHA1. Без этого флага вы получаете только отпечаток MD5.

3 голосов
/ 11 августа 2011

скопируйте файл 'debug.keystore' в c:\ или в некоторую папку

ты пытаешься идти c:\Program Files\Java\jdk1.6.25\bin folder и ввод

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

пароль 'android'

2 голосов
/ 22 ноября 2013

Я решил проблему в Windows 8, открыв Командную строку (Admin), затем введите:

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

После этого просто перейдите на https://code.google.com/apis/console/

Как они изменилисьчтобы перейти к новому интерфейсу, перейдите на вкладку API & auth с левой стороны, затем перейдите на Зарегистрированные приложения ,выберите существующий ключ API, чтобы заменить его, или создайте новый, используя сгенерированный ранее код SHA1.

Вот как я его получил.

1 голос
/ 16 декабря 2013

Просто экспортируйте ваш проект, используя хранилище ключей в Eclipse, и на последнем шаге вы получите SHA-1 и MD-5.

enter image description here

Посмотрите на этот вопрос для более подробной информации.

1 голос
/ 03 октября 2011

Это неправда, что JTK 1.7 keytool ВСЕГДА возвращает отпечаток SHA1. Смотрите там, чтобы решить проблему, вместо того, чтобы понизить JDK: http://code.google.com/p/android/issues/detail?id=19035#makechanges

0 голосов
/ 12 апреля 2019

Самый простой способ получить SHA 1, MD 5 - это нажать на Gradle в верхнем правом углу, в углу экрана Android Studio.Затем нажмите на название приложения (например, android123 (root) : оно должно выглядеть так).После этого вы найдете подпапку с именем android и, щелкнув по ней, перейдите к signatureReport . Она должна запуститься в консоли и показать вам SHA 1, MD 5. Надеюсь, это так.помогает.

...