(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Java】keytoolコマンドを利用したjksの証明書確認方法

スポンサーリンク

やりたいこと

Javaアプリケーションにて利用されるキーストアであるjksファイルの、中に格納されている証明書の情報をコマンドから確認する。

環境情報
  • Red Hat Enterprise Linux 9.3
  • java-17-openjdk-17.0.11

やり方

Javaをインストールする際に同梱されるkeytoolコマンドを利用して

$ which keytool
/usr/lib/jvm/java-17-openjdk-17.x.el9.x86_64/bin/keytool

以下のようにファイルの場所及びパスワードを指定したlistオプションを利用する。

$ keytool -list -v -keystore ./key.jks -storetype JKS -storepass xxxx

そうすると以下のように情報が出力される。

Keystore type: JKS
Keystore provider: SUN

Your keystore contains x entries

Alias name: ...
Creation date: ..
Entry type: trustedCertEntry

Owner: CN=...
Issuer: CN=...
Serial number: ...
Valid from: ...
Certificate fingerprints:
...

補足

.jksファイルは鍵情報や証明書をパスワード付きで保管することできます。

中に格納されている情報は以下のように種別と共に管理されており、証明書であれば発行元等の情報が確認できます。

Entry type: PrivateKeyEntry
Entry type: trustedCertEntry

ちなみにパスワードを誤ると以下のようなエラーとなりました。

$ keytool -list -v -keystore ./key.jks -storetype JKS -storepass xx
keytool error: java.io.IOException: keystore password was incorrect

以上、ご参考になれば幸いです。