「SSLサーバ証明書」の版間の差分

提供: セキュリティ
移動: 案内検索
(ページの作成:「SSLサーバ証明書(公開鍵証明書, 電子証明書, SSL証明書) とは、ウェブサイトのログインページや個人情報の入力ページなど...」)
 
 
(同じ利用者による、間の6版が非表示)
行23: 行23:
 
  DNS Name: *.githubusercontent.com
 
  DNS Name: *.githubusercontent.com
  
 +
SANs には、100個のドメインが登録できます。
 
== Subject Alternative Names ==
 
== Subject Alternative Names ==
 
[[OpenSSL]]コマンドで SAN を調べる方法は、以下の通りです。
 
[[OpenSSL]]コマンドで SAN を調べる方法は、以下の通りです。
行62: 行63:
 
[[wget]]コマンドがSANをサポートしていない模様。
 
[[wget]]コマンドがSANをサポートしていない模様。
  
 +
== MD5のSSLサーバ証明書 ==
 +
[[MD5]]の危殆化により、証明書は[[SHA-1]]へ移行してきました。
 +
 +
2008年に MD5アルゴリズムの衝突攻撃を利用し、SSLサーバ証明書の偽造に成功したと研究者により発表されました。
 +
発表は、セキュリティカンファレンス 25th Chaos Communication Congressで行われました。 200台のプレイステーション3のシステムで、MD5で署名された証明書と同一の署名を持つ別の証明書を作成できたとされています。
 +
== SHA-1証明書の終了とSHA-2証明書への移行 ==
 +
市販されている[[署名]]アルゴリズム [[SHA-1]]のSSLサーバ証明書は、2015年12月頃には、発行の受け付けが終了します。今後は、署名アルゴリズムが[[SHA-2]]のSSLサーバ証明書を利用することになります。
 +
 +
== SHA-2 証明書になると何が困るのか ==
 +
一部のOS,ブラウザ、デバイスで[[HTTPS]]での接続ができなくなります。
 +
=== モバイル ===
 +
* ガラケー(ガラパゴス携帯)の古い機種がHTTPSで接続できなくなります
 +
** docomo 2009年冬春モデルから対応
 +
** softback 2012年モデルから対応
 +
** au 2008年モデルから対応
 +
* スマートフォン
 +
** Symbian OS は接続できません
 +
** Windows Mobile は接続できません
 +
=== パソコン ===
 +
* Windows XP SP3 以降が必要です。
 +
=== サーバ ===
 +
* Windows Server 2003(SP2)の場合はKB938397、 Windows Server 2003 R2(SP2)の場合はKB968730の適用が必要です。
 +
* OpenSSL 0.9.8 以降が必要です
 +
 +
== SHA-1とSHA-2の違い ==
 +
 +
[[SHA-1]]と[[SHA-2]]の違いは、セキュリティの強度です。
 +
 +
{|class="wikitable"
 +
|+ SHA-1とSHA-2の違い
 +
! アルゴリズム
 +
! SHA-1
 +
! SHA-224
 +
! SHA-256
 +
! SHA-384
 +
! SHA-512
 +
|-
 +
| ビット長
 +
| 160bit
 +
| 224bit
 +
| 256bit
 +
| 384bit
 +
| 512bit
 +
|-
 +
| 等価安全性
 +
| 80bit
 +
| 112bit
 +
| 128bit
 +
|
 +
|
 +
|}
 +
== SSLで使われる暗号技術 ==
 +
{|class="wikitable"
 +
|+ SSLで使われる暗号技術
 +
! 使用されるシーン
 +
! 技術
 +
! 主要なアルゴリズム
 +
|-
 +
| Webサーバ運営団体の実在性の証明
 +
| [[公開鍵暗号]]
 +
| [[RSA]],ECC,DSA
 +
|-
 +
| Webサーバとブラウザ間の暗号化通信
 +
| [[共通鍵暗号]]
 +
| [[RC4]],[[DES暗号|DES]]/3DES,[[AES暗号|AES]]
 +
|-
 +
| データの改竄検知
 +
| [[ハッシュ]]アルゴリズム
 +
| [[SHA-1]],[[SHA-2]]
 +
|}
 
== 関連項目 ==
 
== 関連項目 ==
 
* [[OpenSSL]]
 
* [[OpenSSL]]
 +
* [[Public Key Pinning]]
 +
* [[クロスルート証明書]]
 +
* [[OCSP]]
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2015年4月7日 (火) 23:05時点における最新版

SSLサーバ証明書(公開鍵証明書, 電子証明書, SSL証明書) とは、ウェブサイトのログインページや個人情報の入力ページなどセンシティブな情報を扱うサイトで利用されます。サーバの真正性と通信の暗号化に利用されます。暗号化されているサイトのURLのプロトコル部分は、HTTPSで始まります。審査基準の厳しい EV SSL証明書(Extended Validation SSL証明書)と呼ばれる証明書もあります。信頼出来ない自己署名証明書(オレオレ証明書)と呼ばれる証明書もあります。オレオレ証明書は、テストなどの目的で利用されることがあります。

読み方

SSLサーバ証明書
えすえすえる さーば しょうめいしょ
SSL証明書
えすえすえる しょうめいしょ
EV SSL証明書
いーぶい えすえすえる しょうめいしょ

概要

SSLサーバ証明書は、有償で発行されます。

SSLサーバ証明書には、いくつかの種類があります。

  • 単体のコモンネームに発行された証明書
  • 複数のコモンネームに対して発行されたワイルドカード証明書(Wild Card)

複数のコモンネームをサポートするには、証明書の拡張領域(SAN, SANs, Subject Alternative Names, サブジェクトとの別名)を使用します。

www.github.com の証明書のフィールドでは、以下の設定がされています。

Not Critical
DNS Name: www.github.com
DNS Name: *.github.com
DNS Name: *.github.io
DNS Name: *.githubusercontent.com

SANs には、100個のドメインが登録できます。

Subject Alternative Names

OpenSSLコマンドで SAN を調べる方法は、以下の通りです。

$ openssl s_client -connect raw.github.com:443 < /dev/null 2&>1 \
	| openssl x509 -noout -text | grep -A 3 Alternative
            X509v3 Subject Alternative Name:
		DNS:www.github.com, DNS:*.github.com, DNS:*.github.io,
		DNS:*.githubusercontent.com
            X509v3 Key Usage: critical
                Digital Signature, Key Encipherment

Yahoo!Inc は、大量に登録されています。

$ openssl s_client -connect yahoo.com:443 < /dev/null 2&>1 \
| openssl x509 -noout -text | grep -A 3 Alternative
            X509v3 Subject Alternative Name:
		DNS:www.yahoo.com, DNS:yahoo.com, DNS:hsrd.yahoo.com,
		DNS:us.yahoo.com, DNS:fr.yahoo.com, DNS:uk.yahoo.com,
		DNS:za.yahoo.com, DNS:ie.yahoo.com, DNS:it.yahoo.com,
		DNS:es.yahoo.com, DNS:de.yahoo.com, DNS:ca.yahoo.com,
		DNS:qc.yahoo.com, DNS:br.yahoo.com, DNS:ro.yahoo.com,
		DNS:se.yahoo.com, DNS:be.yahoo.com, DNS:fr-be.yahoo.com,
		DNS:ar.yahoo.com, DNS:mx.yahoo.com, DNS:cl.yahoo.com,
		DNS:co.yahoo.com, DNS:ve.yahoo.com, DNS:espanol.yahoo.com,
		DNS:pe.yahoo.com, DNS:in.yahoo.com, DNS:sg.yahoo.com,
		DNS:id.yahoo.com, DNS:malaysia.yahoo.com, DNS:ph.yahoo.com,
		DNS:vn.yahoo.com, DNS:maktoob.yahoo.com,
		DNS:en-maktoob.yahoo.com, DNS:ca.my.yahoo.com,
		DNS:gr.yahoo.com, DNS:att.yahoo.com, DNS:au.yahoo.com,
		DNS:nz.yahoo.com, DNS:tw.yahoo.com, DNS:hk.yahoo.com,
		DNS:brb.yahoo.com, DNS:my.yahoo.com, DNS:add.my.yahoo.com
            X509v3 Basic Constraints:
                CA:FALSE

サポート状況

wget

wgetコマンドがSANをサポートしていない模様。

MD5のSSLサーバ証明書

MD5の危殆化により、証明書はSHA-1へ移行してきました。

2008年に MD5アルゴリズムの衝突攻撃を利用し、SSLサーバ証明書の偽造に成功したと研究者により発表されました。 発表は、セキュリティカンファレンス 25th Chaos Communication Congressで行われました。 200台のプレイステーション3のシステムで、MD5で署名された証明書と同一の署名を持つ別の証明書を作成できたとされています。

SHA-1証明書の終了とSHA-2証明書への移行

市販されている署名アルゴリズム SHA-1のSSLサーバ証明書は、2015年12月頃には、発行の受け付けが終了します。今後は、署名アルゴリズムがSHA-2のSSLサーバ証明書を利用することになります。

SHA-2 証明書になると何が困るのか

一部のOS,ブラウザ、デバイスでHTTPSでの接続ができなくなります。

モバイル

  • ガラケー(ガラパゴス携帯)の古い機種がHTTPSで接続できなくなります
    • docomo 2009年冬春モデルから対応
    • softback 2012年モデルから対応
    • au 2008年モデルから対応
  • スマートフォン
    • Symbian OS は接続できません
    • Windows Mobile は接続できません

パソコン

  • Windows XP SP3 以降が必要です。

サーバ

  • Windows Server 2003(SP2)の場合はKB938397、 Windows Server 2003 R2(SP2)の場合はKB968730の適用が必要です。
  • OpenSSL 0.9.8 以降が必要です

SHA-1とSHA-2の違い

SHA-1SHA-2の違いは、セキュリティの強度です。

SHA-1とSHA-2の違い
アルゴリズム SHA-1 SHA-224 SHA-256 SHA-384 SHA-512
ビット長 160bit 224bit 256bit 384bit 512bit
等価安全性 80bit 112bit 128bit

SSLで使われる暗号技術

SSLで使われる暗号技術
使用されるシーン 技術 主要なアルゴリズム
Webサーバ運営団体の実在性の証明 公開鍵暗号 RSA,ECC,DSA
Webサーバとブラウザ間の暗号化通信 共通鍵暗号 RC4,DES/3DES,AES
データの改竄検知 ハッシュアルゴリズム SHA-1,SHA-2

関連項目