SHA-1だけでなく、JavaのキーツールからMD5フィンガープリントを取得するにはどうすればよいですか?


105

アプリケーションでGoogleマップを使用したいので、デバッグ証明書のMD5フィンガープリントが必要です。私は以下を試しました:

(ここでは、binフォルダーのC:\ Documents and Settings \ Administrator.androidからdebug.keystoreファイルをコピーしました)

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証明書を取得するにはどうすればよいですか?

回答:


189

JDK 1.7がインストールされている場合、keytoolはデフォルトで常にMD5ではなくSHA1フィンガープリントを出力します。-vオプションを追加すると、MD5証明書を取得できます。

次のコードを使用してください:

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

MD5証明書も出力されます。


7
おかげで、-vオプションは私のためにそれをしました
ジョセフ・アール

ここでMD5とsha1プロセスがGoogleを変更しました。MD5を取得した後、Google APIコンソールからAPIキーを正しく取得する必要があります。みんなありがとう
クリシュナン・アイエンガー2013

@ Ankit-Saxena-このstackoverflow.com/questions/55336382/…に回答 してください。-v オプションが機能しません。
v1h5

25

MD5値とSHA1 ... etcを取得するには、以下のようにします。

この前に、Cドライブで作成されたようなAndroidkeystoreフォルダーにdebug.keystoreをコピーすることを忘れないでください。

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

注:ディレクトリパスにスペースがある場合は、引用符で囲む必要があります。たとえば、次の形式を使用します。

-keystore "C:\ Users \ Your Name \ .android \ debug.keystore"


3
@AnkitSaxenaこの回答の方が良く、私を助けてくれたので、誰かが異なる情報を使って別の回答を提供するのを止めないでください。この回答をありがとうK.krishnan +1
Onimusha

6

jdk 7を使用している場合:

-vオプションを使用します。


1
この質問がされた日付に注意してください。より良い答えがあると思わない限り、古い質問には答えないでください。
2012年

それが私の問題を解決したので、私はそれをしました。そして、私は今問題を抱えています。誰かが同じ問題を抱えているのなら、私は何かを残したかっただけです。ちなみにマイナス2点ありがとうございます。:(
fjs


3

'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」です


3

-vフラグはSHA1認証も提供します。このフラグがないと、MD5フィンガープリントしか取得できません。


3

SHA 1、MD 5を取得する最も簡単な方法は、Android Studioの画面の隅近くにある右上のGradleをクリックすることです。次に、アプリの名前をクリックします(例:android123(root):このように表示されます)。その後、androidという名前サブフォルダーが見つかり、クリックしてsigningReportに移動します。コンソールで実行され、SHA 1、MD 5が表示されるはずです。


ありがとうございました!他のすべての回答はうまくいきませんでしたが、これはうまくいきました。
Yuri Reis

2

コマンドプロンプト(管理者)を開き、次のように入力して、Windows 8の問題を解決しました。

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

その後、単にhttps://code.google.com/apis/console/にアクセスます

新しいインターフェースに変更されたため、左側の[ APIと認証 ]タブに移動し、[ 登録済みアプリ ]に移動して、既存のAPIキーを選択して置き換えるか、以前に生成されたSHA1コードを使用して新しいAPIキーを作成する必要があります。

それが私がそれを機能させた方法です。



1

Eclipseのキーストアを使用してプロジェクトをエクスポートするだけで、最後のステップでSHA-1とMD-5の両方が取得されます。

ここに画像の説明を入力してください

詳細については、この質問をご覧ください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.