SSL証明書がSHA-2(sha256)であることの確認方法

現在、署名アルゴリズムのSHA-2化が進められていますが、実際にサイトで使われている証明書の署名アルゴリズムが何になっているかはどのように確認すればよいのでしょうか?

SHA-2であることを簡単に確認する方法があります

ブラウザでWebサイトの証明書がSHA-2(sha256)になっていることを確認する方法

image

現在のSSLサーバ証明書の署名アルゴリズムは主に

  • SHA-1
  • SHA-2(sha256)

のいずれかです。

SHA-1は160bitのダイジェスト値、SHA-2(sha256)は256bitのダイジェスト値を吐き出します。

※追記
現在はほぼSHA-2に切り替わっています。

署名アルゴリズムを確認する方法

ウェブサイトで使われているSSLサーバ証明書の署名アルゴリズムの確認方法は以下のとおりです。

Internet ExplorerでのSHA-2確認方法

  1. サイトへアクセスします。
  2. アドレスバーに出る鍵のアイコンをクリックします。
  3. 下に[証明書の表示]が出るのでクリックします。
  4. 証明書のウィンドウが出たら、[詳細]タブをクリックします。
  5. 「署名ハッシュアルゴリズム」を確認します。

sha256と出ていればSHA-2です。

sha1だとSHA-1です。

 

FirefoxでのSHA-2確認方法

次はFirefoxでの確認方法です。

  1. サイトへアクセスします。
  2. アドレスバーに出る鍵のアイコンをクリックします。
    001
  3. 詳細を表示…をクリックします。
  4. セキュリティアイコン内の、「証明書を表示」をクリックします。001
  5. 詳細タブをクリックします。
  6. Certificate Signature Algorithmを確認します。
    001

「PKCS #1 SHA-256 With RSA Encryption」と表示されればSHA-2です。

SHA-1版は「PKCS #1 SHA-1 With RSA Encryption」と表示されます。

 

ChromeでのSHA-2確認方法

最後にChromeです。

  1. サイトへアクセスします。
  2. アドレスバーに出る鍵のアイコンをクリックします。
  3. 接続タブをクリックして証明書情報ボタンをクリックします。
  4. 証明書のウィンドウが出たら、詳細タブをクリックします。
  5. 「署名ハッシュアルゴリズム」を確認します。

sha256と出ていればSHA-2です。

sha1はSHA-1です。

拇印アルゴリズム、証明書のフィンガープリントってなに?

ちなみに証明書を見ていると「拇印アルゴリズム」や「証明書のフィンガープリント」という項目が見えると思います。

ここに[SHA-1]と出ていて「おや?」と思う人がいるみたいですが、それは、Windows OSなどが証明書の拇印を出すときに使ったアルゴリズムが表示されているだけでしかないので、SSLサーバ証明書の署名アルゴリズムとは違うものです。

ここは結構分かりづらいのですが勘違いしないように注意が必要です。

サーバ証明書がSHA-2になっているか確認する方法のまとめ

IEとChromeはWindowsの証明書ストアを使っているので、証明書確認画面は共通です。

Firefoxだけがちょっと違います。

※OperaもWindowsのストア使ってました。

どのブラウザでも簡単に確認することができることがわかったと思います。

コメント