CLIを介してJava証明書ストアに対して証明書を検証する
-
22-07-2019 - |
質問
コマンドライン経由でJava証明書ストアに対してX509(またはDER形式)証明書を検証するにはどうすればよいですか?
keytool
ユーティリティの使用を検討しましたが、インポート/エクスポート/表示機能のみを処理するようです(検証なし)。
EDIT: keytool
を検証に使用できるように見えますが、インポートが試行された場合のみです。この質問をするより良い方法は、より受動的なアプローチ(キーストアを変更しないなど)が利用可能かどうかです。ありがとう!
解決
このページは単純化しすぎている可能性があります:
http://java.sun.com/docs /books/tutorial/security/toolfilex/rstep1.html
しかし、keytoolを使用したインポートでさえ、証明書の真の検証を行うようには見えません。着信証明書の署名を別の信頼できる証明書の署名に対して検証する説明が表示されません。
jarsignerは、署名されたjarの署名を検証しますが、jarの署名に使用される証明書の署名を検証することはしません。
検証を行うためのツールを作成するか、それを行う市販のツールを探す必要があるのではないかと思います。一部のPKIツールキットには、これを行う証明書検証ツールが含まれていると思います。
他のヒント
keytool
を使用して、JavaキーストアからX.509ファイルに必要な証明書(検証する必要がある証明書のチェーンにある証明書)を export
できます。 。次に、それらを1つのファイルに連結します。最後に、 openssl
を使用して検証を行います。
openssl verify -CAfile concatenated-certs.crt cert-to-verify.crt
トラストストアから証明書をポップする必要があるため、完璧なソリューションではありませんが、最初から何をしていれば機能するはずです。