MD5 parmak izini yalnızca SHA-1'den değil, Java'nın anahtar aracından nasıl alabilirim?


105

Uygulamamda Google haritalarını kullanmak istediğim için, hata ayıklama sertifikalarının MD5 parmak izine ihtiyacım var. Aşağıdakileri denedim .:

(Burada debug.keystore dosyasını, bin klasöründeki C: \ Documents and Settings \ Administrator.android'den kopyaladım)

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

Ancak şu sonuçları aldı:

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

Ancak bu MAP API anahtarını almak için çalışmıyor. SHA1, MD5 ile aynı mı?

MD5 sertifikasını almak için ne yapmalıyım?

Yanıtlar:


189

JDK 1.7 yüklüyken, keytool her zaman varsayılan olarak SHA1 parmak izi verir, MD5 değil. -v seçeneğini ekleyerek MD5 Sertifikasını alabilirsiniz.

aşağıdaki kodu kullanın: -

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

MD5 sertifikası da verecektir.


7
Teşekkürler, -v seçeneği benim için yaptı
— Joseph Earl

Şimdi MD5 & sha1 süreci Google'da değişti MD5'i burada aldıktan sonra. API anahtarını Google API konsolundan doğru almamız gerekiyor. teşekkürler çocuklar
— Crishnan Iyengar

@ Ankit-Saxena - Bu stackoverflow.com/questions/55336382/… 'ye cevap verir misiniz lütfen -v seçeneği benimle çalışmıyor.
— v1h5

25

MD5 değerini ve SHA1 ... vb. Almak için aşağıya bakalım:

Bundan önce debug.keystore'u C sürücüsünde oluşturulan gibi bir Androidkeystore klasörüne kopyalamayı unutmayın.

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

burada sorulur .. Anahtar deposu şifresini girin: android

buraya girin 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

NOT: dizin yolunda boşluk varsa, onu tırnak içine almanız GEREKİR. örneğin şu biçimi kullanın:

-keystore "C: \ Kullanıcılar \ Adınız \ .android \ debug.keystore"


3
@AnkitSaxena Bu cevap daha iyi ve bana yardımcı oldu, bu yüzden lütfen kimsenin farklı bilgilerle alternatif bir cevap vermesine engel olmayın. Bu cevap için teşekkürler K.krishnan +1
— Onimusha

6

Jdk 7 kullanıyorsanız:

-V seçeneğini kullanın.


1
Lütfen bu sorunun sorulduğu tarihi not edin. Daha iyi bir cevabınız olduğunu düşünmeden eski soruları cevaplamayın.
— Riking

Bunu sadece sorunumu çözdüğü için yaptım. Ve şimdi sorunu anladım. Şimdi aynı problemi olan biri gelirse bir şey bırakmak istedim. Bu arada eksi 2 puan için teşekkürler. :(
— fjs

5

Ekle -v

hemen sonra keytoolve önce-list

keytool -v -list

3

'debug.keystore' dosyasını c:\ veya bir klasöre kopyalayın

gitmeyi c:\Program Files\Java\jdk1.6.25\bin folder ve girmeyi dene

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

şifre 'android'


3

-V bayrağı SHA1 sertifikasını da verir. Bu bayrak olmadan yalnızca MD5 parmak izini alırsınız.


3

SHA 1, MD 5'i almanın en kolay yolu , Android Studio ekranının köşesine yakın sağ üst tarafta bulunan Gradle'a tıklamaktır. Ardından uygulamanın adını tıklayın (örn. Android123 (root) : böyle görünmelidir). Bundan sonra, android adlı bir alt klasör bulacaksınız ve üzerine tıklayarak signingReport'a gidin . Konsolda çalışmalı ve size SHA 1, MD 5'i göstermelidir. Umarım yardımcı olur.


Teşekkür ederim! Diğer tüm cevaplar benim için işe yaramadı, ama bu işe yaradı.
— Yuri Reis

2

Windows 8'de Komut İstemi'ni (Yönetici) açarak sorunu çözdüm ve ardından şunu yazdım:

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

Bundan sonra https://code.google.com/apis/console/ adresine gitmeniz yeterlidir.

Yeni bir arayüze geçtiklerinde , sol taraftaki API'ler ve kimlik doğrulama sekmesine gitmeniz, ardından Kayıtlı Uygulamalar'a gitmeniz , değiştirmek için mevcut API anahtarınızı seçmeniz veya önceden oluşturulan SHA1 kodunu kullanarak yeni bir tane oluşturmanız gerekir.

Ben böyle çalıştırdım.



1

Tutulma sırasında anahtar deponuzu kullanarak projenizi dışa aktarmanız yeterlidir ve son adımda hem SHA-1 hem de MD-5 elde edersiniz.

görüntü açıklamasını buraya girin

Bak bu soruya daha fazla ayrıntı için.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.