JavaによるSSL接続検証

こんにちは。サイオステクノロジー武井です。今回は、JavaによるSSL接続検証を簡単にする方法をご紹介します。

JavaによるSSL接続

JavaはSSL接続する際、以下のどちらかのルールにマッチしていない場合、接続エラーとします。。

  • 接続先のサーバー証明書が、Javaの証明書キーストアに入っている
  • 接続先のサーバー証明書のルート証明書が、Javaの証明書キーストアに入っている

意外に上記のルールにマッチしていないためSSL接続出来ないって結構あります。

簡単にSSL接続を検証

以下のGitHubにあるSSLPokeと言うものを使うと、簡単に検証できます。

https://gist.github.com/4ndrej/4547029

上記のソースをコンパイルします。

# javac SSLPoke.java

これでOKです。試しにどこかに接続してみましょう。

# java SSLPoke www.google.com 443
Successfully connected

(`・ω・´)シャキーン

ちなみにエラーの場合は以下のようになります。

# java SSLPoke www.exapmle.com 443
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
...

(´・ω・`)

Be the first to comment

コメント投稿

Your email address will not be published.


*