2018.09.04
レポート
解説「SSL/TLSサーバ証明書とは」
一般的にSSL/TLSサーバ証明書は「SSLサーバ証明書」と表記されることが多いため、本ページではSSLサーバ証明書と表記します。
Webサイトを立ち上げる際に必要な要件として組み込まれることが多くなったSSLサーバ証明書ですが、SSLサーバ証明書とはいったい何なのでしょうか。
SSLとは「Secure Socket Layer」の略称で、インターネット上で行うデータのやり取りを暗号化するためのプロトコルです。そしてサーバ証明書とは、サイトの身元を明示するためのものです。
図1:SSLにより盗聴を防止
図2:サーバ証明書により実在性を確認
サーバ証明書で確認できる実在性は複数あり、サービスによって確認できる実在性の項目が変わってきます。
SSLサーバ証明書をWebサイトに設定することによって、「なりすましの防止」、やり取りされるデータの「改ざん検知」、「盗聴防止」、「中間者攻撃による通信の改ざんを検知」といった効果が得られます。アクセスしているページにSSLサーバ証明書の設定がされており、SSLによって暗号化保護がされているかを確認する手段は、ブラウザのアドレスが「https://」となっているかどうかで判断できます。設定されているサーバ証明書によっては、ブラウザの鍵マークをクリックすることでサイトの運営組織を確認することもできます。
通信の暗号化
SSL通信の流れを、図3に示します。
1.サーバからブラウザへ公開鍵を含むサーバ証明書の送付
2.ブラウザにサーバから送られてきたサーバ証明書の検証
3.ブラウザで共通鍵を生成
4.上記3で生成した共通鍵をサーバから送付された公開鍵で暗号化
5.暗号化した共通鍵をブラウザからサーバへ送付
6.サーバで暗号化されていた共通鍵を秘密鍵で復号
ステップ1に示した流れで、第一段階の鍵の送受信が完了し、次の段階のデータの送受信になります。
次の暗号化したデータの送受信の流れは、ステップ2のように示すことができます。
1.受け渡しが完了している共通鍵を利用して、ブラウザで送付したいデータを暗号化
2.暗号化したデータをブラウザからサーバへ送付
3.サーバでは受け取った暗号化されたデータを共通鍵で復号
上記で復号されたデータは、平文となり読み取ることができるようになります。
図3:SSLの暗号化通信の流れ
実在性確認
サーバ証明書が保有している各種情報をブラウザなどによって検証をすることで、アクセスしているWebサイトに設定されているサーバ証明書の正当性の確認ができます。
ブラウザが確認をしている情報としては、
・アクセスしているサイトのURLとサーバ証明書に記載されているコモンネーム(FQDN)が一致しているか
・サーバ証明書がブラウザが認める認証局から発行されているか
・有効期限が切れていないか
これらの検証内容に問題があると、下記のように、アドレスバーに表示されたり、エラー画面(警告画面)が表示されます。
更に、サーバ証明書にはWebサイトの各種情報も記載されています。
例えば、企業実在認証付きのサーバ証明書の情報を確認することで、Webサイトの運営組織を特定することができます。
問題のあるサーバ証明書を利用しているサイトにアクセスをした際のアドレスバー
問題のあるサーバ証明書を利用しているサイトにアクセスをした際のページの表示
SSLサーバ証明書サービスの種類
認証タイプ |
EV認証 |
企業実在認証 |
ドメイン認証 |
---|---|---|---|
略称 |
EV |
OV |
DV |
暗号化通信 |
〇 |
〇 |
〇 |
審査レベル |
★★★ |
★★ |
★ |
発行スピード |
約2週間 |
2~3日 |
即日 |
価格相場 |
100,000円~ |
40,000円~90,000円 |
無償~40,000円 |
役割 |
暗号化 |
暗号化 |
暗号化のみ |
想定される |
金銭を取り扱うサイト |
企業のホームページ |
アクセスしてくるユーザが限定されるサイト |
SSLサービスの選び方
日本国内にはSSLサーバ証明書の提供を行っている認証局が複数社あります。
認証局の中には、SSLサーバ証明書だけを販売している認証局や、他のセキュリティ商材と組み合わせてSSLサーバ証明書の提供を行っている認証局、ドメインなどのセキュリティ商品以外との組み合わせで提供している認証局と様々です。
SSLサーバ証明書のサービス自体も「DV」、「OV」、「EV」と3種類あり、SSLサーバ証明書を設定するWebサイトの種類や取り扱う情報によって選択が必要です。
SSLサーバ証明書サービスを利用する際に検討すべきポイントがいくつかあります。
機微な情報を取り扱うサイトの場合には、認証強度の高いサービスを利用することで、情報を入力、送信するユーザに安心感を与えるとができます。
また契約年数も選択の際には、検討しなければならない項目の1つです。
SSLサーバ証明書は、最長の契約年数が2年までです。毎年の更新が面倒という方は2年のSSLサーバ証明書を契約する方法があります。
1 |
どの認証局から発行してもらうか |
2 |
サービスの種類(認証タイプはどれにするか) |
3 |
契約年数は複数年か単年か |
4 |
金額 |