Keytoolに証明書の公開鍵を印刷する方法はありますか?私は試した:
keytool -printcert -file client.crt
ただし、次の情報のみが提供されます。
Owner: CN=client, OU=as, O=as, L=as, ST=as, C=as
Issuer: EMAILADDRESS=as, CN=ca, OU=as, O=as, L=as, ST=as, C=as
Serial number: 3
Valid from: Tue Apr 10 12:18:47 GMT+05:30 2012 until: Wed Apr 10 12:18:47 GMT+05
:30 2013
Certificate fingerprints:
MD5: 26:C0:29:E9:8C:AB:C3:9E:95:38:74:8A:87:D3:86:8D
SHA1: 5C:5A:BA:47:44:83:7E:CB:48:BE:DD:E5:39:51:24:42:C6:C5:60:8B
SHA256: DA:26:B8:C8:F4:04:3E:62:F3:7F:3B:EC:1D:9F:85:66:28:00:45:55:66:
15:FF:BB:37:77:97:59:F0:EC:0B:B6
Signature algorithm name: SHA1withRSA
Version: 1
これには公開鍵はありません。
あなたはopenssl
でそれを行うことができます。
この証明書がDERエンコード(バイナリ)の場合、次を使用します。
openssl x509 -inform der -in client.crt -pubkey -noout
pEMエンコードの場合は-inform pem
オプション(または-inform
まったく)。
公開鍵の詳細を表示するには、次を使用します。
openssl x509 -inform der -in client.crt -pubkey -noout | openssl rsa -pubin -text -noout
あなたはそれをすることができます:
keytool -list -rfc -keystore mykeystore.jks -alias certificate_alias -storepass password
実行例:
PS c:\sample> keytool -list -rfc -keystore mykeystore.jks -alias cert_alias -storepass password
Alias name: cert_alias
Creation date: Apr 25, 2014
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
-----BEGIN CERTIFICATE-----
MIIB4zCCAUygAwIBAgIIRzI14w7rL20wDQYJKoZIhvcNAQENBQAwMzELMAkGA1UEBhMCVVMxDTAL
BgNVBAoTBE5vbmUxFTATBgNVBAMTDE5vbmUgb3U9Tm9uZTAgFw0xNDA0MjQxNzQ0NDJaGA8yMTE0
MDQyNTE3NDQ0MlowMzELMAkGA1UEBhMCVVMxDTALBgNVBAoTBE5vbmUxFTATBgNVBAMTDE5vbmUg
b3U9Tm9uZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAivXBBtFnJTm1NbHysv3Mnpn/lCg6
1onJDxr/jkvI8+1Bljs1jktyYOeKDWxJwpDU7QyIqttgtDvRT4Yaew5WiQyADIyY0cBTvp3S7uKx
M5C3zxZdG6WTflU7xcYnGk3/d0VhwA6BL9YPsRaS/K+ww1yvxWKIOPW68wDe0ccvGWcCAwEAATAN
BgkqhkiG9w0BAQ0FAAOBgQB/5qDMA9fmlCWlOD9aHjBD6I8zAOSshMCFK8XcZJHowag8WtZyL3DR
insx2HoDlBewIJAEtAplo2NpeFyNtK93PS7zV+vwEYHCu46Db3klMksp3MmSXD39QPlmwfsGZlja
K8Ww0TsR5GtccFMH41KKa+PlvVZNEdZumdrca59olQ==
-----END CERTIFICATE-----
証明書をpem形式に印刷してから、opensslを使用してpem形式の公開鍵を印刷できます。
追加 -rfc
オプション-printcert
keytool -printcert -rfc -file client.crt
以下のような出力をファイルclient.pemに保存します
-----証明書の開始----- MIIB4zCCAUygAwIBAgIIRzI14w7rL20wDQYJKoZIhvcNAQENBQAwMzELMAkGA1UEBhMCVVMxDTAL
......
-----証明書の終了-----
次に、opensslを使用します
openssl x509 -inform pem -text -in client.pem
あなたは公開鍵を手に入れた
Keytool list rfcは、公開鍵ではなく、証明書全体のbase64エンコードバージョンのみを出力します。 Keytoolは、証明書の公開鍵の印刷をサポートしていません。この目的でopensslを使用できます。